From 12a7ca4dbb15ebb413241bf23b4300dee5011d73 Mon Sep 17 00:00:00 2001 From: Michael Ferguson Date: Sat, 2 Feb 2013 12:43:37 -0800 Subject: [PATCH 1/2] catkinize --- CMakeLists.txt | 17 -------- Makefile | 1 - ros_arduino_bridge/package.xml | 21 +++++++++ ros_arduino_firmware/CMakeLists.txt | 35 +++------------ ros_arduino_firmware/Makefile | 1 - ros_arduino_firmware/mainpage.dox | 26 ----------- ros_arduino_firmware/manifest.xml | 14 ------ ros_arduino_firmware/package.xml | 13 ++++++ ros_arduino_msgs/CMakeLists.txt | 43 ++++++++----------- ros_arduino_msgs/Makefile | 1 - ros_arduino_msgs/mainpage.dox | 26 ----------- ros_arduino_msgs/manifest.xml | 13 ------ ros_arduino_msgs/package.xml | 17 ++++++++ .../src/ros_arduino_msgs/__init__.py | 0 ros_arduino_python/CMakeLists.txt | 40 ++++++----------- ros_arduino_python/Makefile | 1 - ros_arduino_python/mainpage.dox | 26 ----------- ros_arduino_python/manifest.xml | 22 ---------- ros_arduino_python/nodes/arduino_node.py | 6 +-- ros_arduino_python/package.xml | 21 +++++++++ ros_arduino_python/setup.py | 11 +++++ ros_arduino_python/src/__init__.py | 0 .../arduino_driver.py | 0 .../arduino_sensors.py | 0 .../base_controller.py | 0 stack.xml | 12 ------ 26 files changed, 125 insertions(+), 242 deletions(-) delete mode 100644 CMakeLists.txt delete mode 100644 Makefile create mode 100644 ros_arduino_bridge/package.xml delete mode 100644 ros_arduino_firmware/Makefile delete mode 100644 ros_arduino_firmware/mainpage.dox delete mode 100644 ros_arduino_firmware/manifest.xml create mode 100644 ros_arduino_firmware/package.xml delete mode 100644 ros_arduino_msgs/Makefile delete mode 100644 ros_arduino_msgs/mainpage.dox delete mode 100644 ros_arduino_msgs/manifest.xml create mode 100644 ros_arduino_msgs/package.xml delete mode 100644 ros_arduino_msgs/src/ros_arduino_msgs/__init__.py delete mode 100644 ros_arduino_python/Makefile delete mode 100644 ros_arduino_python/mainpage.dox delete mode 100644 ros_arduino_python/manifest.xml create mode 100644 ros_arduino_python/package.xml create mode 100644 ros_arduino_python/setup.py delete mode 100644 ros_arduino_python/src/__init__.py rename ros_arduino_python/src/{ => ros_arduino_python}/arduino_driver.py (100%) rename ros_arduino_python/src/{ => ros_arduino_python}/arduino_sensors.py (100%) rename ros_arduino_python/src/{ => ros_arduino_python}/base_controller.py (100%) delete mode 100644 stack.xml diff --git a/CMakeLists.txt b/CMakeLists.txt deleted file mode 100644 index 28105dd..0000000 --- a/CMakeLists.txt +++ /dev/null @@ -1,17 +0,0 @@ -cmake_minimum_required(VERSION 2.4.6) -include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake) - -# Append to CPACK_SOURCE_IGNORE_FILES a semicolon-separated list of -# directories (or patterns, but directories should suffice) that should -# be excluded from the distro. This is not the place to put things that -# should be ignored everywhere, like "build" directories; that happens in -# rosbuild/rosbuild.cmake. Here should be listed packages that aren't -# ready for inclusion in a distro. -# -# This list is combined with the list in rosbuild/rosbuild.cmake. Note -# that CMake 2.6 may be required to ensure that the two lists are combined -# properly. CMake 2.4 seems to have unpredictable scoping rules for such -# variables. -#list(APPEND CPACK_SOURCE_IGNORE_FILES /core/experimental) - -rosbuild_make_distribution(0.1.0) diff --git a/Makefile b/Makefile deleted file mode 100644 index a818cca..0000000 --- a/Makefile +++ /dev/null @@ -1 +0,0 @@ -include $(shell rospack find mk)/cmake_stack.mk \ No newline at end of file diff --git a/ros_arduino_bridge/package.xml b/ros_arduino_bridge/package.xml new file mode 100644 index 0000000..6f4cf8a --- /dev/null +++ b/ros_arduino_bridge/package.xml @@ -0,0 +1,21 @@ + + ros_arduino_bridge + 0.2.0 + + Metapackage for ros_arduino_bridge. + + Patrick Goebel + Patrick Goebel + BSD + http://ros.org/wiki/ros_arduino_bridge + + catkin + + ros_arduino_firmware + ros_arduino_msgs + ros_arduino_python + + + + + diff --git a/ros_arduino_firmware/CMakeLists.txt b/ros_arduino_firmware/CMakeLists.txt index f8f1c9c..1148d7b 100644 --- a/ros_arduino_firmware/CMakeLists.txt +++ b/ros_arduino_firmware/CMakeLists.txt @@ -1,30 +1,9 @@ -cmake_minimum_required(VERSION 2.4.6) -include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake) +cmake_minimum_required(VERSION 2.8.3) +project(ros_arduino_firmware) -# Set the build type. Options are: -# Coverage : w/ debug symbols, w/o optimization, w/ code-coverage -# Debug : w/ debug symbols, w/o optimization -# Release : w/o debug symbols, w/ optimization -# RelWithDebInfo : w/ debug symbols, w/ optimization -# MinSizeRel : w/o debug symbols, w/ optimization, stripped binaries -#set(ROS_BUILD_TYPE RelWithDebInfo) +find_package(catkin REQUIRED) +catkin_package(DEPENDS) -rosbuild_init() - -#set the default path for built executables to the "bin" directory -set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) -#set the default path for built libraries to the "lib" directory -set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib) - -#uncomment if you have defined messages -#rosbuild_genmsg() -#uncomment if you have defined services -#rosbuild_gensrv() - -#common commands for building c++ executables and libraries -#rosbuild_add_library(${PROJECT_NAME} src/example.cpp) -#target_link_libraries(${PROJECT_NAME} another_library) -#rosbuild_add_boost_directories() -#rosbuild_link_boost(${PROJECT_NAME} thread) -#rosbuild_add_executable(example examples/example.cpp) -#target_link_libraries(example ${PROJECT_NAME}) +install(DIRECTORY src + DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} +) diff --git a/ros_arduino_firmware/Makefile b/ros_arduino_firmware/Makefile deleted file mode 100644 index b75b928..0000000 --- a/ros_arduino_firmware/Makefile +++ /dev/null @@ -1 +0,0 @@ -include $(shell rospack find mk)/cmake.mk \ No newline at end of file diff --git a/ros_arduino_firmware/mainpage.dox b/ros_arduino_firmware/mainpage.dox deleted file mode 100644 index a28c5dd..0000000 --- a/ros_arduino_firmware/mainpage.dox +++ /dev/null @@ -1,26 +0,0 @@ -/** -\mainpage -\htmlinclude manifest.html - -\b ros_arduino_firmware is ... - - - - -\section codeapi Code API - - - - -*/ diff --git a/ros_arduino_firmware/manifest.xml b/ros_arduino_firmware/manifest.xml deleted file mode 100644 index 245bdf3..0000000 --- a/ros_arduino_firmware/manifest.xml +++ /dev/null @@ -1,14 +0,0 @@ - - - - ROS Arduino Firmware - - - Patrick Goebel - BSD - - http://ros.org/wiki/ros_arduino_firmware - - - - diff --git a/ros_arduino_firmware/package.xml b/ros_arduino_firmware/package.xml new file mode 100644 index 0000000..ccc2e3d --- /dev/null +++ b/ros_arduino_firmware/package.xml @@ -0,0 +1,13 @@ + + ros_arduino_firmware + 0.2.0 + + ROS Arduino Firmware. + + Patrick Goebel + Patrick Goebel + BSD + http://ros.org/wiki/ros_arduino_firmware + + catkin + diff --git a/ros_arduino_msgs/CMakeLists.txt b/ros_arduino_msgs/CMakeLists.txt index f1c1a19..c504682 100644 --- a/ros_arduino_msgs/CMakeLists.txt +++ b/ros_arduino_msgs/CMakeLists.txt @@ -1,30 +1,23 @@ -cmake_minimum_required(VERSION 2.4.6) -include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake) +cmake_minimum_required(VERSION 2.8.3) +project(ros_arduino_msgs) -# Set the build type. Options are: -# Coverage : w/ debug symbols, w/o optimization, w/ code-coverage -# Debug : w/ debug symbols, w/o optimization -# Release : w/o debug symbols, w/ optimization -# RelWithDebInfo : w/ debug symbols, w/ optimization -# MinSizeRel : w/o debug symbols, w/ optimization, stripped binaries -#set(ROS_BUILD_TYPE RelWithDebInfo) +find_package(catkin REQUIRED genmsg std_msgs) -rosbuild_init() +add_message_files(FILES + AnalogFloat.msg + Analog.msg + Digital.msg + SensorState.msg + ) -#set the default path for built executables to the "bin" directory -set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) -#set the default path for built libraries to the "lib" directory -set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib) +add_service_files(FILES + DigitalSetDirection.srv + DigitalWrite.srv + ServoRead.srv + ServoWrite.srv + ) -#uncomment if you have defined messages -rosbuild_genmsg() -#uncomment if you have defined services -rosbuild_gensrv() +generate_messages(DEPENDENCIES std_msgs) + +catkin_package(DEPENDS std_msgs) -#common commands for building c++ executables and libraries -#rosbuild_add_library(${PROJECT_NAME} src/example.cpp) -#target_link_libraries(${PROJECT_NAME} another_library) -#rosbuild_add_boost_directories() -#rosbuild_link_boost(${PROJECT_NAME} thread) -#rosbuild_add_executable(example examples/example.cpp) -#target_link_libraries(example ${PROJECT_NAME}) diff --git a/ros_arduino_msgs/Makefile b/ros_arduino_msgs/Makefile deleted file mode 100644 index b75b928..0000000 --- a/ros_arduino_msgs/Makefile +++ /dev/null @@ -1 +0,0 @@ -include $(shell rospack find mk)/cmake.mk \ No newline at end of file diff --git a/ros_arduino_msgs/mainpage.dox b/ros_arduino_msgs/mainpage.dox deleted file mode 100644 index 4a0daab..0000000 --- a/ros_arduino_msgs/mainpage.dox +++ /dev/null @@ -1,26 +0,0 @@ -/** -\mainpage -\htmlinclude manifest.html - -\b ros_arduino_msgs is ... - - - - -\section codeapi Code API - - - - -*/ diff --git a/ros_arduino_msgs/manifest.xml b/ros_arduino_msgs/manifest.xml deleted file mode 100644 index 62ebb0b..0000000 --- a/ros_arduino_msgs/manifest.xml +++ /dev/null @@ -1,13 +0,0 @@ - - - - ROS Arduino Messages - - - Patrick Goebel - BSD - - http://ros.org/wiki/ros_arduino_msgs - - - diff --git a/ros_arduino_msgs/package.xml b/ros_arduino_msgs/package.xml new file mode 100644 index 0000000..939fcb9 --- /dev/null +++ b/ros_arduino_msgs/package.xml @@ -0,0 +1,17 @@ + + ros_arduino_msgs + 0.2.0 + + ROS Arduino Messages. + + Patrick Goebel + Patrick Goebel + BSD + http://ros.org/wiki/ros_arduino_msgs + + catkin + + std_msgs + + std_msgs + diff --git a/ros_arduino_msgs/src/ros_arduino_msgs/__init__.py b/ros_arduino_msgs/src/ros_arduino_msgs/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/ros_arduino_python/CMakeLists.txt b/ros_arduino_python/CMakeLists.txt index f8f1c9c..a79bb49 100644 --- a/ros_arduino_python/CMakeLists.txt +++ b/ros_arduino_python/CMakeLists.txt @@ -1,30 +1,18 @@ -cmake_minimum_required(VERSION 2.4.6) -include($ENV{ROS_ROOT}/core/rosbuild/rosbuild.cmake) +cmake_minimum_required(VERSION 2.8.3) +project(ros_arduino_python) -# Set the build type. Options are: -# Coverage : w/ debug symbols, w/o optimization, w/ code-coverage -# Debug : w/ debug symbols, w/o optimization -# Release : w/o debug symbols, w/ optimization -# RelWithDebInfo : w/ debug symbols, w/ optimization -# MinSizeRel : w/o debug symbols, w/ optimization, stripped binaries -#set(ROS_BUILD_TYPE RelWithDebInfo) +find_package(catkin REQUIRED) +catkin_package(DEPENDS) +catkin_python_setup() -rosbuild_init() +install(DIRECTORY config + DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} +) -#set the default path for built executables to the "bin" directory -set(EXECUTABLE_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/bin) -#set the default path for built libraries to the "lib" directory -set(LIBRARY_OUTPUT_PATH ${PROJECT_SOURCE_DIR}/lib) +install(DIRECTORY launch + DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} +) -#uncomment if you have defined messages -#rosbuild_genmsg() -#uncomment if you have defined services -#rosbuild_gensrv() - -#common commands for building c++ executables and libraries -#rosbuild_add_library(${PROJECT_NAME} src/example.cpp) -#target_link_libraries(${PROJECT_NAME} another_library) -#rosbuild_add_boost_directories() -#rosbuild_link_boost(${PROJECT_NAME} thread) -#rosbuild_add_executable(example examples/example.cpp) -#target_link_libraries(example ${PROJECT_NAME}) +install(DIRECTORY nodes + DESTINATION ${CATKIN_PACKAGE_SHARE_DESTINATION} +) diff --git a/ros_arduino_python/Makefile b/ros_arduino_python/Makefile deleted file mode 100644 index b75b928..0000000 --- a/ros_arduino_python/Makefile +++ /dev/null @@ -1 +0,0 @@ -include $(shell rospack find mk)/cmake.mk \ No newline at end of file diff --git a/ros_arduino_python/mainpage.dox b/ros_arduino_python/mainpage.dox deleted file mode 100644 index 10ef6c2..0000000 --- a/ros_arduino_python/mainpage.dox +++ /dev/null @@ -1,26 +0,0 @@ -/** -\mainpage -\htmlinclude manifest.html - -\b ros_arduino_python is ... - - - - -\section codeapi Code API - - - - -*/ diff --git a/ros_arduino_python/manifest.xml b/ros_arduino_python/manifest.xml deleted file mode 100644 index 1d04908..0000000 --- a/ros_arduino_python/manifest.xml +++ /dev/null @@ -1,22 +0,0 @@ - - - - ROS Arduino Python - - - Patrick Goebel - BSD - - http://ros.org/wiki/ros_arduino_python - - - - - - - - - - - - diff --git a/ros_arduino_python/nodes/arduino_node.py b/ros_arduino_python/nodes/arduino_node.py index e9c65f0..9730e4a 100755 --- a/ros_arduino_python/nodes/arduino_node.py +++ b/ros_arduino_python/nodes/arduino_node.py @@ -21,10 +21,10 @@ import roslib; roslib.load_manifest('ros_arduino_python') import rospy -from arduino_driver import Arduino -from arduino_sensors import * +from ros_arduino_python.arduino_driver import Arduino +from ros_arduino_python.arduino_sensors import * from ros_arduino_msgs.srv import * -from base_controller import BaseController +from ros_arduino_python.base_controller import BaseController from geometry_msgs.msg import Twist import os, time import thread diff --git a/ros_arduino_python/package.xml b/ros_arduino_python/package.xml new file mode 100644 index 0000000..b84c9cb --- /dev/null +++ b/ros_arduino_python/package.xml @@ -0,0 +1,21 @@ + + ros_arduino_python + 0.2.0 + + ROS Arduino Python. + + Patrick Goebel + Patrick Goebel + BSD + http://ros.org/wiki/ros_arduino_python + + catkin + + rospy + std_msgs + sensor_msgs + geometry_msgs + nav_msgs + tf + ros_arduino_msgs + diff --git a/ros_arduino_python/setup.py b/ros_arduino_python/setup.py new file mode 100644 index 0000000..e09dd1b --- /dev/null +++ b/ros_arduino_python/setup.py @@ -0,0 +1,11 @@ +#!/usr/bin/env python + +from distutils.core import setup +from catkin_pkg.python_setup import generate_distutils_setup + +d = generate_distutils_setup( + packages=['ros_arduino_python'], + package_dir={'': 'src'}, + ) + +setup(**d) diff --git a/ros_arduino_python/src/__init__.py b/ros_arduino_python/src/__init__.py deleted file mode 100644 index e69de29..0000000 diff --git a/ros_arduino_python/src/arduino_driver.py b/ros_arduino_python/src/ros_arduino_python/arduino_driver.py similarity index 100% rename from ros_arduino_python/src/arduino_driver.py rename to ros_arduino_python/src/ros_arduino_python/arduino_driver.py diff --git a/ros_arduino_python/src/arduino_sensors.py b/ros_arduino_python/src/ros_arduino_python/arduino_sensors.py similarity index 100% rename from ros_arduino_python/src/arduino_sensors.py rename to ros_arduino_python/src/ros_arduino_python/arduino_sensors.py diff --git a/ros_arduino_python/src/base_controller.py b/ros_arduino_python/src/ros_arduino_python/base_controller.py similarity index 100% rename from ros_arduino_python/src/base_controller.py rename to ros_arduino_python/src/ros_arduino_python/base_controller.py diff --git a/stack.xml b/stack.xml deleted file mode 100644 index f4c5a70..0000000 --- a/stack.xml +++ /dev/null @@ -1,12 +0,0 @@ - - ROS Arduino Bridge - Maintained by Patrick Goebel - BSD - - http://ros.org/wiki/ros_arduino_bridge - - - - - - From 233d9986a3feb2c3eff8b12e4cbbdfe706d38b70 Mon Sep 17 00:00:00 2001 From: Michael Ferguson Date: Sat, 2 Feb 2013 12:46:33 -0800 Subject: [PATCH 2/2] update readme a bit for catkin, probably needs more work --- README.md | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index f15ca5f..af82cbc 100644 --- a/README.md +++ b/README.md @@ -52,10 +52,10 @@ Arduino IDE. Installation ------------ - $ cd ~/ros_workspace + $ cd ~/catkin_workspace/src $ git clone https://github.com/hbrobotics/ros_arduino_bridge.git - $ cd ros_arduino_bridge - $ rosmake + $ cd ~/catkin_workspace + $ catkin_make The provided Arduino library is called ROSArduinoBridge and is located in the ros\_arduino\_firmware package. This sketch is @@ -412,4 +412,4 @@ so it looks like this: Compile the changes and upload to your controller. Next, edit your my\_arduino_params.yaml file and make sure the -use\_base\_controller parameter is set to False. That's all there is to it. \ No newline at end of file +use\_base\_controller parameter is set to False. That's all there is to it.