RemoteResetArduino: verschil tussen versies

Uit RevSpace

FooBar (overleg | bijdragen)
Created page with "{{Project |Name=RemoteResetArduino |Status=completed |Contact=FooBar }} == Summary == An arduino program to toggle power and reset buttons on standard ATX PC's, and ..."
 
FooBar (overleg | bijdragen)
Geen bewerkingssamenvatting
Regel 30: Regel 30:


== Pictures ==
== Pictures ==
[[Image:Rra-mainboard.jpg|300px]]
[[Image:Rra-arduino.jpg|300px]]

Versie van 20 aug 2013 19:54

Project RemoteResetArduino
Status completed“completed” staat niet in de lijst met mogelijke waarden voor de eigenschap “Project Status” (Proposed, Initializing, In progress, Completed, Stalled, Abandoned).
Contact FooBar
Last Update 2013-08-20

Summary

An arduino program to toggle power and reset buttons on standard ATX PC's, and to read the status of the machine (Powered on or off, Power present @ PSU).

Introduction

I was building a 3-node cluster to test some cluster-filesystems for a client, and used 'wake-on-lan' to remotely boot the various cluster nodes when needed. This worked somewhat, but I was unable to reboot a hanging system, or see if a wake-on-lan packet actually arrived at the system.

Doing some tests with a firmata sketch on an arduino proved that I could easily toggle the powerbutton and resetbutton on an ATX mainboard, bringing this project to life.

Code

The code can be found on https://github.com/sigio/remotereset-arduino

Working

  • Connect the arduino to a usb port on a working system (I used a openwrt based router).
  • Connect the digital pins to the power and reset lines on an ATX mainboard.
  • Make a serial connection to the arduino (115200 baud)
  • Configure the pin-numbers (see 'help' command, use 'config' command)
  • Toggle reset and/or power buttons with commands 'reset #', 'power #' or 'force #'
    • Force will hold the (power) button for 4 seconds, reset and power only simulate a short press
  • Use the 'check #' command to see if a system is powered on

Pictures