Skip to content

owatte/rlieh-pwm

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

39 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RLIEH PWM

This module is intended to provide an interface to manage PWM on RLIEH systems.

Rlieh-pwm is a part of the RLIEH project and can be used on a Raspberry Pi.

Prerequisites

This module relies on pi-blaster project providing 8_PWM channels at a 100Hz PWM frequency and 1000 PWM steps.

Default supported GPIO pins

GPIO number  Pin P1 header
4              P1-7
17             P1-11
18             P1-12
21             P1-13
22             P1-15
23             P1-16
24             P1-18
25             P1-22

Install

From source

git clone https://github.com/owatte/rlieh-pwm.git
cd rlieh-pwm
python3 setup.py install

From pip

pip3 install rlieh-pwm

Usage

as Py module

  >>> from rlieh_pwm.core import RliehPWM
  >>> light = RliehPWM(pin=18)
  >>> light.pwm = 0.420
  >>> light.modulate(0.1, 80, duration=0.5)

as CLI tool

  $ rlieh-pwm set 0.42 18, duration=0
  $ rlieh-pwm range 0.1 80 18 --duration=0.5

The CLI tool code shows a use case with LEDs to make some special effects such as dusk, dawn, sunrise, sunset or even a thunderstorm with lightening effect.

rlieh@raspberry:~ $ rlieh-pwm -h
PWM management for RLIEH systems:

Usage:
  rlieh-pwm (on|off) GPIO [--log-level=LOG_LEVEL] [--log-path=LOG_FILE_PATH]
  rlieh-pwm set VALUE GPIO [--log-level=LOG_LEVEL] [--log-path=LOG_FILE_PATH]
  rlieh-pwm range BEGIN END GPIO [--duration=MINUTES] [--log-level=LOG_LEVEL]
            [--log-path=LOG_FILE_PATH]
  rlieh-pwm fx-light (--dawn|--sunrise|--noon|--sunset|--dusk) GPIO
            [--duration=MINUTES] [--log-level=LOG_LEVEL]
            [--log-path=LOG_FILE_PATH]
  rlieh-pwm (-h |--help)
  rlieh-pwm (-v |--version)

Arguments:
  GPIO        Raspberry Pi GPIO pin
  VALUE       Percent of modulation
              minimal modulation = 0.01, power Off = 0, power On = 100

Options:
  -h --help                 Shows this help and exit.
  -v --version              Shows version number.
  --duration=MINUTES        Duration of effect in minutes.
                            (Default value = 1.0)
  --log-level=LOG_LEVEL     notset, critical, warning, error, info, debug.
                            (Default value = notset)
  --log-path=LOG_FILE_PATH  Set log file path.
                            (Default value = /var/log/rlieh)

Tip:
  Use an alias to set a default GPIO (eg. alias light='rlieh-pwm $@ 18')

RLIEH puts a roXXXing poney in your aquarium and greenhouses

Licence

Released under The GPL v3 License.

Copyright (C) 2017 Olivier Watte

About

This module is intended to provide an interface to manage PWM on RLIEH systems ; rlieh-pwm is a part of the RLIEH project and can be used on Raspberry Pi.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages