Replies: 2 comments 1 reply
-
Hi @ByteVenom, nice find. As per https://docs.arduino.cc/hardware/nano-every it seems to be a drop-in replacement for standard Arduino Nano which is great. A bit more memory and a bit faster clock are welcome but aren't game changers though - just increases our max stepper pulse frequency by 25% - unless I'm missing something. Our bottleneck is issuing stepper pulses and updating the screen, not listening to the encoder - so I'm not sure that hardware decoding is going to play a role in our application, maybe I'm missing something. What should help is using something like ESP32 which has 15x the clock speed and 2 cores while being cheaper than Nano - which should solve both screen updates and max stepper RPM limitations we have today. In fact I'm working on a new ESP32-based board for NanoEls (or more precisely waiting for the Chinese New Year celebrations to end to have it produced 😀). Cheers! |
Beta Was this translation helpful? Give feedback.
-
any updates on that ESP setup? Even just a schematic? I'm hand-rolling an esp copy right now for myself for your firmware (and adjusting pin mappings and all that good stuff of course). |
Beta Was this translation helpful? Give feedback.
-
I'm seeing more and more about the Nano Every. It still of course hasn't come to the same point of availability as the standard Nano, or the same price point, but I believe its worth exploring.
Not only does the atmega4809 have more of the standard specs (ram, clock speed), but it has the extremely powerful ability to use Custom Configurable Logic.
I've linked a paper by Microchip on how to implement the hardware decoding. In their benchmarks they reached speeds of 2.5Mhz in unidirectional decoding and 500khz in bidirectional decoding.
I believe that this would also serve to help clean up the code a bit in terms of avoiding delays. Unfortunately I haven't found an Arduino implementation of this specific CCL logic.
A resource does exist that would help coordinate this called 'MegacoreX'
Of course, other ICs like some STM32 and the Teensy uC series have built-in hardware decoders that are more trivial to access, or there exists a library for it already. But these would not be pin-compatible with the current Nano implementation.
https://ww1.microchip.com/downloads/en/Appnotes/Interf-Quad-Encoder-CCL-w-TCA-TCB-DS00002434C.pdf
Beta Was this translation helpful? Give feedback.
All reactions