ongdexter/ar3_core

Issue setting Serial port

Closed this issue · 3 comments

Hello, I am trying to setup your software, and I am unable to connect to my teensy 3.5

Here is the error:
setting /run_id to c24222a2-882f-11eb-a7ee-1322e8fa6b0a
process[rosout-1]: started with pid [68324]
started core service [/rosout]
process[ar3_hardware_interface-2]: started with pid [68331]
process[controller_spawner-3]: started with pid [68332]
[ WARN] [1616102428.179043116]: Failed to connect to serial port ??s?
terminate called after throwing an instance of 'boost::wrapexceptboost::system::system_error'
what(): read: Bad file descriptor
[INFO] [1616102428.463405]: Controller Spawner: Waiting for service controller_manager/load_controller

Clearly the serial port is not correct.
here isresults of mesg | grep -i tty
cdc_acm 2-2:1.0: ttyACM0: USB ACM device

and in hardware_driver.yaml I have:
serial_port: /dev/ttyACM0 #"COM4"

what am I doing wrong?

Hi, you'll need to have the param in a string, i.e. "/dev/ttyACM0"

Hi There, Thank you for the reply.
I did some more testing, I did put the param in a string and still had the same issues.

Then I realized that I had installed ubuntu 20.04 so through some input from others, We figured it was an issue with python3 vs python 2.7
This morning I did a fresh install of ubuntu 18.4 and am still running into the same error message.
The port number is a random set of characters.

In the summary of parameters when the program loads, the port appears to be correct:

  • /ar3/hardware_driver/serial_port: /dev/ttyACM0

Ah I see now, you probably need to provide yourself serial port access with sudo addgroup $USER dialout. You will need to log out and back in for the group to be updated. I also just tried and the string doesn't matter. Thanks for bringing this up, I'll add this to the README.