Skip to content

Extend TurtleBot3 ROS 2 fw to publish pins A0-A5 #1087

@travis-mendoza

Description

@travis-mendoza

Operating System:

Ubuntu 22.04

ROS version :

Humble

Turtlebot3 Model:

Burger

Description

I want to publish the OpenCR's analog inputs A0-A5 as a ROS2 topic while running the navigation2 package on my TurtleBot3 Burger.

Steps to reproduce issue

  1. Search for OpenCR TurtleBot3 .ino file compatible with ROS 2.
  2. Get confused.
  3. Create a GitHub issue to ask for help.
  4. ???
  5. Profit.

What Have You Tried?

1. I checked if the OpenCR analog inputs were already published as ROS2 topics but I did not see them after I ran the turtlebot3_bringup launch file.

2. I looked for the OpenCR turtlebot3 source code and found the example 

['turtlebot3_core.ino'](https://github.com/ROBOTIS-GIT/OpenCR/blob/master/arduino/opencr_arduino/opencr/libraries/turtlebot3/examples/turtlebot3_burger/turtlebot3_core/turtlebot3_core.ino) 

which is very clear and detailed but incompatible with ROS 2. There is a 

['turtlebot3_burger.ino'](https://github.com/ROBOTIS-GIT/OpenCR/blob/master/arduino/opencr_arduino/opencr/libraries/turtlebot3_ros2/examples/turtlebot3_burger/turtlebot3_burger.ino) 

in the turtlebot3_ros2 directory of this repo. I assume this is what is compiled into the 

[binary file](https://github.com/ROBOTIS-GIT/OpenCR-Binaries/raw/master/turtlebot3/ROS2/latest/opencr_update.tar.bz2)

I installed while following the TurtleBot3 quickstart guide. However, 'turtlebot3_burger.ino' abstracts all its functions to the TurtleBot3Core. TurtleBot3Core looks like it is further abstracted in 

['turtlebot3.h'](https://github.com/ROBOTIS-GIT/OpenCR/blob/master/arduino/opencr_arduino/opencr/libraries/turtlebot3_ros2/include/turtlebot3/turtlebot3.h).

So how do all these files talk to each other and where should I add code to extend the firmware to read from pins A0-A5?

Relevant logs / Terminal output

Screenshots or Diagrams

No response

Additional Information (Optional)

No response

Metadata

Metadata

Assignees

Labels

help wantedExtra attention is needed

Type

No type

Projects

Status

🚩Done

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions