Blog
Experimental stuff
Imbedded Ctrl | Ctrl Panel | I2C/Qwiic | PWM sound | 9-axis IMU | DCC/Railcom Logger | WS28xx emulation

Abstract
Every great invention begins with a moment of curiosity. For me, it was the question of what was really possible with DCC and RailCom. I wanted to build a decoder that was smarter, more adaptable, and truly connected to the world around it. This is the story of that journey—a chronicle of the triumphs and setbacks of an inventor determined to turn a vision into a reality, one line of code and one circuit board at a time.
Haha … sounds epic!
Smart Signals: Optimizing Connectivity with Embedded EDG Control
The future of layout management lies in decentralized intelligence. My latest development integrates the signal controller (e.g. C23, C30) directly into the mounting socket, allowing for full assembly at the workbench rather than under the layout. With a dedicated CPU inside every signal, these units are now self-identifying and automatically discoverable on the layout bus.
This concept transforms a passive light signal into an intelligent, bus-ready device. Each unit features its own UID for seamless auto-discovery, ensuring that “plug-and-play” is no longer just a concept, but a standard for modern model railway operations.
Status: Prototype works well.
Simplifying Layout Control: A Modular Building-Block Prototype
I am prototyping a standardized, modular approach to control panel construction, where individual building blocks connect to form a cohesive track layout. The system is built on the EDG bus, enabling “plug-and-play” automatic discovery of all components. With the electronics and firmware now fully stabilized, the final challenge lies in refining the mechanical design to make panel assembly as efficient and effortless as possible. (s. also)
Status: Prototype works well, but need to simplify mechanics.
Testing I2C/Qwiic devices
- connected to the EDG bus
- automatic discovery
- abstraction of I2C devices
4: Motor PWM sound
Exploring the Limits of Motor-Based Sound Generation
While developing the motor driver for my locomotive decoder, I closely analyzed how Pulse-Width Modulation (PWM) frequencies dictate motor acoustics. Beyond simply minimizing disruptive noise, I explored a more ambitious question: could the motor’s PWM be harnessed as a primary sound generator? My prototypes successfully produced a convincing diesel engine simulation; however, replicating the nuanced acoustic profiles of electric or steam locomotives proved significantly more complex, defining the current limits of this hardware-driven approach.
Status: Nope – it’s pointless. I dumped this idea.
5: 9-axis IMU sensor
Giving locomotives the sense of orientation
To enhance mobile decoder telemetry, I have integrated a 9-axis motion sensor into my latest designs. I selected the BNO055 specifically for its onboard processing capabilities; its integrated CPU manages the intensive sensor-fusion mathematics, converting raw data into actionable orientation and motion output. This offloads the computational burden from the decoder’s primary CPU, which simply retrieves the processed data for transmission to the control center via RailCom. Following successful testing with Adafruit-based prototypes, the value and stability of this architecture are now fully validated.
Status: All my PCB decoders have the IMU option.
Debugging DCC/Railcom Decoder
To support the rigorous debugging required for modern locomotive decoders, I developed a DCC/RailCom traffic logger designed for detailed signal analysis. The device provides the timing precision necessary for verifying RCN-compliant RailCom feedback. Advanced triggering and filtering capabilities allow for targeted data capture, including external I/O triggering to synchronize with an oscilloscope during complex troubleshooting. While originally a standalone project, the majority of this functionality has since been integrated into the centralized RTB system.
Status: This project is stable.
Implementing Software-Defined WS28xx
While WS28xx driver chips are industry standards for cost-effective LED control, leveraging a general-purpose CPU offers a level of flexibility that fixed hardware cannot match. By implementing the control logic in firmware, we transition to a software-defined architecture that provides several key advantages:
- Dynamic Scaling: The LED count per module is software-configurable, allowing the CPU to selectively process only the data relevant to its specific application.
- Versatile Topologies: Support extends beyond standard serial protocols to include complex driving techniques like Charlieplexing.
- Configurable Voltage: The common rail voltage can be tailored to the specific requirements of the hardware.
The primary engineering hurdle is the WS28xx protocol’s strict timing—requiring a bit transmission window of approximately 1.25 MicroSec. To handle this in real-time, I utilized the AVR64Dx series. Its combination of high clock speeds and specialized hardware peripherals allows for efficient background data capture and protocol processing.
My modules E10, E11, E13, E14 and E15 are implementing this technique.
Status: It works!
Further reading: [DE] MobaLedLib, [EN] Tim’s Blog
Ensuring RCN Compliance through Advanced Decoder Testing
Achieving consistent compliance for Digital Command Control (DCC) decoders remains a complex challenge. The continuous evolution of industry specifications—where revisions to established standards often trigger legacy compatibility issues—requires rigorous oversight. The integration of RailCom further increases this technical overhead, introducing demanding timing and protocol requirements. To address these challenges, I am developing a dedicated DCC/RailCom Decoder Tester. As a foundational step, I have begun consolidating existing compatibility data to establish a comprehensive testing baseline.
Tested aspects include,
- electrical attributes of a decoder such as inrush current
- DCC command set support
- Railcom telemetric parameter set
- Railcom timing compliance
Status: In progress
The Path to Mature DCC Technology: A Developer’s Perspective
Follow the development history of my DCC/RailCom decoder platform. The transition from initial concept to a stable, mature system has been a rigorous process of investment and iterative debugging. My key takeaway from this journey? Building your own sophisticated electronics is a labor of passion and a deep dive into engineering—rarely is it the “cheap” alternative, but it is always the most rewarding.
Status: In progress
