Reality check: can I build this product on the ESP32?

All ESP32 boards running MicroPython.
Target audience: MicroPython users with an ESP32 board.
Post Reply
benray
Posts: 2
Joined: Tue May 04, 2021 2:44 am

Reality check: can I build this product on the ESP32?

Post by benray » Tue May 04, 2021 3:01 am

I want to use the ESP32 for distributed data collection for a startup.

I don't have any experience in hardware, but I'm dumb enough to give this a try anyway.

Projects requirements:
  • Secure automatically OTA software updates on customer-owned devices
  • 1 hour of time-series IMU data automatically collected and uploaded to Firebase in chunks before memory runs out
  • Bluetooth communication with iOS app
I want to build everything in micropython on the ESP32 so the project can be fully open-sourced and easily improved by advanced users with more experience than me. First, it would be helpful for me to understand if this is even possible on the ESP32.

BetterAutomations
Posts: 36
Joined: Mon Mar 20, 2017 10:22 pm

Re: Reality check: can I build this product on the ESP32?

Post by BetterAutomations » Mon May 10, 2021 3:45 am

Tentatively--yes, you can do that. I'm attempting to do the same thing. Re-evaluating ESP32 now, and my requirements are similar to yours: Secure automatic OTA, Firestore, and Bluetooth to iOS/Android.

With no experience in hardware, you're in for some fun. It's a lot of work. Lots of little decisions to make, lots to read, lots to learn. But I too had no experience in hardware until recently and now I'm making great progress.

If you can afford it, you might have a better experience building your device around one of the Linux-based boards such as Raspberry Pi. Much more is written in articles and help in the RPi, and it's easier to work with as well. My product is price-sensitive so I'm re-evaluating the ESP32, especially in light of the chip shortage.

benray
Posts: 2
Joined: Tue May 04, 2021 2:44 am

Re: Reality check: can I build this product on the ESP32?

Post by benray » Mon May 10, 2021 5:40 am

This is great news. My product is price-sensitive too, so we're in a similar spot. Excited to learn more fundamentals on hardware - let's stay in touch.

BetterAutomations
Posts: 36
Joined: Mon Mar 20, 2017 10:22 pm

Re: Reality check: can I build this product on the ESP32?

Post by BetterAutomations » Mon May 10, 2021 10:26 pm

I was going with Raspberry Pi but there are a lot of extra components to make that workable, and with the chip shortage I'm switching to ESP32, which needs a PCB with almost nothing. I think I will just need a capacitor, a diode, and some connectors. That right there is ample reason to use ESP32. I can choose several modules, and in fact I'll be including space on the circuit board for many different kinds of ESP32 simply because of the chip shortage. If one cannot be sourced, I can use another. Can solder at home using the "bed of sand" surface mount soldering technique.

This gent right here worked out a method of doing OTA:
viewtopic.php?f=18&t=8433

For Firestore and MQTT use Google's code, it worked flawlessly for me:
https://github.com/GoogleCloudPlatform/ ... icropython

You have to then write some backend Google Functions to connect MQTT to Firestore via PubSub.

And for Bluetooth, here is some example code. Install the LightBlue app on your phone for debugging.
https://github.com/micropython/micropyt ... /bluetooth

I used Ionic+Angular+Capacitor+TypeScript to create my app but if I were doing it again, I probably would have gone with React Native. There's only one catch with RN: There is no way to use BLE with Expo. That makes using RN a lot harder. Ionic can do it, but there's so few people working with Ionic I struggled a lot to get help. I think I would have gone with RN without Expo had I known.

Post Reply