How:
Designed the control system using the parts listed below:
Arduino Nano
Real Time Clock (DS3231)
Stepper Motor (28BYJ-48)
Motor Driver (ULN2003)
Adafruit 3.7V 2500mAh LiPo Battery
Pololu 5V Step-Up Voltage Regulator (U3V16F5)
Built and tested the circuit on breadboard, then moved toward a soldered final version.
Programmed the Arduino to:
Move blinds up/down slowly with button presses
Stop when the opposite button is pressed.
Automatically open to a preset height in the morning and close at night.
Modeled the gear and mounting setup in CAD to ensure proper fit and strength.
Calculated torque and gear ratios to confirm the motor could handle the blinds’ weight.
Tested runtime and battery life to estimate practical daily operation.
Takeaways Thus Far:
The stepper motor can spin the beaded chain, but it lacks the torque to actually raise or lower the blinds.
I made a mistake during the torque calculations where I multiplied the internal gear ratio to the torque that already accounted for it
Upgrading the motor will also require reworking the circuit to handle different voltage and current requirements.
Wire management inside the housing was more challenging than expected. The loose wires for the motor, RTC module, driver, and battery took up more space than anticipated.
To focus on functionality first, I soldered the DS3231 directly to the board and left it exposed, with plans to revisit a cleaner, compact layout later.
Initially mounted the proto board on 3D-printed posts designed to fit through its holes for support, but both posts snapped even after thickening and adding fillets.
Next Steps:
Upgrade motor to a NEMA 17 to provide sufficient torque for raising and lowering blinds.
Redesign housing and mounting to fit the larger motor.
Update circuit design to support new motor power requirements.
Redesign the housing with cutouts for a snug protoboard fit and integrate heat-set inserts to allow the board to be screwed in securely.