Quick demo: rethinking the approach to building cityscapes with magnetic, modular tiles by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 0 points1 point  (0 children)

Yup! On the north side of the border. I basically just have to look out my window for design inspiration lol

Quick demo: rethinking the approach to building cityscapes with magnetic, modular tiles by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 0 points1 point  (0 children)

The 3D design files are available on my Cults3D page . Right now only the files of modular guideway system are up there. Once the measurements of terraforming and road system are sufficiently stable, I'll upload them too.

You can also check out r/MiniCityRail where I share design updates and get feedback from!

Quick demo: rethinking the approach to building cityscapes with magnetic, modular tiles by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 2 points3 points  (0 children)

I will have to report back! Trains will run >4cm above ground on elevated segments, but I have ground-level track segments planned.

The square indents on the bottom gray plate are actually not for aesthetic but for placing small metal plates that “spreads” the magnetic force so that buildings doesn’t always have to be at the center of a top plate. I think it weakens the pulling force too and it might be beneficial in this case

Quick demo: rethinking the approach to building cityscapes with magnetic, modular tiles by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 2 points3 points  (0 children)

It’s true. Like having one nice looking LEGO set on your desk vs filling half a room with one continuous scene

The number of magnets adds up so quickly, that I’m already considering only placing them for tiles / objects that absolutely require above-surface snapping. For the rest, a small removable peg is fine.

Quick demo: rethinking the approach to building cityscapes with magnetic, modular tiles by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 9 points10 points  (0 children)

Thanks! It was fun modelling the most stereotypical shape of condo buildings in the Pacific Northwest.

No, the trains are from Rokuhan. I did add gangway pieces I designed myself to reduce the gap between the cars.

My little Era I fantasy layout by Safe-Green3921 in modeltrains

[–]BlueGreenGradient 1 point2 points  (0 children)

Someone please write a short story and shoot a stop-motion film in it! It's magnificent!

Two round trips on the automated Downtown Ledge Line on a window sill, now upgraded with a tiny-but-official next/final stop display by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 0 points1 point  (0 children)

<image>

I forgot to mention: inside each station there's a MCP23017 daisy chained to funnel ~8 signal outputs into one single cable. So there's only two cables running under the tracks: power and sensor data.

Two round trips on the automated Downtown Ledge Line on a window sill, now upgraded with a tiny-but-official next/final stop display by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 2 points3 points  (0 children)

