I’m going to start writing more frequently about our goals, and the plan is to do it here and share these updates on Facebook and Twitter, to avoid me having to write the core of the article twice. This time around I’m going to cover tcMenu 2.0, where it is, and what’s next.
This is an exciting time for tcMenu, moving further towards a UI framework rather than just rendering line by line. In 2.0 you’ll be able to set menu items out in grids made up of rows and columns, you’ll be able to draw actionable items such as ActionItems, DialogButton, and SubMenus as icons, and those icons could be Xbitmap, or native colour; in an upcoming version we’ll even support palette based bitmaps!
What’s even more important is that we now have a common rendering framework so adding more displays is a very trivial activity (implementing a simple interface). This means that u8g2, TFT_eSPI, Adafruit_GFX and LTDC frame buffer all share about 90% of the code. In fact implementing the interface is so trivial that we’ve even added a new option for it in designer.
Theme support is another leap forward, it means that many embedded apps may not even need to worry about styling, just pick the theme you like best and run with it. However, even if you find the theme isn’t quite to you liking, it’s very easily modified, and once the theme file is put in your project, the designer won’t touch it again, so you can modify it safely!
Our next step is IoT control, we have our own offering in the form of embedCONTROL, and we also plan to support as many IoT solutions as possible. As soon as the 2.0 release is out we’ll focus fully on this, it’s likely that embedCONTROL will come first just because it’s so close to ready. Either in parallel or shortly after we’ll start looking at integrating existing IoT offerings such as MQQT, Amazon, Blynk, Apple, Google etc.
All this fits with our company direction statement; which is to be there for you wherever you want to build, and on whichever system you need to do it. Our designer is tested on Windows, macOS and Linux. We support nearly all Arduino boards, ESP boards, and many mbed boards. We’ll have more updates next week.