An ESP8266 based blind controller, to control (for example) a window blind for a skylight. I recently replaced this piece of custom coding with esphome and a cover-endstops configuration. See here for more information on that. Below is the original arduino project.
- Control
- Open blind until fully opened
- Close blind until fully closed
- Stop open/close action by clicking close/open once
- Timeout on close/open actions
- Webinterface
- Control
- open
- close
- stop
- Configuration
- Detailed Device state
- Control
- MQTT integration
- publish state (UNKNOWN/OPEN/CLOSING/CLOSED/OPENING)
- receive commands (open/close/stop)
- LWT-support (Online/Offline)
- Syslog & serial logging
- 2 * IKEA plisse curtain (ikea)
- ESP8266 / WeMos D1 mini (banggood)
- H Bridge motor driver (L298n, banggood)
- Micro switches (detect open/closed position)
- 3D printer timing belt (for example: this )
- 12V DC Motor with 5mm shaft (dx.com)
- 12V DC power adapter
- various bits and pieces (bolts, screws, wood, fishing wire)
ESP8266:
- D1/GPIO5 --> Closed switch
- D7/GPIO13 --> Open switch
- D3/GPIO0 --> L298N IN1
- D4/GPIO2 --> L298N IN2
- D5/GPIO14 --> do_open switch
- D6/GPIO12 --> do_close switch
- 5V --> L298N 5V out
- 0V --> L298N 0V
Switches: All switches connect to ground.
L298N:
- IN1 --> ESP D3
- IN2 --> ESP D4
- ENA --> bridged
- 12V --> Poweradapter
- 5V --> ESP 5V
- 0V --> ESP 0V
- M1 --> to dc motor
- M2 --> to dc motor
Switches:
- Closed: switch closed when blind is fully closed (outputs 0V when switch is closed)
- Open: switch closed when blind is fully open (outputs 0V when switch is closed)
- do_open: switch to open the blind (0V when switch is momentarily closed)
- do_close: switch to close the blind (0V when switch is momentarily closed)