|
> After the presumably thousands of hours of labor that went into designing this, they went with a consumer grade, off the shelf product for an application that would have required a fraction of the power it was capable of? Driving the 3-phase motor yes, that can (and is usually) done with a dedicated real-time MCU/ASIC. But the interface with the backend, the actual brains? You need to deal with GPS, authentication (unlock via app/bluetooth/...), ride logging, debug data. And at that point an ESP32 or heaven forbid an Arduino won't cut it either, and you don't want to spend hundreds of hours on wrangling with some custom higher-power embedded board because that is real nasty to get right. So you use an RPi because the extremely broad user base has already solved every issue you might have run into. Besides, the innards of e-scooters can be had as whitelabel solutions, no one engineers these themselves. All people do is design the outer shell based on a design kit, do whatever needs to be done to pass legal certifications, and integrate some sort of brains if it's for a fleet. |
Why? ATMega board is surely a questionable fit, but ESP32, or nRF52, or some STM32 board with Bluetooth all should be fully capable of doing the basics. I can't imagine those scooters do some fancy signal processing on-board or handle some particularly heavy traffic. ESP32 is capable of wrapping and transmitting a decent video stream (and even do some basic detection while it's at it) - surely it's much more data than some route information and various on-board telemetry. GPS and cellular are just talking over some bus to a module (pretty much the same as with rPI4), Bluetooth is available and not resource-expensive at all. So is talking to whatever relays run or block the motors - I imagine that's probably just a bunch of GPIOs. All that remains is need for some RAM to store/buffer the traces (ESP32, or one can throw in some external storage) and a basic TLS and MQTT implementation (or whatever tech would make most sense there) for the command and status message queue.
And most importantly, average ESP32 energy consumption is way smaller than rPI4's (it's pretty hot even when it idles). While I understand that scooters have large batteries, it still matters.