ros periferie with arduino i2c

asked 2021-09-06 15:14:29 -0600

KennyDeDavion gravatar image

updated 2022-04-30 13:18:35 -0600

lucasw gravatar image

Greetings to you all. I am looking for a person who understands ROS and knows its ways and method of implementation into already functioning systems. Description: I have Raspberry3 + which has a standard robotic ubiquity image with raspbian.

  • Operating System: Raspbian GNU/Linux 10 (buster) Kernel: Linux 5.10.52-v7+ Architecture: arm

Installed ROS Melodic according to this manual:

without rplidar package.

Currently after "catkin build":

Profile:                     default
Extending:          [cached] /opt/ros/melodic
Workspace:                   /home/pi/ros_catkin_ws
Build Space:        [exists] /home/pi/ros_catkin_ws/build
Devel Space:        [exists] /home/pi/ros_catkin_ws/devel
Install Space:      [unused] /home/pi/ros_catkin_ws/install
Log Space:          [exists] /home/pi/ros_catkin_ws/logs
Source Space:       [exists] /home/pi/ros_catkin_ws/src
DESTDIR:            [unused] None
Devel Space Layout:          linked
Install Space Layout:        None
Additional CMake Args:       None
Additional Make Args:        None
Additional catkin Make Args: None
Internal Make Job Server:    True
Cache Job Environments:      False
Whitelisted Packages:        None
Blacklisted Packages:        None
Workspace configuration appears valid.
[build] Found '250' packages in 0.0 seconds. 
klik klak klik
[build] Summary: All 218 packages succeeded!
[build]   Ignored:   None.
[build]   Warnings:  58 packages succeeded with warnings.
[build]   Abandoned: None.
[build]   Failed:    None.
[build] Runtime: 8 hours 54 minutes and 29.0 seconds total.

Rpi is using a converter level, connected to the Arduino Uno on I2c, and using USB. The current code in Arduino: takes up almost all of Uno's memory. That's why I don't want to change it.

Effort: If I use ArduinoIDE in Rpi, I can control the whole robot with the help of a display on the serial line, where there is also a list of data from the sensor.

Instructions at:

that's what I want to work on.

Unfortunately, and here begins a two-year effort to do nothing, because the above-mentioned project does not use Arduino, and is created from the ground up to measure. Yesterday I read how ROS was created, and exactly for people like me it is created accordingly, as a framework that is implemented, and there is no need to rebuild everything again from the beginning, when someone has already created something similar.

Help needed: How do I put these things together so I don't really have to redo everything? The tutorials and tutorials are either old, the ones I find, or they use "sudo apt install ros- * or rosdistro- *" but unfortunately this doesn't work on rpi or for some reason. or Arduino is not used.

So far, the only useful piece of advice I was given was to create a node that would clean up and send data over a serial line where rpi listens.

Here are the errors of the Mikova spotmicro display:

rosrun i2cpwm_board i2cpwm_board

[INFO] [1630936943.498425395]: I2C bus opened on / dev / i2c-1
[INFO] [1630936943.519501758]: Setting PWM frequency to 50 Hz
[FATAL] [1630936944.534527339]: Failed to open I2C bus (null)
/ home / pi / ros_catkin_ws / devel / bin / rosrun: line 4: 8420 Unauthorized Memory ...
edit retag flag offensive close merge delete


I sympathise with thing seeming very complex, but for others to be able to help you, I would recommend to focus on a single problem, and ask a question about that.

Right now your post here is very long (and some things are already hosted externally), and there are many things going on.

That doesn't make it easy for someone reading this to figure out what it is you actually need help with the most.

My suggestion: post an edit, in which you describe what your critical blocker is. What is it that keeps you from making progress?

Note: I don't use any of these packages, so I cannot help you. But I did want to comment on the question itself.

gvdhoorn gravatar image gvdhoorn  ( 2021-09-07 02:20:45 -0600 )edit