Skip to content

bbokser/persuasive_waker

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

114 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

persuasive_waker

alt text

Persuasive Waker is an open source hardware alarm clock that can't be snoozed or turned off. The alarm is deactivated via a remote key fob, which should be placed as far from the user's bed as possible. E.g. in the bathroom.

The KiCad design files are located in the hw folder.

The STEP assembly is located here.

If you just want STLs for printing, they're here.

BoM

Item QTY Source
Case 1 3D Print
Screen Holder 1 3D Print
Spacer 2 3D Print
M2.5x0.45-12-SHCS-SS304 4
M2.5x0.45-6-SHCS-SS304 4
M2.5x0.45-4-FHS-SS304 2
PRESSNUT-M2.5x0.45-SS304 2 Mouser
Battery Holder 1 Mouser
THRIN-M2.5X0.45-HS-PL-4L3.5D-BR 8 Amazon
E-Paper Display 1 AliExpress
Key Fob 1 AliExpress
Alarm PCB 1 Custom PCBA Order
Front Plate 1 Custom PCB Order
Rear Plate 1 Custom PCB Order

Mechanical Build

  1. Print the case, screen holder, and two spacers.
  2. Install the heat-set inserts in the case (x8).
  3. Insert the PCB from the front.
  4. Plug the E-paper display into the FPC connector.
  5. Put the screen holder and spacers into position and then fold the display down onto it. Make sure the display is properly nestled in.
  6. Holding the display down, put the front cover on.
  7. Screw the front cover on with the M2.5x12 screws.
  8. Using an arbor press, press the press-fit nuts into the rear cover.
  9. Screw the battery holder onto the rear cover using the flat head screws and loctite. Insert AA batteries.
  10. Plug the battery holder into the power connector on the back of the PCB.
  11. Screw the rear cover on using the M2.5x6 screws.

Firmware Setup

  1. Install CircuitPython on your Pico by following this guide. The last version tested with this device is 9.2.6.

  2. Install circup on your computer.

  3. Run the following commands to install all necessary libraries.

    circup bundle-add adafruit/circuitpython-fonts
    circup install adafruit_sht4x adafruit_ssd1680 adafruit_display_text adafruit_ds3231 adafruit_datetime adafruit_display_shapes font_ostrich_sans_black_24 font_ostrich_sans_black_60
    
  4. Delete code.py from the Pico's storage.

  5. Clone this repo onto your computer and copy+paste everything in the src folder to the Pico's storage.

  6. The alarm clock should be functioning now.

User Manual

See here.

Upgrading from v3.0 to v3.1

  1. Replace the old src files with the new ones on the v3.1 branch.

  2. Install circup and run the following.

    circup bundle-add adafruit/circuitpython-fonts
    circup uninstall font_ostrich_sans_black_30 font_ostrich_sans_black_72
    circup install font_ostrich_sans_black_24 font_ostrich_sans_black_60
    circup update
    

    Alternatively, you can download the requirements.txt and run the following:

    circup install -r /path/to/requirements.txt
    

About

An open source hardware alarm clock that can't be snoozed or turned off.

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors