100%
rtb_d20 D20cpu view
Description

Imported from GitHub: git4dcc/RTB_D20 · commit 4665bbe · license Apache-2.0

Description

DCC / Railcom decoder (NEM651, double sided)

README

RTB_D20

Real-time Bus (RTB) Kicad_Libs Apache License 2.0

My Homebrew D20 decoder is a double sided mobile decoder with NEM-651 connector. The decoder is designed to integrate into the RTB digital control infrastructure.

The decoder has the following features,

  • NEM-651 connector
  • DCC
    • DCC-A automatic logon
    • DCC-R protocol extension
    • Service Mode Programming
  • Railcom
    • Channel 1/2
    • POM, xPOM
    • DYN: Speed, QoS, Track-voltage, Motor-current, AUX-current, Temp, Distance travelled
  • Double sided
  • Dimension: 14 x 8 mm
  • 7-20V track voltage
  • heartbeat LED
  • adjustable max motor current (default 300mA)
  • adjustable max AUX current (default 500mA)
  • over temp protection
  • Function output: LF/LR (dimmable, 1.4kHz) open drain
  • Function output: AUX1/AUX2 (dimmable, 1.4kHz) open drain and logic level (3.3V)
  • Function output: AUX3/AUX4 logic level (3.3V)
  • optional external buffer capacitor (max. 1500uF)
  • <10mA idle power consumption
  • Firmware update over main tracks via DCC-R protocol

Hardware

The current PCB layout uses SMD footprints with 0.5mm pitch, 0402 and 0201 parts. Reflow soldering is mandatory.

PCB

  • 6-layer PCB, FR4, 14 x 8 x 0.8mm (double sided)
  • CPU: AVR64DD28
  • Motor bridge: DRV8231
  • Connector: NEM-651

Kicad

Schematic | Layout | Gerber

:yellow_circle: Requires my Kicad project library RTB_SamacSys in the same directory tree.

Firmware

Filename structure: { pcb }{ code }{ version }.hex

Example: D20F0001.hex

Description
pcbName of matching hardware (D20)
codeType of code contained (R=rom, B=bootloader, F=flash, U=bld update, P=UPDI factory code)
versionRelease version (####)

Firmware files

UPDI

The fuse settings as well as the P-code (D20Pxxxx.hex) has to be installed by using UPDI. Connecting the decoder via its track pins to a 5V(DC) power supply will boot its CPU. This way, its easy to program the fuses and flash.

<img src=supplemental/images/D20_updi.jpg width=800>

Fuse SettingP-code Install
<img src=supplemental/images/D20_updi_fuses.jpg width=500><img src=supplemental/images/D20_updi_memory.jpg width=500>

Images

topbottom

YouTube

Some YouTubes to see the D20 decoder in action.

This project is intended for hobby use only and is distributed in accordance with the Apache License 2.0 agreement.

Comments
Sign in to comment

No comments yet. Be the first to ask about this board.