gentijo / ROSMicroPy

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

ROSMicroPy

ROSMicroPy is an integration of Micropython and MicroROS providing full access to ROS environment along with native Micropython type support for ROS.

ROSMicroPy has two goals.

  • Provide a modular platform based on the ROS robotics with an easier learning curve to get started but also allows for future expansion into real world industrial robotics.

  • Expand on the idea of modular robotics where a robot can consist of many distributed compute modules that are organized into a single heterogenous interface using the "RollCall" protocol. The goal here is to allow robots to be assembled from many nodes, giving it more of a lego assembly feel, and having a Controller / IDE seeing all those nodes as a single robot control / programming interface.

Current Build Profiles supported by ROSMicroPy

The core stack provides the basic functionality of a ROS enabled Micropython node

From it's core configuration, there are other ROSMicroPy modules that can be configured to provide additional functionality.

The LCD Controller introduces to new modules;

ROSMicroPy-GUI, is a JSON Forms renderer for LVGL that allows for a Web based GUI layout designer to produce a JSON description of a screen layout that can be saved on a ROSMicroPy device.

ROSMiicroPy-JoyCom, is a Bluetooth HID Central Server, that makes the inputs of a JoyCon device available for the ROSMicroPy environment.

ROSMicroPy-CAM module allows an ESP32 Cam to publish a video stream in ROS format that can be received by another ROSMicroPy or other ROS enabled device. As images are pulled from the Camera, they are passed to the Python layer to be sent out as a ROS message or allow it to be analyzed by an image processing library such as YOLO

About

License:Other


Languages

Language:C 92.6%Language:C++ 4.3%Language:Python 2.0%Language:CMake 0.9%Language:Shell 0.1%Language:Makefile 0.0%