Skip to content

dawigit/picoclock

Repository files navigation

picoclock

WAVESHARE RP2040-LCD-1.28 / WAVESHARE RP2040-TOUCH-LCD-1.28

s_flag s_berry s_ru s_ua

s_qdtm s_rotozcy s_rotozg s_rotozr s_bigfont s_configicon_new s_spinmin s_spindotw s_spindotw_cn

https://github.com/dawigit/picoclock/tree/main/img/ancestral#readme old images

config (clock wise)

  • conf_exit exit config
  • conf_background change background
  • conf_rotozoom enable rotozoom
  • conf_rotate rotate background [earth, eye]
  • conf_save save config to flash
  • conf_handstyle change clock hand style [normal, alpha, textured]
  • conf_clock change clock hand texture
  • conf_bender dis-/enable second bender

uscn1 trde1

Touch control (with RP2040-TOUCH-LCD-1.28)

The button is simply plugged into GND and GP22 (h2)

With a button, attached the rp2040-lcd is controlled with the gyroscope

The images/fonts are in the ./img folder. The file 'img2data.md' contains shell scripts for converting image data and fonts into header files.

Problems, bugs, tbd:

  • battery display has to be adjusted depending on battery type

To flash the image

sudo picotool load ./build/main.uf2 -x --bus 1 --address XX

To flash the image (touch)

sudo picotool load ./uf2/rp2040-tlcd-128-watch.uf2 -x --bus 1 --address XX

Find the '--address' with:

picotool info

Building the image

cd picoclock;mkdir build;cd build;cmake ..;make

commands:

  • 'circle 1' to enable dynamic circles [0 to disable]
  • and so on… the (boolean) values you can change between 0/1 are:
  • 'sensors' [show/hide sensor text]
  • 'gyro' [show/hide gyrocross]
  • 'bender' [second pointer elastic]
  • 'smooth' [smoother/1frame delay for movement]
  • 'insomnia' [no sleep/ screen always on]
  • 'circle' [gyroscope changes circle, looks crappy atm]
  • 'high' [highpointer: pointer above text]
  • 'alpha' [alpha pointers]
  • 'clock' [shows/hides analog clock]

non boolean values

  • 'theme' [set theme (0-3)]
  • 'light' [set brightness (0-100)]
  • 'hour' [set hour (0-23]
  • 'min' [set minutes (0-59)]
  • 'sec' [set seconds (0-59)]
  • 'dotw' [set day of the week (0-6, 0=Sunday, 1=Monday, 6=Saturday)]
  • 'year' [set year (0-9999)]
  • 'mon' [set month (1-12)]
  • 'day' [set day (1-31)]
  • 'spin' [set degrees (-359,0,359) +/- when 'rota' is eanbled]
  • 'deg' [set the degree when (0-359) 'rota' is enabled]
  • 'editpos' [set editposition (0-8)]

float values

  • 'fspin' [set fspin (+/-0.001) for a very slow rotation]

no args

  • 'cir0' [dynamic circle off]
  • 'cir1' [dynamic circle on]
  • 'batmax' [show bat max value (stdio)]
  • 'batmin' [show bat min value]
  • 'save' [save data]
  • 'stat' [show status (stdio)]
  • 'roto' [gfx_mode = rotozoom]
  • 'rota' [gfx_mode = rotating background for dynamic backgrounds]
  • 'norm' [gfx_mode = normal gfx, no rotation, no rotozoom]

additional information

About

RP2040-LCD-1.28 / RP2040-TOUCH-LCD-1.28 picoclock

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages