Commit Graph

3 Commits

Author SHA1 Message Date
Joshua Boniface 93140f53af Fix bug where state not actually written to pipe every second (from testing) 2017-03-31 00:11:21 -04:00
Joshua Boniface e56002baf8 Refactor into Python daemon and simplified shell
This commit makes a major change to the organization and operation of the RPi BMC software. The 'shell' (`bmc.sh`) has been greatly simplified,
removing all instances of `wiringpi` GPIO code. The shell communicates with a new Python daemon via a pair of named pipes in `/run/bmcd`.

The Python daemon starts and immediately executes two threads:
1) The first manages reading from `/run/bmcd/bmcd.cmd`, which handles the passing of commands from `bmc.sh`, such as 'powersw_press' or 'locate_on'.
2) The second manages writing the current host state out to `/run/bmcd/bmcd.state`, to be read from `bmc.sh` when needed. It does this every second
   to avoid blocking.

An additional thread with an Event handler manages the flashing power LED for the `locate` functions.
2017-03-31 00:03:52 -04:00
Joshua Boniface a52f8b071f WIP - working on bmcd 2017-03-30 13:00:23 -04:00