06-01-2018 02:48 PM - edited 06-01-2018 02:49 PM
Unfortunately I can't link to the setup script just yet otherwise I would but it's a bunch of stuff to install ROS on the RoboRIO. We aren't doing anything with the FPGA outside of what FIRST is doing to it with their default installation - which is to say that is yet another black box in all of this that I have no insight into. Yes, we can see the FPGA with our software stack as we ran a robot on it this year.
Here's the bit of the setup script that shows vaguely what is installed on the RoboRIO:
# Set time and date on Rio to match the system
# we're installing from. This should be close enough
# to reality to get past ssl errors from pip if the
# date on the Rio is totally wacky
ssh admin@$1 date -u --set="\"`date -u +"%Y.%m.%d-%T"`\""
ssh admin@$1 'swapon /dev/sda5'
if false; then
ssh admin@$1 'opkg update'
# Split these up so the disk doesn't fill up with temp files
# Also need to install pyyaml first for some reason to avoid
# weird dependency hell issues with opkg
ssh admin@$1 'opkg install python-pyyaml'
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install libeigen python-dev libpython2 python-core '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install libcurl4 lz4 libboost-filesystem1.60.0 libboost-program-options1.60.0 libboost-signals1.60.0 libboost-regex1.60.0 libboost-thread1.60.0 libboost-chrono1.60.0 libboost-date-time1.60.0 libboost-atomic1.60.0'
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install libbz2 cmake libxml2 libgnutls-bin libgnutls-openssl27 '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install libgnutls30 libgnutlsxx28 nettle libgmp10 libgmpxx4 libz1 git make '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install gcc g++ gcc-symlinks g++-symlinks binutils python-setuptools python-docutils '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install python-pkgutil python-dateutil python-argparse python-nose '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install python-netifaces libglog0 python-pip coreutils gdb i2c-tools '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install ntp ntp-tickadj ntp-utils ntpdate rsync htop curl'
ssh admin@$1 'opkg clean'
ssh admin@$1 'pip install catkin_pkg rospkg rosdistro vcstools rosdep wstool rosinstall rosinstall_generator defusedxml empy'
# Copy over ROS tar.bz2 file, extract to / on the Rio
wget -O /tmp/roscore_roborio_2018.tar.bz2 "*******"
scp /tmp/roscore_roborio_2018.tar.bz2 admin@$1:.
rm /tmp/roscore_roborio_2018.tar.bz2
ssh admin@$1 'cd / && tar -xjf ~/roscore_roborio_2018.tar.bz2'
scp ~/2018RobotCode/os_detect.py admin@$1:/usr/lib/python2.7/site-packages/rospkg/
ssh admin@$1 'rm ~/roscore_roborio_2018.tar.bz2'
# Try to simulate what the cross-build environment
# looks like
ssh admin@$1 'ln -s / /usr/arm-frc-linux-gnueabi'
ssh admin@$1 'ln -s /usr/include /include'
# Create workspace. Do a build in the empty workspace to set
# up various scripts for later use
ssh admin@$1 'mkdir -p 2018RobotCode/zebROS_ws/src'
ssh admin@$1 'source /opt/ros/kinetic/setup.bash && cd 2018RobotCode/zebROS_ws && catkin_make_isolated --install'
I don't think any of that is causing these errors but I'm happy to learn otherwise.
06-01-2018 02:57 PM
Unfortunately I can't link to the setup script just yet otherwise I would but it's a bunch of stuff to install ROS on the RoboRIO. We aren't doing anything with the FPGA outside of what FIRST is doing to it with their default installation - which is to say that is yet another black box in all of this that I have no insight into. Yes, we can see the FPGA with our software stack as we ran a robot on it this year.
Here's the bit of the setup script that shows vaguely what is installed on the RoboRIO:
# Set time and date on Rio to match the system
# we're installing from. This should be close enough
# to reality to get past ssl errors from pip if the
# date on the Rio is totally wacky
ssh admin@$1 date -u --set="\"`date -u +"%Y.%m.%d-%T"`\""
ssh admin@$1 'swapon /dev/sda5'
if false; then
ssh admin@$1 'opkg update'
# Split these up so the disk doesn't fill up with temp files
# Also need to install pyyaml first for some reason to avoid
# weird dependency hell issues with opkg
ssh admin@$1 'opkg install python-pyyaml'
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install libeigen python-dev libpython2 python-core '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install libcurl4 lz4 libboost-filesystem1.60.0 libboost-program-options1.60.0 libboost-signals1.60.0 libboost-regex1.60.0 libboost-thread1.60.0 libboost-chrono1.60.0 libboost-date-time1.60.0 libboost-atomic1.60.0'
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install libbz2 cmake libxml2 libgnutls-bin libgnutls-openssl27 '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install libgnutls30 libgnutlsxx28 nettle libgmp10 libgmpxx4 libz1 git make '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install gcc g++ gcc-symlinks g++-symlinks binutils python-setuptools python-docutils '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install python-pkgutil python-dateutil python-argparse python-nose '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install python-netifaces libglog0 python-pip coreutils gdb i2c-tools '
ssh admin@$1 'opkg clean'
ssh admin@$1 'opkg install ntp ntp-tickadj ntp-utils ntpdate rsync htop curl'
ssh admin@$1 'opkg clean'
ssh admin@$1 'pip install catkin_pkg rospkg rosdistro vcstools rosdep wstool rosinstall rosinstall_generator defusedxml empy'
# Copy over ROS tar.bz2 file, extract to / on the Rio
wget -O /tmp/roscore_roborio_2018.tar.bz2 "*******"
scp /tmp/roscore_roborio_2018.tar.bz2 admin@$1:.
rm /tmp/roscore_roborio_2018.tar.bz2
ssh admin@$1 'cd / && tar -xjf ~/roscore_roborio_2018.tar.bz2'
scp ~/2018RobotCode/os_detect.py admin@$1:/usr/lib/python2.7/site-packages/rospkg/
ssh admin@$1 'rm ~/roscore_roborio_2018.tar.bz2'
# Try to simulate what the cross-build environment
# looks like
ssh admin@$1 'ln -s / /usr/arm-frc-linux-gnueabi'
ssh admin@$1 'ln -s /usr/include /include'
# Create workspace. Do a build in the empty workspace to set
# up various scripts for later use
ssh admin@$1 'mkdir -p 2018RobotCode/zebROS_ws/src'
ssh admin@$1 'source /opt/ros/kinetic/setup.bash && cd 2018RobotCode/zebROS_ws && catkin_make_isolated --install'
I don't think any of that is causing these errors but I'm happy to learn otherwise.
06-01-2018 03:02 PM
Seriously, this isn't spam... it's code.
Unfortunately I can't link to the setup script just yet otherwise I would but it's a bunch of stuff to install ROS on the RoboRIO. We aren't doing anything with the FPGA outside of what FIRST is doing to it with their default installation - which is to say that is yet another black box in all of this that I have no insight into. Yes, we can see the FPGA with our software stack as we ran a robot on it this year.
Here's the bit of the setup script that shows vaguely what is installed on the RoboRIO:
# Set time and date on Rio to match the system # we're installing from. This should be close enough # to reality to get past ssl errors from pip if the # date on the Rio is totally wacky ssh admin@$1 date -u --set="\"`date -u +"%Y.%m.%d-%T"`\"" ssh admin@$1 'swapon /dev/sda5' if false; then ssh admin@$1 'opkg update' # Split these up so the disk doesn't fill up with temp files # Also need to install pyyaml first for some reason to avoid # weird dependency hell issues with opkg ssh admin@$1 'opkg install python-pyyaml' ssh admin@$1 'opkg clean' ssh admin@$1 'opkg install libeigen python-dev libpython2 python-core ' ssh admin@$1 'opkg clean' ssh admin@$1 'opkg install libcurl4 lz4 libboost-filesystem1.60.0 libboost-program-options1.60.0 libboost-signals1.60.0 libboost-regex1.60.0 libboost-thread1.60.0 libboost-chrono1.60.0 libboost-date-time1.60.0 libboost-atomic1.60.0' ssh admin@$1 'opkg clean' ssh admin@$1 'opkg install libbz2 cmake libxml2 libgnutls-bin libgnutls-openssl27 ' ssh admin@$1 'opkg clean' ssh admin@$1 'opkg install libgnutls30 libgnutlsxx28 nettle libgmp10 libgmpxx4 libz1 git make ' ssh admin@$1 'opkg clean' ssh admin@$1 'opkg install gcc g++ gcc-symlinks g++-symlinks binutils python-setuptools python-docutils ' ssh admin@$1 'opkg clean' ssh admin@$1 'opkg install python-pkgutil python-dateutil python-argparse python-nose ' ssh admin@$1 'opkg clean' ssh admin@$1 'opkg install python-netifaces libglog0 python-pip coreutils gdb i2c-tools ' ssh admin@$1 'opkg clean' ssh admin@$1 'opkg install ntp ntp-tickadj ntp-utils ntpdate rsync htop curl' ssh admin@$1 'opkg clean' ssh admin@$1 'pip install catkin_pkg rospkg rosdistro vcstools rosdep wstool rosinstall rosinstall_generator defusedxml empy' # Copy over ROS tar.bz2 file, extract to / on the Rio wget -O /tmp/roscore_roborio_2018.tar.bz2 "*******" scp /tmp/roscore_roborio_2018.tar.bz2 admin@$1:. rm /tmp/roscore_roborio_2018.tar.bz2 ssh admin@$1 'cd / && tar -xjf ~/roscore_roborio_2018.tar.bz2' scp ~/2018RobotCode/os_detect.py admin@$1:/usr/lib/python2.7/site-packages/rospkg/ ssh admin@$1 'rm ~/roscore_roborio_2018.tar.bz2' # Try to simulate what the cross-build environment # looks like ssh admin@$1 'ln -s / /usr/arm-frc-linux-gnueabi' ssh admin@$1 'ln -s /usr/include /include' # Create workspace. Do a build in the empty workspace to set # up various scripts for later use ssh admin@$1 'mkdir -p 2018RobotCode/zebROS_ws/src' ssh admin@$1 'source /opt/ros/kinetic/setup.bash && cd 2018RobotCode/zebROS_ws && catkin_make_isolated --install'
I don't think any of that is causing these errors but I'm happy to learn otherwise.