Skip to content
NachtRave edited this page Sep 3, 2026 · 6 revisions

Helioduino Wiki

Helioduino is a configurable automation controller for solar energy-harvesting systems built around Arduino-compatible microcontrollers. Its main use is single-axis and dual-axis tracking, with support for reflecting panels and heliostat-style systems. The current version is Simple-SolarTracker-Arduino v0.7.2.0.

The controller can run completely offline. An RTC and a known installation location are enough for calculated solar tracking. GPS can supply location when fitted. WiFi, Ethernet, MQTT, and remote UI access are optional.

Helioduino supports two broad ways to orient a panel:

  • LDR balancing, which compares opposing light sensors
  • Calculated tracking, which determines the sun's position from time and location

It also supports reflecting panels that track the sun while aiming the reflected light toward another direction.

Main Pages

  • Controller Overview - System architecture, offline operation, configuration, and main control flow
  • Objects & Data - Object identity, attachments, linkages, serialization, revisions, and calibration
  • Actuators - Relays, motors, variable outputs, travel, limit triggers, and actuator authorization
  • Sensors - Binary, analog, digital, DHT, position, light, power, temperature, and environmental measurements
  • Panels - LDR balancing, calculated tracking, reflecting panels, coordinates, offsets, and panel state
  • Rails - Simple and regulated power-capacity control
  • Triggers - Measurement thresholds, ranges, de-trigger tolerance, and delay
  • Drivers & Scheduling - Absolute and incremental drivers plus the daily tracking process
  • Measurements & Publishing - Measurement objects, units, logging, CSV output, and optional MQTT
  • Extra Goodies Supplied - Examples, host tests, DataWriter, UI options, and support material

The Three Layers of Motion

One of the most useful ways to understand Helioduino is to separate three jobs.

Actuators

Actuators directly control hardware.

A relay motor can energize a motor forward or reverse. A variable actuator can produce a proportional output.

Drivers

Drivers turn a desired position into one or more coordinated actuator requests.

An absolute driver is suited to position-commanded hardware such as a normal positional servo.

An incremental driver is suited to continuous motors or actuators that need to move until measured position reaches the target.

Scheduler

The scheduler decides what the panel should be doing as the day changes.

The current tracking sequence is:

Init → Warm → Uncover → Clean → Track → Cover

Keeping these responsibilities separate lets Helioduino use different mechanical systems without rewriting the astronomy and daily scheduling logic.

Offline Solar Tracking

Calculated tracking uses local time and location with SolarCalculator.

No web API is needed to calculate the daily solar path.

This is especially useful for remote energy systems where losing an Internet connection should not stop the panel from tracking the sun.

Mechanical Safety

Solar trackers can move large structures and develop substantial forces in wind.

Software limit checks and storm logic are useful, but a real tracker should also use mechanical stops, correctly rated actuators, appropriate structure, weather-resistant wiring, electrical protection, and fail-safe behavior suitable for the panel size and site.

Brought to you by the generous support of our Patreons. Please consider a subscription if you find this software useful.

Clone this wiki locally