Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/barrettotte/goto-bed

Making my melatonin bottle vibrate so I know its time to go to bed.
https://github.com/barrettotte/goto-bed

arduino esp8266 fusion-360 kicad

Last synced: 7 days ago
JSON representation

Making my melatonin bottle vibrate so I know its time to go to bed.

Awesome Lists containing this project

README

        

# goto-bed
Making my melatonin bottle vibrate so I know its time to go to bed.

I just wanted a little project to work on to learn Fusion 360 and a bit of KiCad.

## General Concept
- Send NTP request to get current time and resync every 5 minutes
- If current time equals alarm time, trigger vibration motors
- Press function button to acknowledge alarm, stop vibration motors, and reset state
- Take melatonin, get tired, and go to bed at a reasonable time (ideally)

### Setting the Alarm Time
- Press function button to transition to edit state
- Use potentiometer to set alarm time
- Press function button again to reset back to normal state

## Images



Basic schematic




Breadboard prototype




Badly soldered circuit (top)




Badly soldered circuit (bottom)

## Learned
This stupid project definitely made me learn some things.

- Analog read from potentiometer
- Fetch current time using UDP packet to NTP server
- Design a 3D printable enclosure with Fusion 360
- Make a schematic in KiCad with Eeschema

## Cut From Project
I wanted to do a couple more things, but decided to cut it short due to time.

- Power the circuit with rechargable battery (also redesign for low power usage)
- Design and order custom PCB
- Smaller enclosure => my enclosure design is disgustingly large
- Power switch

## References
- ESP8266_SSD1306 - https://github.com/ThingPulse/esp8266-oled-ssd1306
- NTP packet format - https://tools.ietf.org/html/rfc5905#section-7.3
- KiCad Symbol Libraries
- [kicad-ESP8266](https://github.com/jdunmire/kicad-ESP8266)
- [KiCad-SSD1306-128x64](https://github.com/pforrmi/KiCad-SSD1306-128x64)