Monochrome themes for rendering menus onto OLED/5110.

By dave on May 11, 2021

Examples of this theme Information about themes in general. Below we show three examples of this theme, first you see an inverse title example, but with sliders turned on, we don’t do this by default as it comes with some issues, but some may like it. Second, we show inverse video on a dual color OLED, and lastly, we show the bordered theme. oled menu using border theme plugin Two color oled inverse theme plugin oled menu using inverse title theme plugin TcMenu ships with two monochrome themes, one that uses borders for the title and avoids the use of inverse video to a large extent, and one where the title and selection use inverse video.

TcMenu - Using Adafruit_GFX mbed to render menus

By dave on September 10, 2020

In this guide we show how to use the Adafruit_GFX library for mbed RTOS to renderer menu items with tcMenu. This rendering driver for Adafruit_GFX is built into the core menu designer download, meaning it’s available out of the box when MBED_RTOS is selected. We maintain a fork of Adafruit_GFX library for mbed that currently supports OLED displays only. Therefore, at the moment all options are memory buffered. Before proceeding, you’ll need to make sure you’ve installed the Adafruit_GFX for mbed library and the library; which also contains the OLED drivers.

TcMenu - Using U8G2 to render menus onto an OLED

By dave on July 6, 2019

In this guide we show how to use the U8G2 library to renderer menu items to an OLED unit with tcMenu. This rendering driver for U8G2 is built into the core menu designer download, meaning it’s available out of the box. The U8G2 library supports a lot of different displays, with very different capabilities. This plugin concentrates on monochrome displays, mainly OLED that are supported by this library. It’s worth reading this guide fully so that you understand how we manage the various capabilities.

TcMenu - DfRobot input and display plugin

By dave on June 14, 2019

DfRobot input and display plugin make generating a menu for DfRobot shields very simple. There’s no configuration needed in order to produce a menu. This plugin auto configures the display to use LiquidCrystalIO library and sets up switches to use the micro-switches connected to analog input A0. Setting up for your menu First, ensure your menu structure is saved and then choose Code -> Generate Code from the menu. Once the code generation dialog appears, to the right of the current input type will be a button named “Change”.

TcMenu - Rendering menus to LCD using LiquidCrystalIO library

By dave on May 11, 2019

In this guide we show how to render menu items using LiquidCrystalIO library, onto displays compatible with HD44780 (often referred to as LCD). This rendering driver is built into the core menu designer download, meaning it’s available out of the box. The LiquidCrystalIO library is a fork of the LiquidCrystal library, with a few additional capabilities. Most importantly, updating HD44780 displays is slow, think 270Khz slow. This library avoids long pauses by using task manager for managing these delays, so is uniquely able to keep your tasks running.

TcMenu - Using Adafruit_GFX to render menus

By dave on May 10, 2019

In this guide we show how to use the Adafruit_GFX library to renderer menu items with tcMenu. This rendering driver for Adafruit_GFX is built into the core menu designer download, meaning it’s available out of the box. The Adafruit_GFX library supports a lot of different displays, with very different capabilities. Some are monochrome with an in-memory buffer; whereas others are high resolution colour displays that are not buffered in memory. In order to make our renderer as generic as possible it supports both of these capabilities through configuration.

TcMenu - Using TFT_eSPI library to render menus

By dave on May 10, 2019

In this guide we show how to use the TFT_eSPI library to renderer menu items with tcMenu. This rendering driver for TFT_eSPI library is built into the core menu designer download, meaning it’s available right out of the box. This plugin simply wraps the functionality that the library provides. The TFT_eSPI menu plugin supports a lot of different displays, that cover a range of resolutions. However, we have mainly tested with both a ILI9341 and ST7735 based TFT, but it should work with other supported displays.

Creating and using Bitmaps and Title Widgets in your menu

By dave on January 2, 2023

Within TcMenu designer there is a bitmap creation utility, it can take most common file formats as its source, and convert them to a format suitable for use in tcMenu (and many other libraries too). The bitmap creation utility is located in the “Code->Bitmap/Widget creation tool”. It can create header files for bitmaps or title widgets to either the clipboard or a file. Let’s first go through what it can create at the moment.

TcUnicode Font format documentation

By dave on January 1, 2023

TcUnicode is a font format suitable for the presentation of a larger number of glyphs from different Unicode blocks. On most boards the size difference to Adafruit fonts is relatively insignificant. The advantage being that you can have fonts with glyphs from multiple unicode blocks efficiently. TcUnicode rendering is also compatible with Adafruit fonts, so you can use both Adafruit_GFX and TcUnicode fonts at the same time with TcUnicodeHelper. For use within TcMenu, it is supported on all our graphical displays and is easily enabled in the display setup from the code generator dialog.

Text pipelines for drawing with tcUnicode

By dave on January 1, 2023

TcUnicodeHelper uses a text pipeline to draw onto the display. Text pipelines are how it supports so many library options, it is an interface that must be implemented in order for tcUnicode to be able to draw onto a device. It has the minimum set of functions for drawing text. class TextPlotPipeline { public: virtual ~TextPlotPipeline() = default; virtual void drawPixel(uint16_t x, uint16_t y, uint32_t color) = 0; virtual void setCursor(const Coord& where) = 0; virtual Coord getCursor() = 0; virtual Coord getDimensions() = 0; }; Method drawPixel - takes the x and y location we want to draw at along with the color.

tcMenu for Arduino

This site uses cookies to analyse traffic, and to record consent. We also embed Twitter, Youtube and Disqus content on some pages, these companies have their own privacy policies.

Our privacy policy applies to all pages on our site

Should you need further guidance on how to proceed: External link for information about cookie management.

Send a message
X

Please use the forum for help with UI & libraries.

This message will be securely transmitted to our servers.