Updated the status of the work in the readme file

This commit is contained in:
Anatole SCHRAMM 2023-01-26 13:25:58 +01:00
parent 8f26466cc4
commit 55fc892ddb

View File

@ -31,13 +31,13 @@ Possible choices :
* HMC5883L <-- After reading some comparison articles between the HMC5883L and QMC5883L and the datasheets, the later seems better in term of perfomances.
* QMC5883L <-- **SELECTED** i2c addr : 0x0D 7 bit address, better soldering footprint
* LSM303DLHC
* BMM150 <-- Package with balls, hard to handle
* BMM150 <-- Package with balls, hard to solder
* An air pressure/temperature sensor (to display the altitude for example)
* BMP280 <-- **SELECTED** i2c addr : 0x76 or 0x77
## Actuators :
* A vibration motor to notify events to the user.
* A piezo buzzer.
* ~~A piezo buzzer~~ : dropped, maybe in next version.
## Power source :
* 1 cell lipo 450 mAh battery.
@ -47,6 +47,10 @@ Possible choices :
* [Screen with touch](https://fr.aliexpress.com/item/1005004887834918.html?spm=a2g0o.order_list.order_list_main.22.340a5e5bX8WCb0&gatewayAdapt=glo2fra) : GC9A01 with touch panel. It uses the required 4 line Serial Interface.
* Touch element i2c addr : 0x15, CST816D I2C touch driver.
## Programming and charging :
* The smart watch programming and charging is done through the same USB port
using a magnetic 4 pin plug.
## MCU Pin assignement table :
| Pin Number | Pin Name | Type | Function | Pull UP/DOWN| Connected to | Comment |
@ -93,14 +97,20 @@ Possible choices :
* GC9A01 in 4-line serial mode (8 bits) with D/C pin
* Supported LCD touch screen :
* CST816D capacitive touch ic.
* Three screens designed and working with LVGL :
* 1 watch face based on a casio watch.
* 1 menu list screen with icons.
* 1 setting screen with basic settings (date and time + display brightness) (work in progress).
* Three screens designed and working with LVGL :
* 1 watch face based on a casio watch.
* 1 menu list screen with icons.
* 1 setting screen with basic settings (date and time + display brightness) (work in progress).
* Debug UART on PB_2 (output only)
* Wake up interrupts handling :
* Wrist tilt MCU wake up working
* LCD touch wake up
* Sensors/Actuators :
* QMC5883L driver working
* BMA456 driver working
* BMP280 driver working (temperature + pressure)
* Battery voltage sense using ADC is working
* Vibration motor controlled by PWM working
## To do :
* Write I2C drivers for the :
@ -112,15 +122,15 @@ Possible choices :
* [X] QMC5883L
* [X] Write the init sequence for the GC9A01 LCD driver.
* [X] Make LCD display + touch work.
* [ ] Design and test battery voltage sensing circuit -> voltage divider bridge because ADC input can sense 2.5V Max.
* [X] Design and test battery voltage sensing circuit -> voltage divider bridge because ADC input can sense 2.5V Max.
* [ ] Finish to design the settings page.
* [ ] Test the charge circuit.
* [ ] Implement a good algorithm to handle adaptiv MCU clock to save power
* [X] Test the charge circuit.
* [X] Handle watch auto sleep feature with wake up on screen touch + wrist tilt (POC could be improved).
* Design and test the :
* [ ] vibration motor circuit
* [ ] piezo buzzer circuit ?
* [ ] Draw the schematic.
* [ ] Design the PCB.
* [X] vibration motor circuit
* [X] Draw the schematic, the first revision of the schematic is available [here](src/branch/master/design/Kicad/W800_Smart_Watch/W800_Smart_Watch.pdf).
* [ ] Design the PCB (routing, placement etc..) on a 2 layer PCB (might need 4 though) - In progress.
## Achieved power consumption recap:
(Need to work on sleep current :-( )
@ -128,5 +138,5 @@ Possible choices :
|--------------------------|--------------|---------------------------------------|
|Active (40Mhz clk)<br>(No BLE / No WiFi) |~52 mA | ~8 hour |
|Active (240Mhz clk)<br>(No BLE / No WiFi) |~72 mA | ~6 hour |
|Sleep |~4.5 mA | ~4 days and 4 hours |
|Standby |TODO |TODO |
|Sleep |~4.5 mA |~4 days and 4 hours |
|Standby |~1.8 mA |~10 days and 15 hours |