From 8dec500702c573ad34e9faf4d43c8cae51e35afa Mon Sep 17 00:00:00 2001 From: sfalexrog Date: Sun, 7 Apr 2019 17:50:31 +0300 Subject: [PATCH] builder: Add ros_ws281x package --- builder/assets/rosled.service | 14 ++++++++++++++ builder/image-build.sh | 1 + builder/image-ros.sh | 9 ++++++++- builder/test/tests.sh | 1 + 4 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 builder/assets/rosled.service diff --git a/builder/assets/rosled.service b/builder/assets/rosled.service new file mode 100644 index 00000000..03b399e4 --- /dev/null +++ b/builder/assets/rosled.service @@ -0,0 +1,14 @@ +[Unit] +Description=ROS ws281x support +Requires=roscore.service +After=roscore.service + +[Service] +EnvironmentFile=/lib/systemd/system/roscore.env +ExecStart=/opt/ros/kinetic/bin/roslaunch ros_ws281x clever4.launch --wait --screen +Restart=on-failure +RestartSec=3 +TimeoutSec=infinity + +[Install] +WantedBy=multi-user.target diff --git a/builder/image-build.sh b/builder/image-build.sh index a9fdb25a..76d2ccb4 100755 --- a/builder/image-build.sh +++ b/builder/image-build.sh @@ -112,6 +112,7 @@ ${BUILDER_DIR}/image-chroot.sh ${IMAGE_PATH} copy ${SCRIPTS_DIR}'/assets/ros_pyt # ${BUILDER_DIR}/image-chroot.sh ${IMAGE_PATH} copy ${SCRIPTS_DIR}'/assets/kinetic-ros-clever.rosinstall' '/home/pi/ros_catkin_ws/' # Add PX4 udev rules ${BUILDER_DIR}/image-chroot.sh ${IMAGE_PATH} copy ${SCRIPTS_DIR}'/assets/99-px4fmu.rules' '/lib/udev/rules.d/' +${BUILDER_DIR}/image-chroot.sh ${IMAGE_PATH} copy ${SCRIPTS_DIR}'/assets/rosled.service' '/lib/systemd/system/' ${BUILDER_DIR}/image-chroot.sh ${IMAGE_PATH} exec ${SCRIPTS_DIR}'/image-ros.sh' ${REPO_URL} ${IMAGE_VERSION} false false ${NUMBER_THREADS} ${BUILDER_DIR}/image-chroot.sh ${IMAGE_PATH} exec ${SCRIPTS_DIR}'/image-validate.sh' diff --git a/builder/image-ros.sh b/builder/image-ros.sh index ff96d971..b67956da 100755 --- a/builder/image-ros.sh +++ b/builder/image-ros.sh @@ -137,6 +137,10 @@ fi export ROS_IP='127.0.0.1' # needed for running tests +echo_stamp "Adding ros_ws281x ROS package" +cd /home/pi/catkin_ws/src +git clone https://github.com/sfalexrog/ros_ws281x + echo_stamp "Installing CLEVER" \ && cd /home/pi/catkin_ws/src/clever \ && git status \ @@ -145,7 +149,7 @@ echo_stamp "Installing CLEVER" \ && my_travis_retry pip install wheel \ && my_travis_retry pip install -r /home/pi/catkin_ws/src/clever/clever/requirements.txt \ && source /opt/ros/kinetic/setup.bash \ -&& catkin_make -j2 -DCMAKE_BUILD_TYPE=Release \ +&& catkin_make -j2 -DCMAKE_BUILD_TYPE=Release -DROS_WS2811_REAL_LIB=ON \ && catkin_make run_tests \ && catkin_test_results \ && systemctl enable roscore \ @@ -153,6 +157,9 @@ echo_stamp "Installing CLEVER" \ && echo_stamp "All CLEVER was installed!" "SUCCESS" \ || (echo_stamp "CLEVER installation was failed!" "ERROR"; exit 1) +echo_stamp "Enabling ROS LED service" +systemctl enable rosled + echo_stamp "Build CLEVER documentation" cd /home/pi/catkin_ws/src/clever NPM_CONFIG_UNSAFE_PERM=true npm install gitbook-cli -g diff --git a/builder/test/tests.sh b/builder/test/tests.sh index bb36f3c9..e544145d 100755 --- a/builder/test/tests.sh +++ b/builder/test/tests.sh @@ -46,3 +46,4 @@ rosversion rosserial rosversion usb_cam rosversion cv_camera rosversion web_video_server +rosversion ros_ws281x