ExpertEnergy and Automation
Dual-Sensor Solar Tracker
Compare two light sensors and move a small panel mount toward the brighter side; use it as a low-voltage demonstrator.
Parts from the database
- OPT3001 × 2Left/right ambient-light readings
- PCA9685PW × 1Servo PWM driver on a breakout
- Raspberry-Pi-Pico × 1Controller
Other supplies
- two OPT3001 breakout boards with configurable I²C addressesCommon build supply
- PCA9685 servo-driver breakoutCommon build supply
- one small hobby servoCommon build supply
- small lightweight panel or cardboard mockupCommon build supply
- separate 5–6 V servo supplyCommon build supply
- Pico boardCommon build supply
Amazon links may be affiliate links. As an Amazon Associate, Electronics Hobby Hub earns from qualifying purchases.
Connections
- Connect the two sensor breakouts to 3V3 I²C and assign distinct addresses using documented address straps.
- Connect PCA9685 logic to Pico 3V3/I²C; power its servo rail from a separate supply and share ground.
- Mount sensors on either side of a small shade fin so each sees a different amount of light.
- Attach the servo to a lightweight test platform with mechanical travel stops.
Build steps
- Read both sensors independently and confirm their values respond to shading each side.
- Center the servo and test safe endpoints with no panel attached.
- Move toward the brighter reading only when the difference exceeds a deadband; pause between corrections.
- Test outdoors with a lightweight mock panel, logging sensor difference and servo angle before adding a real small panel.
Software and firmware setup
Firmware is required, but a complete sensor/servo sketch is not included yet. Confirm both OPT3001 sensors use distinct I2C addresses, then test the PCA9685 with one unloaded servo. Combine readings with a deadband and slow update interval; calibrate safe endpoints before attaching a lightweight panel.
Test your build
The mount should move toward the brighter side and settle near the balance point rather than continuously hunting.
Troubleshooting
- If both sensors report the same value, check address straps and I²C scan results.
- If the servo hunts, increase the deadband and add a slower update interval.
- If the servo supply dips, reduce mechanical load and use an adequately rated supply.
Safety and limitations
Keep the project to a small low-voltage panel demonstrator. Do not connect it to building wiring, roof installations, or high-current energy storage.
Manufacturer and platform documentation
Community Notes for This Project
These are unverified visitor contributions, separate from the build guide and manufacturer specifications. Verify technical advice against the linked datasheets before relying on it.
Set up the comments service to load community notes.