chip updates: ground control and visualization [updates]
So I've been talking about a GCS and you know that kind of stuff for a while. And I think we're going to start there before we get to any development and the reason for that is if we have a good visualizer going, we can make debugging so much easier. So we're going to start that stuff today with the webviz suite from Cruise Automation.
So a list of people to thank:
-a few others
But either way, if we're using this interface: we need to know what data we want to visualize and how.
So here are the pieces of data we want to visualize:
(1) The output from both fisheye cameras.
(2) The depth-map from the cameras.
(3) We want to average bus voltage.
(4) We want the currents to the motors.
(5) We want the CMDS to the motor.
(6) We want the THETAS.
(7) We want the XYZ foot positions.
(8) Eventually we want the roll/pitch/yaw.
(9) We probably want the control mode.
(10) We probably want the
Or we can make this thing a FULL GCS where we also have a base-map and we have the GPS coordinates of the system as well on here.
But I'm going to bold above the things we will start with right now. (that will be 1-5) because those are really important to know. We can even make global variables on this --> FULL GUI CONTROL!!!!
Omg we're gonna do it this will be great when we get more into the development. For now let's just try it out. Because we don't know how it works and I want to play.
So the first thing we need to do is install a few things and make them launch on the startup of chip. Because otherwise we're not going to have much data.
Let's install both of the above first ^
So both of the packages have been installed now, we need to configure the packages. We need to use port 9090 to use the online GUI. And we need to figure out if we need to change the IP or something.
**So turns out rosbrige is default port is 9090 so we're going to try to launch that with the launch file. We're also going to add instructions for the t265 camera.
<include file="/opt/ros/melodic/share/realsense2_camera/launch/rs_t265.launch" /> <include file="/opt/ros/melodic/share/rosbridge_server/launch/rosbridge_websocket.launch" />
We're going to run that launch file and see if all the topics are correct. So librealsense can't open the camera (I suspect that's a CHMOD fix, and websockets has died).
For websockets it says that we don't have tornado installed - that's a python package so we go ahead and pip install tornado that. Let's re-run and see if it fixes the problem, nope we need to pip install bson as well.
--so turns out regular BSON doesn't work we need to use MongoDB BSON --
pip uninstall bson
pip install pymongo
Let's see if this fixes websockets. Maybe we can get that working at least.
AYYY WEBSOCKETS WORKSSSS LET'S TRY AND SEEEEEE. Now if we go to: http://192.168.1.24:9090/
I think that means it's working? Let's see on the GUI if we change the port what happens. Now we get this...
So I really am trying to figure out here if this is a computer-computer issue or if web socket can work over more than one computer.
I think the first thing to try is to get all this working on, you know, the desktop of the Nvidia computer itself... then we can deal with remote connections over the inter-web. Let's look at this video first though: