No version for distro galactic. Known supported distros are highlighted in the buttons above.
No version for distro foxy. Known supported distros are highlighted in the buttons above.
No version for distro noetic. Known supported distros are highlighted in the buttons above.
No version for distro melodic. Known supported distros are highlighted in the buttons above.
No version for distro ardent. Known supported distros are highlighted in the buttons above.
No version for distro bouncy. Known supported distros are highlighted in the buttons above.
No version for distro crystal. Known supported distros are highlighted in the buttons above.
No version for distro eloquent. Known supported distros are highlighted in the buttons above.
No version for distro dashing. Known supported distros are highlighted in the buttons above.
No version for distro lunar. Known supported distros are highlighted in the buttons above.
No version for distro jade. Known supported distros are highlighted in the buttons above.
No version for distro indigo. Known supported distros are highlighted in the buttons above.
No version for distro hydro. Known supported distros are highlighted in the buttons above.

oled_display_node package from oled_display_node repo

oled_display_node

Package Summary

Tags No category tags.
Version 1.0.0
License BSD
Build type CATKIN
Use RECOMMENDED

Repository Summary

Checkout URI https://github.com/UbiquityRobotics/oled_display_node.git
VCS Type git
VCS Version master
Last Updated 2021-02-04
Dev Status DEVELOPED
CI status No Continuous Integration
Released RELEASED
Tags No category tags.
Contributing Help Wanted (0)
Good First Issues (0)
Pull Requests to Review (0)

Package Description

OLED I2C display node package

Additional Links

No additional links.

Maintainers

  • Mark Johnston

Authors

No additional authors.

OLED Display Output ROS Node

This module implements a ROS node (process) that does Display Updates to an OLED display connected on I2C. The node does some initial messages and then will subscribe to an inbound ROS topic and act on messages for update of lines on the display. Full line or line substring updates starting at a given X pixel on the given line are supported.

The tested display is the 1.3" diagonal display using a SH1106 chip controlled over the I2C bus. We prefer the pinout with Ground, Vcc, SCL then SDA lines for use with Ubiquity Robotics rev 5.x main boards. These displays are easily found on EBay but be sure the controller chip is the SH1106 and that they will work with a 3.3V supply and 3.3V I2C control.

The 1.3" OLED display using the SH1106 controller chip offers 8 lines of 15 characters The SH1106 is closely compatible with SSD1306 display that is typically the 0.96" OLED display. The difference is mostly at initialization and then changing the pixel X offset for the SH1106 control chip with a RAM space of 132*64, while the SSD1306 pixel space is 128*64.

ROS Paramaters

  • There are currently no ROS parameters available.

Publications

  • The node does not publish messasges to any ROS topic

Subscriptions

  • oled_display_node (msgs/DisplayOutput): Listen for display updates

The Qualified OLED Display we have Tested

There are several displays that are 1.3" displays using the SH1106 controller that will allow powering from 3.3V and also allow a 3.3V I2C bus. The pinout MUST be from left to right: Ground, 3.3V (Vcc), SCL and SDA. Sometimes this display is incorrectly stating the controller is a SSH1106 display but it is a point of confusion and is the SH1106. We have identified a specific vendor as well. You may purchase this display on amazon.com and look for this text in the title 'HiLetgo 1.3" IIC I2C Serial 128x64 SSH1106 OLED LCD Display LCD Module'. there are cheaper solutions but only by a few dollars so we wish to only stand behind this display officially. We claim support for this display on the rev 5.1 motor controller board and this display will plug right in to our female connector on the rev 5.1 board. The Rev 5.0 controller used a male pin jack so you would have to modify your display with a female socket to use on a rev 5.0 board.

Manually Launching the Node

  • roslaunch oled_display_node display.launch

The node will start and then print the linux network name on top line and then the IP address will be on the 3rd line.

Launching the Node From a ROS launch file

To launch the node from a ROS launch file add to the launch file the 2 lines shown below. As an example you can add these two line to an Ubiquity Robotics Magni host processor in the file /opt/ros/kinetic/share/magni_bringup/launch/core.launch although we plan on configurable support in early 2020.

<node pkg="oled_display_node" type="oled_display_node" name="oled_display_node" output="screen">
</node>

Test or Example Script

A very simple python script that sends a few messasges to the display node has been supplied. Use the python script 'display_writer.py` in the scripts folder to test the display.

  • python ./scripts/display_writer.py
CHANGELOG

Changelog for package oled_display_node

1.0.0 (2020-04-28)

  • Remove /* in comment that can cause warnings Bug: https://github.com/UbiquityRobotics/oled_display_node/issues/4
  • Refresh the IP addr and machine name lines every 10 seconds. This allows for a changed IP address due to networking changes to show up worse case in 10 seconds. Any other lines the app outside of the oled display driver is concerned must be refreshed by sending messages to the display node over the input topic as this auto-refresh does not want to make assumptions about user lines in use on the display
  • README.md
  • Refactoring to become oled_display_node
  • Added CMake install rules to allow for package release This should install the main executable, the launch files and the demo script.
  • Cleanup of package and make and more
  • trying to fix the section on starting from launch file
  • Cleanup and enhance README to point out we intend this display node to support 1.3 inch OLED display using the SH1106 controller chip
  • Initial push of OLED display node with README
  • Contributors: Mark Johnston, Mark Johston, Rohan Agrawal

Wiki Tutorials

See ROS Wiki Tutorials for more details.

Source Tutorials

Not currently indexed.

Package Dependencies

System Dependencies

No direct system dependencies.

Dependant Packages

Launch files

Services

No service files found

Plugins

No plugins found.

Recent questions tagged oled_display_node at answers.ros.org