X-Ryl669 a26f3569da Fix warnings 4 lat temu
..
bin 634b101c64 open sourcing oboo software packages repo 4 lat temu
device 634b101c64 open sourcing oboo software packages repo 4 lat temu
libraries 634b101c64 open sourcing oboo software packages repo 4 lat temu
scripts 634b101c64 open sourcing oboo software packages repo 4 lat temu
tools 634b101c64 open sourcing oboo software packages repo 4 lat temu
Makefile 634b101c64 open sourcing oboo software packages repo 4 lat temu
README.md 634b101c64 open sourcing oboo software packages repo 4 lat temu
battery.h 634b101c64 open sourcing oboo software packages repo 4 lat temu
clock.h 634b101c64 open sourcing oboo software packages repo 4 lat temu
config.h 634b101c64 open sourcing oboo software packages repo 4 lat temu
display.h 634b101c64 open sourcing oboo software packages repo 4 lat temu
firmware.ino 634b101c64 open sourcing oboo software packages repo 4 lat temu
gesture.h a26f3569da Fix warnings 4 lat temu
lightbar.h 634b101c64 open sourcing oboo software packages repo 4 lat temu
protocol.h 634b101c64 open sourcing oboo software packages repo 4 lat temu
test.sh 634b101c64 open sourcing oboo software packages repo 4 lat temu
touch.h a26f3569da Fix warnings 4 lat temu
version 634b101c64 open sourcing oboo software packages repo 4 lat temu

README.md

Oboo Smart Clock MCU Firmware

Firmware for the ATmega micro controller on the Oboo Smart Clock. Interacts with the following:

  • RTC
  • 7-Segment Display (via MAX7219)
  • Gesture & Brightness Sensor
  • Touch Input
  • WS2818 Addressable LEDs
  • Battery Level Monitoring

Build Instructions

To release:

make clean
make
cp build-uno/firmware.hex bin/atmega328p/

Also need to update version file to hold latest version number. Device uses this to check for firmware updates.

TODO List

  • Switch to using generic MCU-to-Omega serial communication function (sendCommand in protocol.h)
  • Implement Touch detection
    • Interrupt servicing routine, reading touch values, communication protocol
  • Battery Level Monitoring
    • Implement code
    • Test with new hardware
  • Debug and improve Up/Down gesture detection algorithm
  • Optimize binary size for smaller mcu