PWM driver with Watchdog
Currently if Redeem or the Linux dies, the PWM might be left in an programmed powered state - which is quite dangerous and have an fire hazard.
I would suggest linking ~OE to an GPIO so at least it will be turned off during reset. Better yet, use an PWM IC with Watchdog functions.
Comments (5)
-
repo owner -
repo owner Linking OE to a GPIO will not work in the case of a kernel panic. I've looked at watchdog chips, but the cheap ones will emit a pulse train as output, which is not what we want. I'm currently looking at a $0.6 MSP430 that can be pinged at regular intervals. These also have a built in temperature sensor that can be used to shut down the board of temp is exceeded. Can perhaps also handle the role of the EEPROM if it can operate as a slave I2C device.
-
reporter For performance stage lighting controller, if signal is lost for a few seconds, the lights output will shutdown. I am not sure if there are any pwm driving chips with similar functionality. Just my 2 cents.
-
repo owner I've not found any PWM chips with built in WDT, but perhaps there are some implementations using an external WDT? As for my idea, programming a MSP430 via Spy-bi-wire should be easy, but I've not found an implementation of it yet. Instead I'm proposing to use the built in watchdog on the BBB, which already has a kernel interface (echo "" > /dev/watchdog). This can be implemented in Redeem in just a few lines of code causing the current board to be more reliable. If a kernel panic occurs or Redeem stops responding, a reset will be triggered. Since Redeem resets the PWM chip on startup, everything will be disabled after 60 seconds + startup time. As for the next revision, I'll connect the ~OE pin on the PWM to a pin, with a pull-up so the output is disabled on watchdog timeout, which I'm assuming is configurable somehow.
-
repo owner - changed status to resolved
Rev B has a pull-up on ~OE.
- Log in to comment
Yes, this has been planner for the next revision. Connecting OE to a pin.