pieye / nimbus-ros

ROS driver for the Nimbus 3D Lidar Camera
http://wiki.ros.org/nimbus_3d_driver
GNU General Public License v3.0
9 stars 5 forks source link

Catkin error #5

Closed ajal-fh closed 4 years ago

ajal-fh commented 4 years ago

Hi, I'm trying to run the camera on raspberrypi 3b+ (os:raspbian buster; kernel version: 4.19.108-v7+ ; ros: 'melodic-perception' installed from source).

I followed the instructions in the low-level_implementation branch. ( i have installed nimbus-server after adding dtoverlay=irs1125 in /boot/config.txt. Also rebooted after installation.)

After this when I try to build the package using catkin_make the following error occurs:

Scanning dependencies of target nimbus_ros_node
[ 20%] Building CXX object nimbus-ros/CMakeFiles/nimbus_ros_node.dir/src/Algorithm.cpp.o
[ 40%] Linking CXX shared library /home/pi/nimbus_ws/devel/lib/libnimbus_ros_node.so
[ 40%] Built target nimbus_ros_node
Scanning dependencies of target nimbus_ros
[ 80%] Building CXX object nimbus-ros/CMakeFiles/nimbus_ros.dir/src/nimbus_ros_node.cpp.o
[ 80%] Building CXX object nimbus-ros/CMakeFiles/nimbus_ros.dir/src/nimbus_ros.cpp.o
In file included from /home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros_node.cpp:31:
/home/pi/nimbus_ws/src/nimbus-ros/include/nimbus-ros/nimbus_ros.hpp:51:8: error: ‘AutoExposureParams_t’ does not name a type
 extern AutoExposureParams_t m_params;
        ^~~~~~~~~~~~~~~~~~~~
In file included from /home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:25:
/home/pi/nimbus_ws/src/nimbus-ros/include/nimbus-ros/nimbus_ros.hpp:51:8: error: ‘AutoExposureParams_t’ does not name a type
 extern AutoExposureParams_t m_params;
        ^~~~~~~~~~~~~~~~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:36:1: error: ‘AutoExposureParams_t’ does not name a type
 AutoExposureParams_t m_params;
 ^~~~~~~~~~~~~~~~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp: In function ‘void imageCallback(void*, void*, void*)’:
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:56:5: error: ‘ImgHeader_t’ was not declared in this scope
     ImgHeader_t* header = nimbus_seq_get_header(img);
     ^~~~~~~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:56:18: error: ‘header’ was not declared in this scope
     ImgHeader_t* header = nimbus_seq_get_header(img);
                  ^~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:56:18: note: suggested alternative:
In file included from /home/pi/ros_install_ws/install_isolated/include/ros/serialization.h:37,
                 from /home/pi/ros_install_ws/install_isolated/include/ros/publisher.h:34,
                 from /home/pi/ros_install_ws/install_isolated/include/ros/node_handle.h:32,
                 from /home/pi/ros_install_ws/install_isolated/include/ros/ros.h:45,
                 from /home/pi/ros_install_ws/install_isolated/include/pcl_ros/point_cloud.h:4,
                 from /home/pi/nimbus_ws/src/nimbus-ros/include/nimbus-ros/Algorithm.hpp:26,
                 from /home/pi/nimbus_ws/src/nimbus-ros/include/nimbus-ros/nimbus_ros.hpp:26,
                 from /home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:25:
