While trying to run arduino script using rosserial_python serial_node.py, I was getting following error:
[ERROR] [1598864453.982391]: Unable to sync with device; possible link problem or link software version mismatch such as hydro rosserial_python with groovy Arduino
The error was occuring because my rosmsg type was Float32MultiArray which contains an array inside it. Probably this leads to some buffer overflow in ros melodic which causes the error. Changing the rosmsg type to Point from Float32MultiArray solved the issue for me.
Other things that helped in running arduino board with ubuntu and ros melodic were:
1) Make the usb port writable. Solution is provided at https://arduino.stackexchange.com/questions/21215/first-time-set-up-permission-denied-to-usb-port-ubuntu-14-04
2) Make sure pubsub example in ros_lib is working. Solution is provided at https://answers.ros.org/question/360537/unknown-error-handler-name-rosmsg/
3) Only baud rate of 57600 worked with ros
In your arduino code , may be there is line which is not comapatible with ros .
ReplyDeleteThe issue seems to be fixed now. We are able to use Float32MultiArray again.
ReplyDelete