Fan Control - aaronwmorris/indi-allsky GitHub Wiki

Overview

The fan controller support in indi-allsky is intended to use the GPIO or PWM pins from a SBC such as a Raspberry PI to drive either a MOSFET or relay to manage the fan state.

The default functionality is to activate the fan during the day and deactivate at night, although it is possible to enable night time operation.

It is also possible to control the fan using temperature thresholds if you have an appropriate temperature sensor.

GPIO Permissions

If you receive a PermissionDenied exception when accessing GPIO pins

https://github.com/aaronwmorris/indi-allsky/wiki/GPIO-Permissions

Fan - Standard

This type of fan only supports two modes: ON and OFF. Any duty cycle applied to the fan will set it to FULL power. This type may use either a relay or MOSFET driver.

Fan - PWM

The PWM fan may be set to different power levels by utilizing the hardware PWM support from the SBC pins. This type requires the use of a MOSFET driver. A relay will not work.

WARNING

The pins from a SBC cannot be used to directly drive a fan. Trying to do so WILL damage your system.

Raspberry Pi 5

PWM support is not quite working yet.

source virtualenv/indi-allsky/bin/activate

pip remove RPi.GPIO

pip install rpi.lgpio

System virtualenv

If your virtualenv uses system python modules (like with indi_pylibcamera), it may be necessary to remove certain system python packages. This is not normally required.

sudo apt-get remove python3-rpi.gpio python3-lgpio python3-gpiozero python3-pigpio