I’d like to see a port of the firmware to a board like this (much faster, and in the long run cheaper as we can think of packaging the esp32 on the motor controller board)
If anyone is interested in doing this work, I’ll donate one of these boards to you. Bar and Kirk will get one for free to tinker with.
I agree that porting to the ESP32 is a good idea.
This particular board misses some of the crucial signals, though, because it uses the Uno layout instead of the Mega. The pins on the Motor board for Ground, 5V, AUX1-4, INCA1 and INCA2 as well as the pins used for version identity are outside the Uno footprint.
A carrier board that uses the Mega layout and includes a socket for one of the many ESP32 boards might make more sense, and is something I’d like to work on. Which ESP32 board to choose? Anyone?
I found some references that said the ESP32 floating point was much slower than expected. Hard to follow up on the phone but it’s worth checking out.
Fwiw I think a better approach is to avoid the dual MCU board, skip the AVR, and use a single high clock rate MCU. These days that means arm - the cheap stuff is all mobile phone fallout. Lots of choices from the pills, numerous development boards, up to (and past) smoothie parts and clones
This means moving away from the arduino footprint, but allows for more elegant electronics.
A Maslow mainboard with a less bulky brain unit. Not sure if this board also has a shenzen edition. That would make it more affordable for non-US based customers. Nothing can beat China shipping fees.
I’m still undecided if ESP is a good option or not.
I found some references that said the ESP32 floating point was much slower
than expected. Hard to follow up on the phone but it’s worth checking out.
even if it’s much slower than expected, two cores @240MHz are going to be a
single core @16MHz on just about every test
Fwiw I think a better approach is to avoid the dual MCU board, skip the AVR,
and use a single high clock rate MCU. These days that means arm - the cheap
stuff is all mobile phone fallout. Lots of choices from the pills, numerous
development boards, up to (and past) smoothie parts and clones
the ESP32 is far cheaper than any ARM board, it’s <$10 (and the ESP8266 @160MHz
is <$2)
@mooselake, do you know whether the STM32 Arduino boards implement the EEPROM library, or something like that. The firmware relies on EEPROM pretty heavily, and it needs to persist through firmware changes as well.
The ESP32 would bring a 4K EEPROM store as well as a separate partition with the SPIFFS file system (couldn’t find the size, around 1M I think). There was discussion about uploading a file to cut from, this might make that possible without additional circuitry.
If you’re hoping to use wifi to attach to the board rather than USB, then my experience this morning might upset that. Whenever my router is on (on load or not), then it completely kills wifi in my workshop. So a cabled option is a must for me. I’m not even going to try to sort the problem, my wifi to the workshop is from my phone in the house through two wifi extenders to the PC. The router is obviously chucking out much more noise than the extender can handle.
This arrangement is also why I’m very much opposed to cloud based tools. It’s fine if they have an offline mode, but cloud only is killed when my wifi dies. As it did this morning when I wanted to update using Kiri:Moto. I had to cut the old file simply because I couldn’t get to the internet. Local copies also don’t suffer from updates that break everything.
I found a reference that they fake it with one block of the flash, will look further and update. WX predicts some serious rain this weekend, maybe I can pry loose a couple hours and give it a try now the ST-link module’s arrived.
Here’s the ported library list, including a link to the eeprom emulator. I have some reservations (pending research on flash longevity) about how hard you’d want to hammer on this. Also note in the wiki that the microUSB connector can be flaky, which is pretty standard. Just got a GearBest 1.5w mini laser engraver where the connector fell completely off within a couple days (return to China will kill that warranty, asymmetric shipping cost, negotiating with them about a new board)
Some if them have 64k, some have 128k, don’t know what the 5 I got have.
One possibly significant thing is that eeprom doesn’t wear out, while flash
does. Given that the maslow stores it’s postition as it moves, this may be
signfificant.
I feared for that… The bigger the router the bigger the magnetic waves…
In tha case it would make sense to use an SD card and cut direct from an SD on the machine itself… But then you also need a display and control buttons … Future options?
I really wonder how much noise is picked up on the encoder signal lines with all these magnetic forces at play
Had my hope all up! Sadly, these are all in the Uno form factor, so they don’t provide as many GPIO pins as the Mega does and the Maslow uses. Interesting developments, though.
The ZERO https://store.arduino.cc/genuino-zero has 10 PWM pins and then there are still the inputs This seems to be enough. Though I’m not sure how they are linked to the timers etc…
Then there is also the M0 (seems to be another new one… also 32bit Cortex M0) https://store.arduino.cc/arduino-m0
Thisone has 12 PWM outputs, and the price of €20 isn’t to bad either. This one would be awesome on a Arduino Nano footprint!
there is also a M0 PRO that includes a step-by-step debugger.
Is this one also an arduino?? Can Arduino IDE upload firmware to this, or does it need the IDE from ST? (that doesn’t have a counterpart that runs on Linux…)
This formfactor just makes more sense then the Arduino’s female headers.
Arm based rather than AVR, but works with the Arduino ide and a lot of the libraries have been ported. No eeprom but it’s simulated with flash. I was hoping to try a longevity test (at $2 it’s not a big sacrifice) but work ate up the last rainy day. It was easier to ignore work before the internet let you do it from home