BenPTrack - theRAPTLab/gsgo GitHub Wiki
This is a draft guide to configuring and troubleshooting connection problems when setting up a new OpenPTrack system for GEM-STEP. This assumes that you have already set up and calibrated the physical OpenPTrack system. The instructions focus on how to set up OpenPTrack for broadcasting PTrack data over the local network for GEM-STEP consumption.
This is not official OpenPTrack documentation and subject to change.
Updated 10/16/2021.
- OpenPTrack v2 Documentation -- Official PTrack Documentation
- PLAE/iSTEP PTrack Troubleshooting -- Troubleshooting tips from the previous incarnation in PLAE.
PTRACK = OpenPTrack server running tracking software. [This guide assumes version Open PTrack running on Ubuntu 18.04 installed by Simeon circa Nov 2019. PTrack now runs inside a Docker container.]
STEP = Game server running step software.
-
PTRACK must be on ethernet. As of 10/2021 wifi does not seem to work.
-
PTRACK: Verify IP Address Ideally set up only a single connection to avoid confusion about which connection type is being used (e.g. wifi vs ethernet). For this example we'll assume that we're on address of 10.0.0.26
-
PTRACK: Update.bashrc
with IP AddressChange .bashrc ROS_MASTER_URI value to point to the current IP address.-- Setting .bashrc is no longer necessary as of 10/2021.ROS_MASTER_URI=http://10.0.0.26:11311/
-
PTRACK: Reload.bashrc
Make sure after changing the .bashrc to either log out and relogin, or load the .bashrc file manually to apply the changes.source ~/.bashrc
-
PTRACK: Verify source directoryMake sure you know where the OpenPTrack software is installed and where the config files are. In our case, it was installed in/home/remap/open_ptrack_OBJECTS
. [Need to verify this with REMAP]If the build instructions involve copying files from a source, the key is to figure out where that source is. e.g.cp - R ~/open_ptrack_OBJECTS
points to/home/remap/open_ptrack_OBJECTS
. -
PTRACK: Log in and start the docker container:
cd open_ptrack_docker_config/single_camera_tracking ./run_single_camera_1804
-
PTRACK: Set
json_udp.yaml
IP addressMAKE SURE YOU'RE RUNNING THIS IN THE DOCKER CONTAINER! MAKE SURE YOU SET THIS BEFORE RUNNING RViz! Make sure the IP Address of the
json_udp.yaml
file in theopen_ptrack/opt_utils/conf
folder of the source. In our case,~/open_ptrack/opt_utils/conf/json_udp/yaml
Set it to
10.0.0.255
. Match the subnet, but use255
to enable broadcasting (e.g. if your IP is 19.168.1.26`, use "192.168.1.255". Don't forget the quotes.hostip: "10.0.0.255"
-
PTRACK: Error "Global Status: Error -- Fixed Frame: Fixed Frame [world] does not exist" in RVis If you see this error, this was a driver problem. Every once in a while the camera would not connect. In the terminal this message would appear: "Error: no Kinect2 devices found! Initialization failed!" and RViz would show the Global Status error. Disconnecting and reconnecting the camera in another USB slot would usually solve the problem.
-
PTRACK: Start tracking The specific start command will vary depending system. The current launch command (as of 1/23/2018) on a single camera Kinect system is
roslaunch tracking single_camera_tracking_node.launch enable_pose:=true enable_people_tracking:=true enable_object:=true
-
PTRACK: Start
udp_listener
Make sure the PTrack software is actually generating UDP data. This isn't strictly necessary when running, but if you need to troubleshoot, this is handy to check that PTrack is indeed sending out udp data. Currently the listener does not check if the data is being sent to the right port though, so use Wireshark for that. Open a new terminal, start Docker again, and:cd open_ptrack_docker_config/single_camera_tracking ./run_single_camera_1804 roslaunch opt_utils udp_listener.launch`
-
PTRACK: Start Wireshark The PTrack software might be generating UDP data, but it might be getting sent to the wrong port, or is not otherwise making it past the computer. Use Wireshark to debug this.
sudo wireshark
You need to run as root in order to access the ports. If Wireshark is not installed, usesudo apt-get install wireshark
to install it. -
PTRACK: Use Wireshark to check port data After starting Wireshark, click the upper left "List the availalbe update interfaces. Expand the window to see which interfaces are actually receiving data. If only
lo
or127.0.0.1
is receiving packets, then UDP data isn't making it past the machine. Check thejson_udp.yaml
settings. -
PTRACK: Use Wireshark to verify UDP data Select the ports that are active (from previous step), and click
Start
. Then add a filterudp.port==21234
, then clickApply
- Make sure the "Destination" port is 10.0.0.26 (the IP address you set earlier). If it's the wrong address, then you likely changed the wrong json_udp.yaml file.
Click on packets and make sure you see
JSON
data coming across.[]
-
The kinect driver frequently will not load. Try switching the USB port. If that fails, shut down and restart.
-
NEED TO VERIFY: Running UDP too long results in system instability (mouse on PTrack laptop will become unresponsive). And tracks will stop producing output. Try restarting tracking without UDP? Try starting tracking with just people tracking (not objects and pose)?
-
Wireshark dumps a LOT of data. If your disk fills up the capture logs are in
\tmp\wireshark*
. Just delete the files.