forked from brianwiddas/gpiodcc
-
Notifications
You must be signed in to change notification settings - Fork 0
VA3SFA/gpiodcc
Folders and files
Name | Name | Last commit message | Last commit date | |
---|---|---|---|---|
Repository files navigation
Introduction ------------ This is a basic DCC command station for the Raspberry Pi. It generates output suitable for feeding into an L298N or similar H-bridge. I've successfully used it with one like this: http://www.ebay.co.uk/itm/Dual-H-Bridge-DC-Stepper-Motor-Drive-Controller-Board-Module-Arduino-L298N-/390535254940 (if you try it with something like this, bear in mind that there is no short circuit/overcurrent detection) Building and running -------------------- To build, run make. Connect the pins as follows: Raspberry Pi L298N board ------------------------------------------- GPIO0 (pin 3 on the header) IN1 GPIO1 (pin 5) IN2 GPIO4 (pin 7) ENA GND (eg pin 6) GND Run gpiodcc (as root, or with sudo), and telnet to localhost port 4303. You should be able to issue the following commands: SET PROTOCOL SRCP 0.8.3 SET CONNECTIONMODE SRCP COMMAND GO Then, to initialise a locomotive decoder INIT 1 GL <addr> N 1 128 <functions> <addr> = loco address <functions> = number of functions, eg 1 for FL only And, to set speed/direction/function state SET 1 GL <addr> <dir> <speed> <max speed> <fl> <f1> <f2>... <addr> = loco address <dir> = 0 (backwards), 1 (forwards), 2 (emergency stop) <speed> = 0 (stop) to <max speed> <max speed> = a number which defines the top speed. eg, 100 makes <speed> a percentage <fl> = status of FL (or function 0). 1 = on, 0 = off <f1>, etc = status of function. Only supply as many as there are functions defined in INIT; any others will be ignored Example: INIT 1 GL 5 N 1 128 1 - define a locomotive at (short) address 5, 128 speed steps, 1 function SET 1 GL 5 1 50 100 1 - forwards at 50% speed with the front light on Note ---- This code works with JMRI, and SRCP Client on Android. Other things (such as Rocrail) have not been tried. It is a very incomplete implementation of SRCP The supported loco types are very limited for the moment: Only 128 speed steps Only 5 functions (FL, F1-F4) Only short addresses There is currently no support for programming (either on a programming track or the main), or any form of accessory decoder This code should be regarded as experimental and incomplete
About
DCC command station (and SRCP client) for Raspberry Pi
Resources
Stars
Watchers
Forks
Releases
No releases published
Packages 0
No packages published
Languages
- C 98.5%
- Makefile 1.5%