Skip to content

Commit

Permalink
updates
Browse files Browse the repository at this point in the history
- add native build platform
- update ui
- refactored watchface codes
  • Loading branch information
fbiego committed May 13, 2024
1 parent 150c46c commit b83ae64
Show file tree
Hide file tree
Showing 317 changed files with 25,669 additions and 3,330 deletions.
8 changes: 8 additions & 0 deletions .vscode/settings.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"files.associations": {
"*.embeddedhtml": "html",
"75_2_dial.h": "c",
"radar.h": "c",
"79_2_dial.h": "c"
}
}
49 changes: 30 additions & 19 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,21 +1,36 @@
# esp32-c3-mini
A demo Watch project for ESP32 C3 mini 240*240 touch display development board
A demo LVGL Watch project for ESP32 C3 mini 240*240 touch display development board. Can also be built natively to test the LVGL UI.

## Video

[`Demo video`](https://youtu.be/u96OkjxC0Ro)
[`Watchfaces demo`](https://youtu.be/lvRsTp9v6_k)

## Screenshot
## Screens Preview

![screens](c3-screens.png?raw=true "screens")
![Preview](preview.png?raw=true "preview")

## Screens
- Time (Time, Date, Day, Weather[Icon, Temp]) + Custom Watchfaces
- Weather (City,Icon, Temp, Update time) (1 week forecast [Day, Icon, Temp])
- Notifications (Icon, Time, Text) (List [Icon, Text] - 10 notifications)
- Notifications (Icon, Time, Text) (List [Icon, Text] - 10 notifications) (Incoming call)
- Settings (Brightness, Timeout, Battery, About)
- Control (Music Control, Find Phone, Bluetooth State)
- Control (Music Control, Find Phone, Bluetooth State) (Camera Capture)
- QR Codes

## Building

Select your build environment in platformio. Default is `emulator_64bits` native.

When building for native check that you have configured SDL according to your platform. Follow the instructions here
https://github.com/lvgl/lv_platformio?tab=readme-ov-file#install-sdl-drivers

The SDL path might be different depending on your configuration and you will need to update [`platformio.ini`](platformio.ini) accordingly

### Prebuilt Native

The prebuilt native applications have been included in the [`test folder`](test/), however you might still require SDL installed before running them.


#### Watchfaces

Expand All @@ -24,27 +39,23 @@ A demo Watch project for ESP32 C3 mini 240*240 touch display development board
| !["Analog"](src/faces/75_2_dial/watchface.png?raw=true "75_2_dial") | !["Shadow"](src/faces/34_2_dial/watchface.png?raw=true "34_2_dial") | !["Blue"](src/faces/79_2_dial/watchface.png?raw=true "79_2_dial") |
| !["Radar"](src/faces/radar/watchface.png?raw=true "radar") | !["Outline"](src/faces/116_2_dial/watchface.png?raw=true "116_2_dial") | !["Red"](src/faces/756_2_dial/watchface.png?raw=true "756_2_dial") |
| !["Tix"](src/faces/tix_resized/watchface.png?raw=true "tix_resized") | !["Pixel"](src/faces/pixel_resized/watchface.png?raw=true "pixel_resized") | !["Smart"](src/faces/smart_resized/watchface.png?raw=true "smart_resized") |
| !["Kenya"](src/faces/kenya/watchface.png?raw=true "kenya") | !["B & W"](src/faces/b_w_resized/watchface.png?raw=true "b_w_resized") | !["WFB"](src/faces/wfb_resized/watchface.png?raw=true "wfb_resized") |

Check out [`esp32-lvgl-watchface`](https://github.com/fbiego/esp32-lvgl-watchface) project to see how watchfaces are converted from binary to LVGL code. You can add more watchfaces but you will be limited by the ESP32 flash size.
In that case you can only compile your favorite watchfaces. Links to the pre-built binary watchfaces are included.
Enable them in `app_hal.h` according to your build platform.

## Chronos App
This is needed for additional functions on esp32 hardware as listed below.

Click to download
[<img src="chronos.png?raw=true" width=100 align=left>](https://fbiego.com/chronos/app?id=c3-mini)
<br><br><br><br>

### App functions
- Sync time to device
- Send notifications to device
- Send weather info to device
- Change background & font color of the time screen, see below

> Watch Tab >> Custom watchface >> Settings
![config](config.png?raw=true "config")
### App functions (ESP32)
- Sync time
- Send notifications and call alerts
- Sync weather info
- Sync QR Links (Incomplete)
- Music control, find phone & Camera

| Button 1 | Button 2 | Color Selector | Result action |
| --- | --- | --- | --- |
| Style 1 | Top | Choose color | Change hour color (default face) |
| Style 1 | Center | Choose color | Change minute color (default face) |
| Style 1 | Bottom | Choose color | Change other text color (default face) |
Loading

0 comments on commit b83ae64

Please sign in to comment.