Differences
This shows you the differences between two versions of the page.
Both sides previous revision Previous revision Next revision | Previous revision | ||
acab:setup [2013/03/20 23:38] – 2001:7f0:3003:cafe:21f1:3374:84:ac72 | acab:setup [Unknown date] (current) – removed - external edit (Unknown date) 127.0.0.1 | ||
---|---|---|---|
Line 1: | Line 1: | ||
- | ====== ACAB Setup Instructions ====== | ||
- | |||
- | The goal of this page is to gather all information needed to set up an ACAB installation from the ground up. | ||
- | |||
- | ===== Hardware ===== | ||
- | |||
- | The currently used hardware can be found at https:// | ||
- | |||
- | The board and schematic used for the ACAB installations are board/ | ||
- | |||
- | The hrdware uses RS484 to signal data to the lamps and a 24 V to 28 V supply voltage. Both the RS484 signal and the supply voltage | ||
- | are crried on a single cable. To keep the cost down standard Cat 5 network cables are used. | ||
- | |||
- | To communicate with the host computer, the RS484 interface has to be adapted to another interface. The device described by board/ | ||
- | It is intended to be used with our IPv6 home automation project, but can also be used to act as an USB to RS485 bridge. | ||
- | |||
- | ===== Software ===== | ||
- | ==== RS485 Bridge ==== | ||
- | The software for the RS485 bridge can be found inside the rs485bridge/ | ||
- | the RS485 bus used by the system. When used with the device mentioned above, it can be used to connect an ACAB installation to a PC. | ||
- | |||
- | To program the RS485 bridge: | ||
- | cd rs485bridge | ||
- | make | ||
- | make fuse | ||
- | make program | ||
- | ==== Bootloader ==== | ||
- | |||
- | The bootloader for the boards can be found at https:// | ||
- | |||
- | The bootloader is used to update the firmware of the lamps while they are inside an installation and therefore inaccessible. | ||
- | It consists of a small bootloader program, running on the lamps, and a set of Python and bash scripts to upload new firmeare to the lamps. | ||
- | |||
- | The bootloader can upload new firmware to a lamp and program arbitrary parts of the EEPROM. To single out a lamp on the bus and only programm a single one, | ||
- | the bootloader can be used to compare an arbitrary section of the EEPROM to data transmitted via the bus. | ||
- | |||
- | The scripts use this feature to select a single lamp after all lamps performed a power on reset. | ||
- | |||
- | To flash lamps which have not yet a uniqe EEPROM content, the bootloader can be forced to consider the lamp selected. | ||
- | |||
- | === Scripts === | ||
- | ./ | ||
- | Starts to send the select command to the bus. If a lamp with a bootloader reboots and has the corresponding id programmed, | ||
- | it will get selected. If no id is supplied any lamp on the bus will get selected. After a lamp got selected, the scripts returns. | ||
- | If a lamp got selected, it turns green. If a lamp is not selected it stays red. | ||
- | |||
- | ./set-m644p < | ||
- | Sets the address of a lamp to < | ||
- | multicast addressing. Example: set-m644p 5B | ||
- | |||
- | ./ | ||
- | Loads the binary at < | ||
- | |||
- | ./ | ||
- | Starts the program inside the selected lamp. This command always return with a timeout. | ||
- | |||
- | === Usage === | ||
- | == If a new lamp needs to be configured and flashed == | ||
- | Flash the bootloader to the lamp: | ||
- | cd ubloader | ||
- | make | ||
- | make fuse | ||
- | make program | ||
- | | ||
- | Compile the moodlamp firmware: | ||
- | cd moodlamp-bus | ||
- | make | ||
- | |||
- | Connect the RS485 bridge with the lamp and apply 24V power to the lamp. The lamp starts to light up red. | ||
- | cd ubloader | ||
- | ./ | ||
- | ./set-m644p < | ||
- | ./ | ||
- | ./ | ||
- | |||
- | == If a single lamp needs to be flashed with new firmware == | ||
- | Compile the moodlamp firmware: | ||
- | cd moodlamp-bus | ||
- | make | ||
- | |||
- | Start to select any lamp: | ||
- | cd ubloader | ||
- | ./ | ||
- | | ||
- | Connect the RS485 bridge to the lamp and apply 24V power to the lamp. The lamp turns green. | ||
- | ./ | ||
- | ./ | ||
- | |||
- | The lamps should now boot the new firmware. | ||
- | |||
- | == If a lamp is inside an installation and needs new firmware == | ||
- | Compile the moodlamp firmware: | ||
- | cd moodlamp-bus | ||
- | make | ||
- | |||
- | Start to select the specific lamp | ||
- | cd ubloader | ||
- | ./ | ||
- | |||
- | Toggle the power of all lamps, The specified lamp turns green and the script returns. | ||
- | |||
- | Flash the new firmare: | ||
- | ./ | ||
- | ./ | ||
- | |||