# IdeasX Module Firmware Repository (v0.3.X) This repository holds the firmware for first IdeasX Encoder labeled the module. The module is a portable battery powered ESP8266 based device which contains the following hardware: * 700mAh re-chargeable battery * 80MHz 32-bit processor + Wi-Fi radio * Integrated battery charger * Battery gas gauge * 6-axis IMU (accelerometer and gyroscope) with integrated 8kB FIFO * Barometer * USB to UART converter for programming / debugging * RGB status LED * 2 3.5mm mono audio jack for use with industry standard switches / buttons ## Hardware Design The schematics and PCB were designed in KiCad. I'm currently working on cleaning up the files / integrating them into a Git repo so they can be uploaded on GitHub. (Bothering me will likely accelerate this.) ## Firmware Specifics The firmware is based on tuanpm's MQTT repository (thanks man!). It's been heavily modified to suit the requirements of IdeasX. The esp-open-sdk is used to build the firmware. The latest version of the SDK is always used. You can learn more about IdeasX, Encoders, and the module [here](https://www.curiousmuch.org/ideasx). ## Implementation Roadmap 1. Develop flash interface to store / restore settings from flash (doesn't need to support OTA) 2. Develop IdeasX interface ## Werid Issues 1. Make sure LSM6DS3 is properly setting the interrupt pin such that it will permit the SWA to still trigger an interrupt.