Wednesday, May 15, 2019

Frustrated with Complexity

I've been doing a bit of ESP32 development at work (and some at home) and I've hit a wall.  When things fail, they fail bad. I can't say that I understand the xtensa toolchain (I do know that it takes several minutes to build an ESP32 binary on my laptop: FreeRTOS and my app).

I've been using LuaRTOS and am generally happy with it (a few crashes due to not quite well debugged libraries), but my problem is....

The more and more I use other people's code, the less I can say I know what is going on inside of my devices.  I am building (critical) house monitoring devices (including one that controls a pump via H-Bridge and PWM).  Not exactly real time constraints, but certainly 24/7 reliability. I need to know that this system can be trusted.

Okay, okay... so back to Forth.  Looking into replacing the ESP32 (w/ LuaRTOS) Copious Free Time project with a SleepyBee (w/ MyForth) and an ESP8266 (in AT command mode) for Wi-Fi connectivity.

Why?  Because I'm pedantic that way.  Close to the metal, baby!

6 comments:

  1. "Close to the metal, baby!" -- Right on!

    ReplyDelete
  2. I can totally relate to this, in fact I've just finished some personal rants on my documentation site about the critical importance of understanding the hardware and the library myth :

    https://mecrisp-stellaris-folkdoc.sourceforge.io/rants.html#reinventing-the-wheel

    ReplyDelete
  3. Yeah, couldn't agree more about the importance of understanding the hardware, and how the software works.

    ReplyDelete
  4. This comment has been removed by the author.

    ReplyDelete
  5. I find the build process a bit of a black box. cmake and other bits and bobs are required to make it work. It would be better if one could build projects in a much more "vanilla" way.

    ReplyDelete