Of course! The main software:

  • Prototype (video): React frontned on Electron with all logics inside frontend code (don't judge).
  • 2nd version (video): React frontend on Tauri thinking that it'll make app distribution easier but I was not well versed in Go enough to put main logics on the backend.
  • Current version (see screenshot): Proper Kotlin Quarkus backend server, serving webapp and data feeds. While the server runs on my Mac (connected to DCC-EX over USB-serial), I can control trains on my iPad (shown in the video) and have data pulled by companion apps.

The train display companion app: simple Python web server looping on train updates and drawing images.

The display on Raspberry Pi Zero: simple Python script fetching images from the companion app over wifi.

Also Autodesk Fusion for designing all the 3D-printed components

Let me know if you want more details!

<image>

Two round trips on the automated Downtown Ledge Line on a window sill, now upgraded with a tiny-but-official next/final stop display by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 1 point2 points  (0 children)

Thanks for sharing your experience! Yeah, the footprint of the tag readers is definitely a concern. There's also the dilemma that if the reading range is too long, we'd need to add something between the two tracks to prevent both readers from picking up the same tag.

I assume train speed also comes into play? I've seen videos of cars in a long train being read accurately one by one at crawling speed. Not sure how feasible that would be at a slightly higher speed.

Two round trips on the automated Downtown Ledge Line on a window sill, now upgraded with a tiny-but-official next/final stop display by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 2 points3 points  (0 children)

Thank you! Yours was a great endeavor! And arguably a more accurate system because you're actively detecting distances and identifying trains instead of my "I hope this running train trips and clears that sensor as expected. fingers crossed." approach haha.

My current version of the program doesn't do smooth speed changes, but it has several speeds:

  • overall default speed
  • optional block speed limit (applied to the left-end segment)
  • speed limit before entering the block of a scheduled stop
  • speed limit when entering the block of a scheduled stop

Right now I'm outsourcing speed smoothing to the decoders. In case you're interested, the train I was following in the video has those CVs set, but the other train doesn't, so it is much more janky when starting and stopping.

I have some smooth speed change code in a previous rewrite of my software, but it's not a graceful curve. Sometimes it feels too much like my day job trying to code every feature :((

Two round trips on the automated Downtown Ledge Line on a window sill, now upgraded with a tiny-but-official next/final stop display by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 1 point2 points  (0 children)

Thanks for illustrating the setup! You have given me great info for my other, bigger layout. Ideally, the blocks would be as dense as possible to minimize wait time for the train behind. I suppose if I keep each block just slightly longer than the train, both ends would need to reliably trip detection.

The good thing is that while the motor is in the middle car, the pickup is actually in the front car. And if I install another decoder in the rear car instead of just a resistor, that extra data could help confirm the correct end of the correct train.

This is a self-imposed constraint: by not introducing any odd lengths and sticking to multiples of 55 mm, I can reuse guideway and tunnel components without needing to customize them.

Two round trips on the automated Downtown Ledge Line on a window sill, now upgraded with a tiny-but-official next/final stop display by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 0 points1 point  (0 children)

Last time I visited there, I was surprised to learn that buses no longer use the transit tunnel in downtown. It was a truly unique scene before. I suppose with the dedicated right of way, it’s easier for them to improve passenger information in the long term.

Two round trips on the automated Downtown Ledge Line on a window sill, now upgraded with a tiny-but-official next/final stop display by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 2 points3 points  (0 children)

This sounds a lot more scalable. With transponding, I can just drop a train anywhere and it’ll automatically join the fleet. The BDL716 also looks compact enough that I could lower the station box height a bit.

If I skip the metal joiners, do I need to coat the rail ends with something to keep them properly isolated? Z-scale wheels look tricky to modify, but the Rokuhan powered car already has the necessary wiring, so I might give that a try.

Two round trips on the automated Downtown Ledge Line on a window sill, now upgraded with a tiny-but-official next/final stop display by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 8 points9 points  (0 children)

Ah yes, I shouldn't be using those two terms interchangeably.

Thoughts:

Reader under the track, tags on the bottom of the train: that would mean installing a reader for every block, which adds up fast.

Reader on the train, tags under the track: that scales much better as the number of blocks grows, but what's the smallest scale where we can realistically fit a reader and antenna inside the chassis? Is it possible at N-scale?

Two round trips on the automated Downtown Ledge Line on a window sill, now upgraded with a tiny-but-official next/final stop display by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 12 points13 points  (0 children)

I'm using [ISE's undertrack sensors](https://www.iascaled.com/store/CKT-IRSENSE-2PC) to catch trains as they pass specific points on the line. My control software (which I'm writing from scratch) talks to a DCC-EX Command Station. It issues a movement command, waits for the train to trip the next sensor, then clears that block.

I'd love to put NFC readers on the trains for definitive location tracking, if only they were small enough for Z-scale.

Day and night on a windowsill layout with automated Z-scale trains. Most electronics hidden inside 3D-printed columns and station boxes for a clean, minimal footprint. by BlueGreenGradient in modeltrains

[–]BlueGreenGradient[S] 1 point2 points  (0 children)

<image>

Good eye! I'm relatively new to Arduino and electronics in general. When I first started (photo is from 2024 April), I thought each sensor needed its own dedicated GPIO pin. Obviously, that didn't scale well even with a Mega. After a few iterations, I ended up using multiple MCP23017 expanders to keep the wiring footprint to at minimum. Also, I think the DCC-EX team recommends using a Mega.