It’s been quite a while since I’ve seriously worked on or written anything about IdeasX. The project has been placed on hold for a few months now. I’ve recently graduated school and I’ve been working on a few things in my personal life. I’ve decided to dedicate a few hours each week to the project to see where it will go. My time is limited thou as I need to spend slightly less than 24×7 hours behind a laptop screen.
I’ve causally and not so casually made a few decisions during my hiatus:
- I would like to switch the IdeasX embedded devices to an RTOS platform. MCU are going to continue to embedded multiple processors and radios. I’m confident all future embedded devices will be running a scheduler / RTOS (for better or worst). Porting to an RTOS will simplify code development, and teach me a few new skills. This way I can keep up with my jack of all trades master of none.
- If I’m going to be spending only a few hours a week doing development, I need to be developing on a platform that allows me to actually get things done. A polished development environment which will give me debugging capabilities and quality code.
- The ESP8266 is not exactly the ideal solution to this. There is a FreeRTOS SDK, but the debugging features of the device are not well documented.
- I’ve managed to develop a sketchy makefile / shell script setup which permits me to do basic debugging with a GDBstub and compile with FreeRTOS. I still need to develop / port a MQTT library to RTOS. Unfortunately, not all the SDK commands for the ESP8266 are available in the FreeRTOS SDK. Porting and testing is also … really really un-fun.
- I’ve been considering using a part from the TI SimpleLink line: ideally, the CC3220. The SimpleLink line is completely code portable (in theory), and I’m required to learn it for work anyway. The sad bit is the chip costs more than the entire ESP8266 with a flash chip, all the RF components, and a shield.