rosserial icon indicating copy to clipboard operation
rosserial copied to clipboard

Unable to sync with device; possible link problem or link software version mismatch such as hydro rosserial_python with groovy Arduino

Open lehider opened this issue 6 years ago • 11 comments

Unable to sync with device; possible link problem or link software version mismatch such as hydro rosserial_python with groovy Arduino

I am getting this error while rosserial reading from melodic

lehider avatar Oct 20 '18 12:10 lehider

I have the same problem. When I rote my code in Arduino I used kinetic version, but I updated all the system, including the ros_lib folder to melodic. Since that moment I got the error that you mentioned.

Any suggestion?

nicolasarl avatar Apr 16 '19 18:04 nicolasarl

check your arduino code .... I am pretty sure , some blocks of your arduino code is not suporting by 'ROS' serial package . change that lines according to ROS

lehider avatar Apr 17 '19 06:04 lehider

If the versions match, might be due to a runtime error on your hardware that prevents the device to talk to the server. Check if subscribers and publishers are set correctly, and node initializes properly, and loop is handled properly (nh.initNode() for init and nh.spinOnce() for loop), but I highly recommend you to check the ros_lib, the library that was generated for arduino, it should be generated by it's package with the correct version of ROS.

Check this link out, http://wiki.ros.org/rosserial_arduino/Tutorials

And also the issue can be closed due to inactivity.

senceryazici avatar Jul 12 '19 11:07 senceryazici

Does your rosmsg type has an array field inside it? Melodic gives this error with array msg type. See here : https://nehainblunderland.blogspot.com/2020/08/running-arduino-board-with-ubuntu-18.html

nehagarg avatar Sep 01 '20 04:09 nehagarg

This issue might occur if you are trying to use Float32MultiArray msgs. There is some issue with it's implementation(maybe something with the buffer size) in ros_lib or rosserial which causes a runtime error and thus rosserial is not able to connect to the arduino. I tried using Float64MultiArray instead and it worked. You can refer to this post if you are trying to implement the same: https://web.archive.org/web/20160711134453/http://answers.ros.org/question/10988/use-multiarray-in-rosserial/

Abhinavgandhi09 avatar Nov 07 '20 21:11 Abhinavgandhi09

https://github.com/ros-drivers/rosserial/issues/354 try this if you are using esp, may be it will solve the problem.

DeepakKumarShah avatar Sep 17 '21 08:09 DeepakKumarShah

SOLVED : Hey, I encountered the same error , it related to baud rate ! i changed baud rate to 57600 and it worked ,error solved !

rosrun rosserial_arduino serial_node.py /dev/ttyACM0 _baud:=57600

javidaslam avatar Aug 10 '22 06:08 javidaslam

@javidaslam Thank you. baud:=57600 fixed it for me also.

jones2126 avatar Nov 16 '22 19:11 jones2126

/dev/ttyACM0 _baud:=57600

Where can this file be found?

limn3 avatar Mar 08 '23 21:03 limn3

Had the same error (really !helpful error message).

After "rosrun rosserial_arduino make_libraries.py .":

For me the fix was to change the line in my (Platformio) project in lib/ros_lib/ros.h where just because ESP8266 hw it assumes you want to use WiFi. So the error message should have included the hint "(ros)Serial interface may be misconfigured, please check ros.h in your project." -- Someone with more patience might do a pull request on this.

Who ever had the bright idea to put this (in ros.h) there, !thank you for wasting about 10 hours of my life!

StohanzlMart avatar Jun 10 '23 08:06 StohanzlMart

If none of the solutions mentioned above resolve the problem, consider rechecking or removing any loops from your Arduino code. I encountered a similar issue, and removing a while loop which i used in the void loop in my code resolved it. My issue was the program was getting stuck in that while loop, maybe due to something on my side regarding the exit condition, but i got the same error message.

Hdriwn avatar Jun 20 '23 07:06 Hdriwn