## Links ### Processor - [Atmega 32U4 datasheet](https://ww1.microchip.com/downloads/en/devicedoc/atmel-7766-8-bit-avr-atmega16u4-32u4_datasheet.pdf) - [Atmel SAM3X/3A datasheet](https://copperhilltech.com/content/Atmel-SAM3X-Datasheet.pdf) - [Atmega 32U4 AVR035: Efficient C Coding for AVR](https://ww1.microchip.com/downloads/en/Appnotes/doc1497.pdf) - [Arduino Due timer/counter overview](https://github.com/ivanseidel/DueTimer/blob/master/TimerCounter.md) - [Arduino Due timers](https://ko7m.blogspot.com/2015/01/arduino-due-timers-part-1.html?m=1) ### ELM327 - [AT commands](https://www.sparkfun.com/datasheets/Widgets/ELM327_AT_Commands.pdf) - [ELMduino project](https://github.com/PowerBroker2/ELMduino) - [Connect ELM327 with HC05](https://www.instructables.com/Arduino-OBD2-ELM327-I2C-LCD-HC05-Bluetooth/) - [Datasheet](https://cdn.sparkfun.com/assets/learn_tutorials/8/3/ELM327DS.pdf) - [OBD2 PIDs](https://en.wikipedia.org/wiki/OBD-II_PIDs) - [3D print housing with power switch](https://www.thingiverse.com/thing:1464425) ### FSC-BT836B - [Datasheet](https://www.feasycom.com/datasheet/fsc-bt836b.pdf) - [Programming user guide v3.3](https://d1p0junyotb70z.cloudfront.net/wp-content/uploads/2022/03/1648629572-FSC_BT8XX_Programming_User_Guide_V3_3.pdf) - [FSC-DB0004 user manual](https://www.feasycom.com/wp-content/uploads/2022/04/1649387976-FSC_DB004_Development_Board_User_Manual_v1_2.pdf) - [FSC-DB0004 schematic and assembly](https://www.feasycom.com/wp-content/uploads/2022/04/1649387973-FSC_DB004_V1_1_Sch_and_Assembly.pdf) ### HC-05 - [Datasheet](https://components101.com/sites/default/files/component_datasheet/HC-05%20Datasheet.pdf) - [How to configure](https://lastminuteengineers.com/hc05-at-commands-tutorial/) - [User Instruction manual](https://www.rcscomponents.kiev.ua/datasheets/hc_hc-05-user-instructions-bluetooth.pdf) - [Interfacing HC05 with Arduino](https://lastminuteengineers.com/hc05-bluetooth-arduino-tutorial/) ### 3.5 inch TFT display - [Product link](https://www.tinytronics.nl/shop/en/displays/tft/3.5-inch-tft-display-320*480-pixels-mega-compatible-ili9486) - [UTFT library](http://www.rinkydinkelectronics.com/library.php?id=51) - [SdFat library](https://github.com/greiman/SdFat) ## Design ### INIT display ![init design](img/design_init_display.png) red = animation, yellow is order of appearance. CPU RAM and DISPLAY values appear after each other - states for init display -> states for displaying each part separately, after everything is on screen, state for updating everything separate state machine? STATES: - drop down title - display each letter of initializing... - display counter values and device info - display bluetooth state - update everything ### transition to main display - Wipe away contents on screen (black rectangle that spans the entire screen and increases in width) - display "Welcome Sem" - Add new state for this - show main display