127 lines
2.9 KiB
Markdown
127 lines
2.9 KiB
Markdown
# ButtonCtl
|
|
|
|

|
|
|
|
### Dependencies
|
|
|
|
- RPi python3-rpi.gpio
|
|
|
|
```sh
|
|
sudo apt install python3-rpi-gpio
|
|
```
|
|
|
|
- OpenSSH client
|
|
|
|
```sh
|
|
sudo apt install openssh
|
|
```
|
|
|
|
- circuitpython libraries for neopixel
|
|
|
|
```sh
|
|
pip3 install adafruit-circuitpython-neopixel
|
|
```
|
|
|
|
- SPI
|
|
Enable SPI in raspi bootloader for GPIO10
|
|
|
|
### Install
|
|
|
|
```sh
|
|
cd buttonctl/1og
|
|
./service.sh # create systemd .service file
|
|
sudo systemctl enable --now buttond # start and autostart at boot
|
|
```
|
|
|
|
### Wiring
|
|
|
|
- pin 23: left/aerie button input (pull-down)
|
|
- pin 24: center button input (pull-down)
|
|
- pin 22: right/cellar button input (pull-down)
|
|
- pin 12: neopixel data
|
|
- pin 4: (pull-down)
|
|
|
|
#### 6-pin socket
|
|
|
|
**GPIO**
|
|
|
|
| | Notch | |
|
|
|------|-------|----|
|
|
| 23 | 24 | 12 |
|
|
| 3.3V | GND | 22 |
|
|
|
|
**KiCAD**
|
|
|
|
| | Notch | |
|
|
|---|-------|---|
|
|
| 5 | 3 | 1 |
|
|
| 6 | 4 | 2 |
|
|
|
|
**UV Klemme**
|
|
|
|
| | Notch | |
|
|
|------------------------------------------------------------|---------------------------------------------------------------|-----------------------------------------------------------|
|
|
| <span style="background: green; color: white;">grün</span> | <span style="background: brown; color: white;">braun</span> | <span style="background: blue; color: white;">blau</span> |
|
|
| <span style="background: red;">rot</span> | <span style="background: black; color: white;">schwarz</span> | <span style="background: yellow">gelb</span> |
|
|
|
|

|
|
|
|
- led strip:
|
|
|
|
```
|
|
(1-12) (13-24) (25-36)
|
|
AERIE KELLER
|
|
|
|
(counter-clockwise, top is first)
|
|
```
|
|
|
|
## Usage
|
|
|
|
### Open Door
|
|
|
|
<span style="color:red">◼</span>
|
|
<span style="color:black">◼</span>
|
|
<span style="color:red">◼</span>
|
|
→ Left Button
|
|
|
|
<span style="color:black">◼</span>
|
|
<span style="color:green">◼</span>
|
|
<span style="color:red">◼</span>
|
|
→ Middle Button
|
|
|
|
<span style="color:red">◼</span>
|
|
<span style="color:black">◼</span>
|
|
<span style="color:red">◼</span>
|
|
→ Short Delay
|
|
|
|
<span style="color:green">◼</span>
|
|
<span style="color:black">◼</span>
|
|
<span style="color:red">◼</span>
|
|
|
|
### Abort
|
|
|
|
<span style="color:red">◼</span>
|
|
<span style="color:black">◼</span>
|
|
<span style="color:red">◼</span>
|
|
→ Left Button
|
|
|
|
<span style="color:black">◼</span>
|
|
<span style="color:green">◼</span>
|
|
<span style="color:red">◼</span>
|
|
→ Left Button
|
|
|
|
<span style="color:red">◼</span>
|
|
<span style="color:black">◼</span>
|
|
<span style="color:red">◼</span>
|
|
|
|
### No-Op
|
|
|
|
<span style="color:red">◼</span>
|
|
<span style="color:black">◼</span>
|
|
<span style="color:red">◼</span>
|
|
→ Middle Button
|
|
|
|
<span style="color:red">◼</span>
|
|
<span style="color:black">◼</span>
|
|
<span style="color:red">◼</span>
|