Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
livebox:hah_microcontroller [2011/12/18 23:33] – [RF] brett | livebox:hah_microcontroller [2012/06/05 15:53] (current) – [Microcontroller firmware] brett | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Microcontroller firmware ====== | ====== Microcontroller firmware ====== | ||
- | The microcontroller firmware for the AVR is written in C using the [[http:// | + | The microcontroller firmware for the AVR is written in C using the [[http:// |
+ | |||
+ | ^^ Chip ^^ Firmware | ||
+ | || ATmega8 || 1.0 || [[http:// | ||
+ | || ATmega328P || 2.x || [[http:// | ||
+ | || ATmega328P || 3.x || C || | ||
+ | |||
+ | **The current release is v3.4** | ||
+ | |||
+ | On the top RHS of every HAH web UI page, you will see ' | ||
+ | |||
+ | vvv.v is the HAH firmware build. x.x is the AVR code version. | ||
+ | |||
+ | You can force the xap-livebox program to communicate at a specific version if auto detection of the AVR firmware version is failing using the following setting in your / | ||
+ | |||
+ | < | ||
+ | [hardware] | ||
+ | major=3 | ||
+ | minor=4 | ||
+ | </ | ||
===== Command Interface ===== | ===== Command Interface ===== | ||
Line 8: | Line 28: | ||
We communicate at 115200 baud as this is the default speed for the Livebox serial interface. | We communicate at 115200 baud as this is the default speed for the Livebox serial interface. | ||
- | The HAH firmware normally runs a process named xap-livebox to connect to the HAH PCB. If you want to connect manually for debug, be sire to kill off the xap-livebox process first. | + | The HAH firmware normally runs a process named xap-livebox to connect to the HAH PCB. If you want to connect manually for debug, be sure to kill off the xap-livebox process first. |
+ | |||
+ | <note important> | ||
< | < | ||
+ | # killall xap-livebox | ||
# microcom -s 115200 /dev/ttyS0 | # microcom -s 115200 /dev/ttyS0 | ||
+++ < | +++ < | ||
Line 35: | Line 58: | ||
</ | </ | ||
- | Channels | + | ==== Status ==== |
+ | |||
+ | Useful for debugging and figuring out what is going on. | ||
+ | |||
+ | < | ||
+ | >status 1wire | ||
+ | Found 1 1wire sensors | ||
+ | ID: 0 ROM: 282E2DCB010000A9 Model: DS18B20 | ||
+ | setResolution 12 bits, getResolution 12 bits | ||
+ | >status input | ||
+ | Input 1: 1 | ||
+ | Input 2: 1 | ||
+ | Input 3: 1 | ||
+ | Input 4: 1 | ||
+ | >status relay | ||
+ | Relay 1: 8 | ||
+ | Relay 2: 9 | ||
+ | Relay 3: 10 | ||
+ | Relay 4: 11 | ||
+ | </ | ||
==== report ==== | ==== report ==== | ||
Line 41: | Line 83: | ||
Display the current state of the INPUTS and any devices on the I2C or 1-Wire bus - __Debugging command__. | Display the current state of the INPUTS and any devices on the I2C or 1-Wire bus - __Debugging command__. | ||
< | < | ||
- | >report | + | >input 60 0 |
- | input 60,0 | + | 1wire 282E2DCB010000A9 18.8 |
- | 1wire 1 20 | + | |
> | > | ||
</ | </ | ||
Line 67: | Line 108: | ||
- | ==== 1wirereset | + | ==== 1wire reset ==== |
The 1-Wire bus is only scanned once during micro-controller startup, if additional devices are added to the unit whilst HOT the bus must be reset to pick these up. We don't recommend hot plugging. Note that the 1-Wire devices always enumerate in the same order. However, if you add a new device, you might find that it takes the slot currently allocated to an existing device. Do check your configuration after adding a new device. | The 1-Wire bus is only scanned once during micro-controller startup, if additional devices are added to the unit whilst HOT the bus must be reset to pick these up. We don't recommend hot plugging. Note that the 1-Wire devices always enumerate in the same order. However, if you add a new device, you might find that it takes the slot currently allocated to an existing device. Do check your configuration after adding a new device. | ||
Line 76: | Line 117: | ||
==== on / off ==== | ==== on / off ==== | ||
- | Toggle a relay or RF relay from the on to the off state. | + | Toggle a relay on/off. |
< | < | ||
>on 1 | >on 1 | ||
Line 82: | Line 123: | ||
</ | </ | ||
+ | For the M8 firmware this was also overloaded to control RF devices. | ||
+ | < | ||
+ | > on 5 | ||
+ | </ | ||
+ | The 1st RF sequence saved into EEPROM would be addressable as 5, the 2nd as 6 etc.. | ||
==== lcd ==== | ==== lcd ==== | ||