Menu control using a matrix keyboard

By dave on August 2, 2019

Using a matrix keyboard with TcMenu is straightforward, we use the IoAbstraction Keyboard Manager component to handle the keyboard, along with a custom listener for tcMenu that feeds the menu manager with appropriate events upon key presses. This library allows you to connect your keyboard either using Arduino pins, or any supported IoAbstraction such as the I2C PCF8574 or MCP23017. Setting up the menu sketch for a Matrix Keyboard Before proceeding, it is recommended that you wire up your keyboard in accordance with the above linked keyboard manager page and any documentation that came with the keyboard.

Menu library remote connectivity tutorial

By dave on August 2, 2019

TcMenu has considerable out of the box remote connectivity on both Arduino and mbed. With support for Ethernet2 library, UipEthernet library, ESP8266 WiFi, ESP32 WiFi and Serial (including Bluetooth Serial) to name a few connectors. Please pay close attention to the following classes in the reference documentation as they are mentioned frequently here: BaseRemoteServerConnection in reference docs TcMenuRemoteService in reference docs. Please bear in mind that TcMenu is able to support a wide range of remote connectors.

TcMenu Designer UI - worked example

By dave on March 30, 2018

Worked example: Building a timer For this example we will create a menu that has two top level menu items; a counter which counts down from the selected value, and a Boolean switch that turns on or off the countdown. It will also have a submenu with one menu item to control the notification method. So lets draw this out conceptually below menu root +- countdown, integer values 0 to 1000 seconds +- enabled, boolean YES, NO.

Working with Menu Item types in tcMenu

By dave on March 31, 2018

Many embedded applications need to present status and allow users to manage settings. TcMenu provides first class support for both presenting status and managing configuration/settings using menu items. It is possible to use with and without a local user interface. All menu item types can be accessed remotely, and we have a remote API, UI solutions, and connectors to commercial IoT endpoints for that. Menu item arrangement and storage Each menu item is part of a tree, if you are unfamiliar with trees, there’s a little terminology worth learning.

STM32/mbed LTDC Frame buffer menu touch driver

By dave on February 8, 2023

STM32 LTDC Frame buffer touch screen support It is possible to generate an impressive menu application using LTDC via the BSP functions. It has been tested to work fully with mbed on a STM32F429 Disc1 with ILI9341 and touch, but also should work with STM32duino and other screens given the right parameters and setup. IMPORTANT NOTE: It should be noted that using this plugin outside the already tested case of mbed, discovery F429 board would be for advanced users only, and may involve a lot of configuration and setup.

Touch screen menu calibration

By dave on February 8, 2023

There are several touch plugins in TcMenu and they all have support for controlling calibration and orientation. The calibration UI is presently at preview quality although works for many cases. Below is an image showing the common options to most touch plugins. Calibration and Orientation options Touch screen calibration The touch screen calibration option provides a very simple UI and calibration load and save feature that works with all IoAbstraction based touch screens.

Using SSD1306 to generate a Uno / low memory multi level OLED menu

By dave on September 29, 2022

It is possible to build multi level menus with an OLED display on an Arduino Uno or other low memory board provided you use SSD1306Ascii instead of the U8G2 library, as it uses a lot less memory at the cost of some flexibility. We’ve tested it with regular I2C SH1106 OLED display units and it works absolutely fine. To use this library, you create the variable globally in your sketch, and then reference it in the code generator properties, the code generator will not create the display object for this type of display.

Menu In Menu support for embedded Java on Linux / Raspberry PI

By dave on April 21, 2022

You can combine many menu structures from different devices into a single menu, this works by each remote menu being represented by a MenuInMenu object being associated with a RemoteConnection and a MenuManagerServer. It maps the remote menu into an unused ID range on the local device and even handles dialog commands. Available from version 2.3 of tcMenu Designer and API. Menu In Menu range and submenu mapping Each menu in menu definition that we create results in a remote connection to another device, and the selected sub-menu receiving all the menu items from that device as if they were local menus.

Control menus with embedCONTROL.JS from a webserver

By dave on April 14, 2022

Available from 2.3 onwards. On larger embedded devices you can serve up embedCONTROL.JS from a web browser. It allows you to remotely control and monitor the menu items from a web page on any device that can run a web browser. It is a single page web application based on React.JS. It supports the most important functions from the full embedCONTROL application, having the advantage of not needing any installation.

Embedded Java ethernet, WiFi and Serial plugin

By dave on April 10, 2022

In this guide we show how to setup and use the embedded Java remote plugin to allow embedCONTROL connections to a Raspberry PI or other embedded Linux board. Back to tcMenu main page

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.