Accessory Decoder.
Project Credits: Paul Harman and Jeff Hughes
Many people are already using DIY function decoders on spare loco addresses to operate accessories around the layout and in many situations this is the best way to do it but there are some situations where an accessory decoder needs to respond to proper accessory packets so I have developed some replacement firmware that can be dropped into a DIY function decoder to turn it into a steady state accessory decoder.
Project Files:
- Project Zip File (This zip file contains all you need to get started on a function only decoder)
- The Decoder Manual is available as a PDF file
- Download Beta Accessory decoder firmware here
- All the information and firmware for a motor decoder is here
- Excel file of function decoder enhanced firmware CVs supported
Electrically the steady state accessory decoder is pretty much the same as the function decoder but in order to allow for a acknowledgement pulses when programming with no load there has been a pin reassignment among the outputs with output D being moved to pin 6 of 14-pin chips and no longer available on 8-pin chips. Accessory decoders tend to have their outputs in pairs so there are two versions, a 2-output that has one pair of outputs, and an 8-output that has four pairs of outputs. The NMRA Output Addressing Mode is supported so that 2-output accessory decoders can be put on consecutive addresses without leaving any gaps.
The current version of the firmware (V0.05) supports three operating modes.
* Toggling (CV3-6 = 0) – where a pair of outputs will toggle when one or the other is operated.
* momentary (CV33 = 64) – where each output is active only momentarily while the function is activated.
* NMRA Pulse (CV2-6 between 1 and 144) – where a pulse is generated each time the function is activated. CV33 = 15 will prevent reactivation of the same output.
Not all command stations support the momentary option so unless you have a Roco or similar command station which sends deactivate commands you will not be able to use momentary mode and will have to stick to steady state toggling or pulse which will be suitable for most things.
Hopefully there will be a new, release version of the firmware soon that will support being able to control the eight outputs separately on eight addresses which will be ideal for those of you wanting to control relays, lighting or similar and don’t require the toggle function.
The very high power accessory decoder hardware (kits are available if required) will drive up to 8A and is opto-isolated to prevent high power spikes getting on to the DCC bus. It can be powered from and DC supply up to 50V and a suitable CDU is available (see CDU page) for powering solenoids from the track supply to keep the wiring simple.
Accessory Firmware Supported CVs.
CV | Alt. CV | Default value | Range | Description | Notes |
1 | 513 | 1 | 0-255 | Lower address bits | 0-63 only for decoder address mode |
3 | 515 | 0 | 0-144 | Output on time in 10mS increments | 0=constant, 1=10mS, 100=1S, 144=1.44S |
4 | 516 | 0 | 0-144 | Output on time in 10mS increments | 0=constant, 1=10mS, 100=1S, 144=1.44S |
5 | 517 | 0 | 0-144 | Output on time in 10mS increments | 0=constant, 1=10mS, 100=1S, 144=1.44S |
6 | 518 | 0 | 0-144 | Output on time in 10mS increments | 0=constant, 1=10mS, 100=1S, 144=1.44S |
7 (read) | 519 | – | – | Software release number | |
7 (write) | 519 | 0 | 0,1,2,10,11,12 | LokMaus2 | Used for LokMaus2 programming mode |
8 (read) | 520 | – | – | Manufacturer ID | Not yet set (still development) |
8 (write) | 520 | – | 8 | Factory Reset | 8= Reset to defaults |
9 | 521 | 0 | 0-7 | Upper address bits | |
29 | 541 | 128 | 128,192 | Configuration bits | 192=output address mode, 128=decoder address mode |
33 | 545 | 0 | 0-127 | Mode | Bits 0-3 as MERG toggle mode, bit 6 Roco momentary mode |
34 | 546 | 0 | 0,8 | ACK pin | 0=pin 6, 8=pin 5 (8-pin) or 11 (14-pin) |
35 | 547 | 0 | 0-255 | invert | Each bit inverts an output pin when set to 1 |
36 | 548 | 255 | 0-255 | Flicker on 14-pin chips | Each bit sets an output pin to flicker when set to 0 (only pins 5-10) |
37 | 549 | 0 | 0-255 | Default output state | Each bit will set an output to be active at reset |
Colour key | |||||
Supported CV Table for V0.05 DIY Acc firmware | Not yet implemented | ||||
Not as per NMRA recommendation | |||||
Not NMRA recommended default |