Message |
|
P.S. Something else: for "open recent" function ... it would be cool to see the full path there, not only the filename.
It used to do that, but we changed to use just the file name as it sometimes created very long paths that were difficult to read, but noted, I guess with duplicates it is difficult to know which.
I moved an old INO based project to PlatformIO.
Great, I use platformIO myself but with CLion IDE instead of VSCode. So as you can imagine, it is well supported!
Now in TCMenu Designer (OS X, latest version) i see all installed libraries as 0.0.0 installed. In general settings i unchecked "Im using Arduino IDE...."
If you don't have global libraries any more, just turn on the "I'm not using Arduino IDE option". These days, I question if the library checker is still even needed, all Arduino IDEs, platformIO and most mbed tools manage lib versions.
Pio is using the .pio folder in my project folder for the libdeps, all needed libraries are there. How do i tell TCMenu Designer to use this dir (its not selectable by GUI due to the .pio is hidden on OS X in the file select dialog)
As above.
in the output there is still INO mentioned, even when INO files dont exist
Ignore that, it's just the logging, assume it is referring to your C++ file. I mainly use C++ main for my own projects, other than examples. Even one of the examples, EspAmplifier uses a C++ main.
|
 |
|
So from a quick look around:
* at least some STM32 boards have HID capability
* some Teensy boards have HID capability
* some Seeed studio SAMD boards seem to have HID capability
* probably most mbed based Arduinos (EG Nano 33 BLE)
* ESP32-S2 has HID capability
* [EDIT] Most SAMD based Arduino including MKR boards use cortex-0 with the ability to enter very low power states, even have an example for task-manager low power integration.
[EDIT] I wouldn't think of it as overkill, a cortex-0 is probably close to the same power requirement, with enough flash and memory to comfortably fit a large sketch. They are also all fairly inexpensive (some dirt cheap) and work with the Arduino framework.
|
 |
|
Each key takes 10 bytes these days, the documentation should be updated, but it has been that way for a long time, ever since the onRelease functionality was added; when two extra bytes were needed for the pointer. So with 40, you'd need around 1600 bytes to store all those key states. I mean if the old version works for you, you could just stick with it.
I've noticed that one thing that was missed when moving to simple collections to do the allocations (which should have a very modest memory overhead) was the ability to set the number of switches upfront, meaning it will reallocate each time you exceed the current array, default start is 5 for AVR. I'll add MAX_KEYS back in the next version.
It is possible on such a small board that even 10 bytes per switch is too much, as even without the other overheads of the library that is already 1600 bytes out of 2500. To be honest, we've moved on and would not really consider an AVR in a production system these days, I keep the boards for testing with as I know many still rely on it. The power usage and price of much more capable devices have leveled out, and they are available in small pacakge configurations ready to put into a product. In terms of HID I think many STM32 devices can act as a HID using Stm32Duino. I also think ESP32-S2 does so too.
In terms of code being compiled out, the linker does that by default, only compiling in the parts you are using. It is probably simple-collections list accounting for the difference.
|
 |
|
Task manager 1.3.3 was released yesterday, it contained a critical fix for event handling.
|
 |
|
IoAbstraction 2.3.1 was released yesterday, it adds support for interrupt-based matrix keyboards. You can now choose polling operation or interrupt operation on either device pins or a MCP23017 device.
Compile error on mbed-based boards was also fixed.
|
 |
|
Just out of interest, did you manage to get your project working on ESP32-S2?
|
 |
|
This is a little outside the scope of the forum but I’ll do my best. The watchdog timer is to ensure that your code yields to the Wi-Fi library every few milliseconds. If you’re not using Wi-Fi one option would be to turn it off.
However, that aside you may need to transfer the serial data in smaller batches yielding between each batch. Maybe you could use a raw (not marshalled) interrupt and fill a circular buffer (SimpleCollections) in the interrupt with the data. Then have either a frequently running task or event that reads the circular buffer and sends data in batches. There’s no magic wand for these cases, but you’ll probably need to check if serial is going to block before calling write using availableForWrite.
Also if you’re using tcMenu with the u8g2 library over i2c ensure the low latency option is ticked.
|
 |
|
2.3 has been fully released. Both Libraries and UI.
|
 |
|
The fix was released earlier today, 2.3 of both IoAbstraction and tcMenu are available now, I have built and tested a menu on ESP32S2 with an OLED screen and rotary encoder.
|
 |
|
TcMenu 2.3 both library and UI have been released today. There are several major steps forward in this version.
Firstly, it has preview support for embedded Java on Raspberry PI. It can automatically build a UI that can then be highly customized. This support is in preview.
EmbedCONTROL has gone through a heavy refactor, and clean up. We'll continue to clean up and improve it, but the heaviest of the work is done.
Menu In Menu can be used on Java boards, allowing an embedded java device to embed many remote menus within a single device.
Many bugs have been fixed, libraries upgraded, and usability improvements applied.
https://github.com/davetcc/tcMenu/releases/tag/2.3.0
Make sure to update IoAbstraction and tcMenu libraries in your Arduino IDE at the same time!
|
 |
|
IoAbstraction 2.3 was released today, it supports rotary encoders that are not on an interrupt pin. It also better support ESP32S2 boards.
|
 |
|
I've actually got a couple of hours in and tested IoAbstraction and tcMenu library on all platforms, they will be in Arduino library manager and platformIO next time they poll.
The 2.3 UI has a lot of fixes in it too and will follow soon.
|
 |
|
Once we've done a bit more testing we'll release the mac version for the beta. It takes a bit of effort to notarize and sign the executables so I'll make sure it passes a smoke test first.
You could use the latest version of tcMenuLib library from GitHub without any problems. Just backup your current version and pull down the latest from there. It's the library that is causing the problem here and it should work fine with 2.2 designer for now.
|
 |
|
|
 |
|
The library should be in a good state now, I am testing it already, for what you want it may be better than 2.2. You'd just need to take a zip of the latest from GitHub.
|
 |
|