/home/pi/ros_install_ws/install_isolated/include/ros/message_traits.h:289:32: note:   ‘ros::message_traits::header’
 inline std_msgs::Header const* header(const M& m)
                                ^~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:56:27: error: ‘nimbus_seq_get_header’ was not declared in this scope
     ImgHeader_t* header = nimbus_seq_get_header(img);
                           ^~~~~~~~~~~~~~~~~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:56:27: note: suggested alternative: ‘nimbus_seq_get_data’
     ImgHeader_t* header = nimbus_seq_get_header(img);
                           ^~~~~~~~~~~~~~~~~~~~~
                           nimbus_seq_get_data
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:57:27: error: ‘nimbus_seq_get_amplitude’ was not declared in this scope
     uint16_t* ampl      = nimbus_seq_get_amplitude(img);
                           ^~~~~~~~~~~~~~~~~~~~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:57:27: note: suggested alternative: ‘nimbus_seq_get_data’
     uint16_t* ampl      = nimbus_seq_get_amplitude(img);
                           ^~~~~~~~~~~~~~~~~~~~~~~~
                           nimbus_seq_get_data
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:58:27: error: ‘nimbus_seq_get_x’ was not declared in this scope
     int16_t* x          = nimbus_seq_get_x(img);
                           ^~~~~~~~~~~~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:58:27: note: suggested alternative: ‘nimbus_seq_del’
     int16_t* x          = nimbus_seq_get_x(img);
                           ^~~~~~~~~~~~~~~~
                           nimbus_seq_del
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:59:27: error: ‘nimbus_seq_get_y’ was not declared in this scope
     int16_t* y          = nimbus_seq_get_y(img);
                           ^~~~~~~~~~~~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:59:27: note: suggested alternative: ‘nimbus_seq_del’
     int16_t* y          = nimbus_seq_get_y(img);
                           ^~~~~~~~~~~~~~~~
                           nimbus_seq_del
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:60:27: error: ‘nimbus_seq_get_z’ was not declared in this scope
     int16_t* z          = nimbus_seq_get_z(img);
                           ^~~~~~~~~~~~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:60:27: note: suggested alternative: ‘nimbus_seq_del’
     int16_t* z          = nimbus_seq_get_z(img);
                           ^~~~~~~~~~~~~~~~
                           nimbus_seq_del
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:61:27: error: ‘nimbus_seq_get_confidence’ was not declared in this scope
     uint8_t* conf       = nimbus_seq_get_confidence(img);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:61:27: note: suggested alternative: ‘nimbus_seq_get_data’
     uint8_t* conf       = nimbus_seq_get_confidence(img);
                           ^~~~~~~~~~~~~~~~~~~~~~~~~
                           nimbus_seq_get_data
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:84:61: error: ‘m_params’ was not declared in this scope
         bool set_exposure = nimbus_autoexposure_set_params(&m_params);
                                                             ^~~~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:84:29: error: ‘nimbus_autoexposure_set_params’ was not declared in this scope
         bool set_exposure = nimbus_autoexposure_set_params(&m_params);
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:84:29: note: suggested alternative: ‘m_auto_exposure_update’
         bool set_exposure = nimbus_autoexposure_set_params(&m_params);
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
                             m_auto_exposure_update
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp: In function ‘void update_params()’:
/home/pi/nimbus_ws/src/nimbus-ros/src/nimbus_ros.cpp:106:31: error: ‘m_params’ was not declared in this scope
     if((float(ampl_single) != m_params.ampl_single) || (int(max_exposure) != m_params.max_exposure) ||
                               ^~~~~~~~
make[2]: *** [nimbus-ros/CMakeFiles/nimbus_ros.dir/build.make:76: nimbus-ros/CMakeFiles/nimbus_ros.dir/src/nimbus_ros.cpp.o] Fehler 1
make[2]: *** Es wird auf noch nicht beendete Prozesse gewartet....
make[2]: *** [nimbus-ros/CMakeFiles/nimbus_ros.dir/build.make:63: nimbus-ros/CMakeFiles/nimbus_ros.dir/src/nimbus_ros_node.cpp.o] Fehler 1
make[1]: *** [CMakeFiles/Makefile2:595: nimbus-ros/CMakeFiles/nimbus_ros.dir/all] Fehler 2
make: *** [Makefile:141: all] Fehler 2
Invoking "make -j4 -l4" failed

Also in the master branch the project name in CmakeLists.txt and package.xml is different and it throws ans error.

bjajoh commented 4 years ago

Hi, we're currently preparing the release of a new embedded driver. Which is needed to run the ROS driver. I can send you the binary if you give me your email address.

ajal-fh commented 4 years ago

Hi Bjarne Johannsen,

thanks for the quick reply. It would be great if you could share the binary. My email-id: ajal.varuthunny@alumni.fh-aachen.de. Thanks in advance!

bjajoh commented 4 years ago

I've send you a mail with the attached driver.

k4r4c commented 4 years ago

Hi Bjarne Johannsen, I am facing the same issues as @ajal-fh did, with the raspberry pi 4, debian:buster. I get the same errors when building nimbus_ros.cpp. If it is still possible for you to share the binary, here is my email address: lion@cwi.nl Thank you!

bjajoh commented 4 years ago

Hi Bjarne Johannsen, I am facing the same issues as @ajal-fh did, with the raspberry pi 4, debian:buster. I get the same errors when building nimbus_ros.cpp. If it is still possible for you to share the binary, here is my email address: lion@cwi.nl Thank you!

Hi, I'll send you a mail with the driver and instructions how to install it, later today. :)

k4r4c commented 4 years ago

Nice, thanks :) looking forward

ivti commented 4 years ago

Hi Bjarne, I am exactly facing the same problems as the others above. So building nimbus-ros with Raspbian based on debian:buster is not possible. It would be great to get the driver as well as the others did. I hoped to access the camera directly for experiments with a Qt gui program. Is this possible with the help of the nimbus-ros driver. If you can send me the driver here is my email adress: tvie@ivision.de Thanks a lot. Thomas