Firmware for v0.3.X IdeasX module.

curiousmuch 514d459800 reverted ideasx_interface...no idea how this fixed anything 6 years ago
driver d1a7fdde4c Added UART interface. 6 years ago
gdbstub 542f63e5b4 init commit 6 years ago
hal 3d6f5f0459 make changes, but something is horribly broken and I'm a little scared 6 years ago
include 514d459800 reverted ideasx_interface...no idea how this fixed anything 6 years ago
interface 514d459800 reverted ideasx_interface...no idea how this fixed anything 6 years ago
log 542f63e5b4 init commit 6 years ago
mqtt 7682554a0e further developed ideasX interface 6 years ago
user 514d459800 reverted ideasx_interface...no idea how this fixed anything 6 years ago
util 2c996290a3 I've been a little busy 6 years ago
.gitignore 593e76e581 updated .gitignore 6 years ago
Makefile 97871eefb3 IMU doesn't clear interrupt source mask on reset. I needed to manually clear it. I also wrote a lot of code for the ideasX interface 6 years ago
README.md 7682554a0e further developed ideasX interface 6 years ago
encoder-operation.xml c642ba865d Update encoder-operation.xml 6 years ago

README.md

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.

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.