I have been a model railroader for a number of years, some more active than others. The idea behind KJ&C is to allow the development of a variety of rolling stock, operations and the automation software and hardware. I’ve followed the various block control systems developed and then DCC and the latest efforts for the OpenLCB.

About KJ&C

The KJ&C Railroad is a fictitious railroad located in a place where both the Canadian National and the Canadian Pacific Railroads conduct business. KJ&C is principally a museum that collects steam locomotives and other rolling stock as well as runs excursions. The era that KJ&C operated in was the late 60s through the early 80s.


Aug 2, 2020 Continued wiring efforts
Jul 13, 2020 Received PCBs for the IoT Tortoise controller, developed a Node Red testing harness and tested the constructed IoT Tortoise controller. Upgrade the controllers software to improve subscription processing. Started work on shortening three Walthers center beam flatcars.
Jun 11, 2020 I updated the system design and developed a few more components, to support the Model Railroad Layout Manager (MRLM), which allows a user to see what micro controllers are in the system and the latest time stamp they where turned on. MRLM gets turnout contacts messages to display the state of the turnouts. Added some additional RFID tags to my rolling stock. Updated my Github and Docker repositories. Received my turnout controller boards. Looks like Walthers won’t deliver their new turnouts until late fall! I received a highly detailed Rapido CN lightweight diner, which I had ordered last fall.
May 12, 2020 Completed the design for the IoT Tortoise controller, developed a PCB, coded the ESP8266 and tested the design on a breadboard. Stripped 9 boxcars I had purchased over a period of time which are neither CN nor CP, I used the purple stuff as it works wonders.
Apr 27, 2020 Prepared module 3 for ballasting. Installed an RFID reader in module 2. Started wiring modules 3 and 2 using terminal strips rather than continuing the bus I used in the experiments I started. Started designing an IoT Tortoise controller.
Apr 11, 2020 I found a #4 turnout hiding in a stack of magazines. I installed the turnout and continued working on the track for both module 2 and 3. I installed components on a PCB I designed using Geoff Bunza’s circuit. Continued working on the CN caboose. I started developing a load of lumber for a center beam flat car.
Mar 24, 2020 The turnouts that were supposed to available at the end of Feb are now delayed to late Jun, so work on module 2 is still on hold. I visited the Duneden Railway in New Zealand in mid Mar and posted a few photos, which you can see here. Given I’m hunkered down I’ve had some time to work on module 3, which now connects the other two modules and is mounted to the wall.
Feb 21, 2020 Still waiting for turnouts so not much progress on the layout. Developed a component to announce the rolling stock ID as it passes over the RFID reader, but have had issues trying to Dockerize it. Bought some new RTR freight cars, which I replaced the couplers with Kadees and added RFID tags. Started to construct a CN caboose from a Juneco craftsman kit by adding interior details.
Jan 2, 2020 Installed remaining Tortoise motors in module 2, continued laying cork. Installed three turnouts and I am now waiting for the other two #4 LH Walthers code 83 turnouts. Started investigating the use of JMRI and different rolling stock detection as the IR emitter/sensor components I had installed in the experimental module seem to have difficulties in sensing flat dark under carriages
Dec 9, 2019 Added report generation to MPPM, pushed new Docker images for both MPPM and PPDS to DockerHub
Nov 20, 2019 Installed 3 Tortoise motors in module 2 and started putting down the cork roadbed. Installed Docker on a Windows 10 laptop and have MRIM as well as MPPM running on the laptop
Nov 10, 2019 Started work on the build of module 2 with the transfer of the XTrackCAD design to the foam surface
Oct 29, 2019 Corrected sensor reporting in RSRM, built bench-work for module 2, cataloged 129 pieces of rolling stock, tagged all of the 20 ft ore cars and updated the ‘software development’ page and sub pages of this site
Oct 25, 2019 Corrected a pagination issue with the Image Report of MRIM. As jsPDF needs access to Git I revamped the Dockerfile to include the use of Unbuntu base with Git installed
Oct 23, 2019 Added PDF reporting to MRIM to output the inventories. The Rolling Stock inventory can be sorted by Road Name and Number or AAR Code or Status
Oct 8, 2019 Assembled four Red Caboose 40 ft freight cars, replacing couplets and trucks with Kadees, painted and lettered them with CNR data
Sep 16, 2019 Added a load type to the rollingstock pages in MRIM, this attribute is needed for future operations. Removed several vulnerabilities
Aug 23, 2019 Added a number attribute to purchases and created purchases and project PDF reports
Aug 17, 2019 Upgraded MRIM to use latest version of Buefy
Aug 12, 2019 Changed the look of the input forms in MPPM to use Buefy and created docker images for PPDS and MPPM
Aug 8, 2019 Completed initial releases of PPDS and MPPM
Jul 31, 2019 Updated the system design to add new micro-services for projects and purchases tracking
Jul 21, 2019 Additional vulnerabilities were identified and newer npm package versions were used. Switched all base docker images to use lts-alpine. Used a multi-stage docker build to reduce the image size for MRIM and RSRM. Simplified the docker install instructions.
Jun 30, 2019 Several of the node applications were updated to remove security vulnerabilities identified in several node packages. Both MRIM and RSRM were upgraded to use Webpack 4. New docker images were also created.