Please note that this page contains statements about future work, to which we are not committed. You should not base any designs or business decisions on the information here.
We always name releases after a well-known album / LP. They are in approximate order, but things do move around.
If you wanted to prioritise an item by funding it, please use the contact link at the top of the page.
We operate using a mix between Kanban and Scrum. Estimated items are using t-shirt sizes (T, S, M, L, XL). Status is either Ready, Pending, Started, Done.
Sprint: Speak and spell (in progress)
Continue the work to make tcMenu more accessible to new users. Make sure we get the documentation updated to match the latest versions of all the libraries. We need a firebreak where we put embedCONTROL on the backburner for one release, to let us get what we’ve got fully documented.
|Ready||Med||website||Move the send mail back to it’s own page, it is not good loading the scripts on all pages|
|Ready||Sml||website||Put cloud watch monitoring in place on the website, forum and library manager - urgent|
|Ready||Tny||embCtrl||Tidy up the default colour choices in the color editor.|
|Ready||Tny||embCtrl||Occasional loss of connection on the serial connections, unsure which side is responsible|
|Ready||Tny||ioLibs||Problem with mbed 5 compilation in TaskManagerIO / IoAbstraction - urgent|
|Done||tcMenu||Release tcMenu 1.7 UI for Mac and Windows, with sufficient testing|
|Done||tcMenu||In the designer link the menu type documentation above for each EditorUI|
|Done||website||Update pages on using u8g2 and Adafruit displays with tcMenu to include quick start|
|Done||website||Fully document every menu type, how it works in the designer, in code, and remotely.|
|Done||website||Clean up the guide on using tcMenu Designer, it is a little out of date|
|Done||embCtrl||When pairing has completed it appears that the connection is never properly re-established|
|Done||embCtrl||Some spacing or control is left behind on disconnect in the main view|
|Ready||website||Ensure that the all IoAbstraction classes are properly documented|
|Ready||website||Ensure that mbed support for TaskManagerIO, IoAbstraction and tcMenu is correctly documented|
Sprint: Agents of fortune
First phase of improvements to the embedded renderer classes to make them share core code. Also, to make colour screens work in a much better way.
|Ready||Sml||tcMenu||Ability to have a callback when a menu is shown, the menu item should be the submenu item|
|Ready||Lge||tcMenu||Create new base classes for character based, buffered graphic and frame based displays to avoid repetition|
|Ready||Sml||tcMenu||Reduce the screen area that’s actually rendered to the absolute minmum for all displays text and graphics|
|Ready||Med||tcMenu||Use the double buffered rendering to ensure performance is as good as possible on unbuffered displays|
|Ready||Med||tcMenu||Add support for STM32 hardware display drivers using the ST provided library on mbed|
|Ready||Sml||tcMenu||Ability to hide the title (treating it as an active item at position 0) on smaller display|
|Ready||Sml||tcMenu||Spike to work out how to improve setup of security and authentication within embedded code|
|Ready||Tny||tcMenu||Recreate the issue where sometimes a sub menu item is not created from new item dialog, but id increases|
|Ready||Sml||tcMenu||Release 1.7.x patch release for Windows with the minor fix (no macos changes)|
|Ready||Lge||website||Add a short video on using u8g2 and Adafruit displays with tcMenu|
Sprint: Street fighting years
We now need to complete the embedControl apps and get them onto their respective stores, at least in BETA form, where they are not fully complete, but usable. This sprint will get us close to that on both UWP and iOS. It will also make strides towards making it easier to set up remote connectivity and setup connections.
|Ready||Med||tcMenu||Implement BLE endpoints for mbed, Nano33BLE and also the HM10 module and make available as plugins|
|Ready||Med||embCtrl||Write a iOS serial port implementation for BLE that is available from Serial Factory|
|Ready||Med||embCtrl||Windows BLE driver that is available from the Serial Factory|
|Ready||Med||embCtrl||Android BLE and bluetooth driver that is available from Serial Factory|
|Ready||Med||tcMenu||Implement very simple multicast / UDP based packet sender that sends a hello on request but limited to once every 10 seconds|
|Ready||Med||embCtrl||Implement very simple multicast / UDP based packet sender that requests a hello from remote devices|
|Ready||Lge||tcMenu||Room for Security and authentication change identified in spike above.|
|Ready||Tny||tcMenu||Check in with testers if the documentation links on generator and item types are big enough / in the right place|
Embed Control (embCtrl) in approximate order
|Ready||Med||embCtrl||Repeat function on the back and forward buttons in analog up down editor|
|Ready||Med||embCtrl||Custom image button support for boolean menu items with on and off buttons|
|Ready||Med||embCtrl||VU meter style item that handles the range of an Analog item|
|Ready||Med||embCtrl||Volume rotary dial control that works with an analog item|
tcMenu UI and Libraries - tcMenu
|Ready||Sml||tcMenu||Prepare a PR for the cookie cut function to offer back functionality to main repo|
|Ready||Sml||tcMenu||Ability to have a callback when a menu is shown via the menu observer, returning the actual submenu.|
|Ready||Med||tcMenu||Ensure that the analog joystick works in a more predictable way for selecting text, also some kind of simple calibration utility class|
|Ready||Sml||tcMenu||Try and determine if there’s an old set of _menu.cpp/h files left around, produce error and rename then during conversion|
|Ready||Med||tcMenu||Make value items so the progmem nature of their info block is optional, and can also be created in memory for value items|
|Ready||Sml||tcMenu||Write an extension of the commit callback that handles telephone numbers and postcodes as an example. Make it possible to force item back to edit mode|
|Ready||Sml||tcMenu||Implement structure changed handler in the remote capabilities and ensure that it goes back into bootstrap mode|
|Ready||—||tcMenu||Win10 - Consider moving back to the emf file as the item that is loaded as per MacOS and Java|
IoAbstraction and TaskManagerIO - ioLibs
Creating a new analog abstraction project that handles some common I2C and SPI devices.
|Ready||—||ioLibs||Add support for SPI Burr Brown volume control|
|Ready||—||ioLibs||Add support for SPI DAC|
|Ready||—||ioLibs||Add support for any other devices at hand|
|Ready||—||ioLibs||Support for 23S17 SPI expander|
|Ready||—||ioLibs||BasicIoAbstraction for mbed should allow access to the underlying GPIO, and even custom configuration too|
tcMenu Designer Pro - desPro
Better prototyping view that is closer to what rendering looks like on device.
|Ready||—||desPro||Cross compile a version of Adafruit_GFX that can build for PC|
|Ready||—||desPro||Build a control that can display the Canvas based on the current display plugin (works only with Simple U8G2 and Adafruit)|
|Ready||—||desPro||Build a UWP screen that can edit simhub dashboard and add as a in app purchase|
|Ready||—||desPro||Add a means of adjusting display parameters, or an API to configure the plugin|
|Ready||—||desPro||Add a means of adding additional pro-plugin generated header / code files during the generator processing.|
Adding a new renderer for larger screens that can better support touch
|Ready||—||desPro||Add some kind of delegate menu renderer that allows some submenus to use different rendering.|
|Ready||—||desPro||Introduce the concept of icon rendering, either native color, or mono icons and allow a hybrid menu where some items are icons|
|Ready||—||desPro||Introduce touch screen support for regular menus with scroll and click modes|
|Ready||—||desPro||Support STM32 mbed board colour display using whatever code seems most probable|
|Ready||—||desPro||Ability to configure the graphics capabilities within tcMenu Designer incuding per submenu layout|
|Ready||—||desPro||Add support for high refresh rate displays: 10, 25 and 30hz modes (make rendering more efficient)|
Remote control and general tasks.
|Ready||—||desPro||Allow for more than one remote controller at once, even more than one type at once.|
|Ready||—||desPro||A screen that can build infrared remote capabilities into the menu|
|Ready||—||desPro||Multilingual support in menu structures|
Third party IoT solutions
|Ready||—||3rdIoT||Amazon IoT for submitting data to an IoT container and confirming that data appears in the web console|
|Ready||—||3rdIoT||Amazon IoT for checking that the data can be acquired from the IoT container and displayed in embedControl|
|Ready||—||3rdIoT||Amazon Alexa control capabilities within the Amazon IoT solution|
|Ready||—||3rdToT||Azure plugin that works as per Amazon for data submission and acquisition|
|Ready||—||3rdIoT||Blynk plugin support that works at least to submit data into their IoT system|
|Ready||—||3rdIoT||SPIKE Look into Google home and Amazon home|
Who-hoo, there are projects that we’ve already finished!
Summary Projects that have been compeleted in Q3 of 2020. All releases use the name of a popular LP / album. See the Product roadmap for current projects Project: Music for the masses (completed 12th Nov 2020) Purpose: Get a version of tcMenu Designer that works better for new users, so that they can get started quickly. This release also adds two additional menu items RGB and Choice (an enum type that can exist in EEPROM/RAM/Custom).