top | item 20574992

A Raspberry Pi-powered live train station sign

642 points| chrisys | 6 years ago |balena.io

141 comments

order
[+] kevan|6 years ago|reply
Pretty cool. When I took the train to work I made a simple stop-light with transit data. Trains ran every 10 minutes and it took me a few minutes to walk to the station. Green meant I could definitely catch the next train. Yellow meant I'd make it if I walked fast, and red meant I'd miss this train and need to wait for the next one.
[+] Kipters|6 years ago|reply
I made something similar when I was in uni and had to catch a bus to get back home, but with my Pebble and a C application: next bus was one button press away and another press was all was needed to start a carefully calibrated double alarm for "start packing" and "leave" times
[+] cameronh90|6 years ago|reply
Curiously, I've made almost this exact same thing. In my case it needs to account that some platforms are a couple minutes extra walk.

Given that we've both independently implemented basically exactly the same thing, I wonder how many other people would want something like this.

[+] modsiw|6 years ago|reply
Idk where you live, but it ain’t Boston.
[+] benj111|6 years ago|reply
Rather than show red, why not show the next train you could actually catch?

A bit more glass half full, and reduces the light count by 33%!

[+] alexandros|6 years ago|reply
Hey folks, balena.io founder here, just chiming in to mention that Chris is one of our Hardware Hackers in Residence, and if you think that doing HW projects with all sorts of cool technologies and writing them up for the world is your dream job, we're hiring! https://balena.workable.com/j/27A101659C

Happy to answer any balena (or train station sign) related questions, of course :)

[+] duxup|6 years ago|reply
That is super cool.

But admittedly when I saw the title i was hoping for a mini version of those massive flipboard signs. Those things are amazing.

[+] supernova87a|6 years ago|reply
That would be really amusing. Those are called Solari boards, by the way, after the manufacturer (Solari di Udine).

Maybe someone enterprising might (or has?) created a character flipping routine that mimics the search through the tiles and set it to the authentic sounds?

The attempt by that company to create their own digital version is really bad. (search youtube for it)

[+] asteli|6 years ago|reply
They're really cool! The original Solari board modules are mega expensive though. I looked at getting some to make a clock, and it probably would have cost me in the thousands.

As an indirect result I now have a project in the works to make them. The concept is simple, but building them to be inexpensive is a challenge. Every extra bracket or fastener gets multiplied by _n_ modules.

[+] elliekelly|6 years ago|reply
I have a small one in my office that tells the time & updates the S&P every 15 minutes. It's surprisingly loud. Especially at the top of every hour when all of the dials are flipping I've more or less gotten used to it but I have one colleague who refuses to have any meetings in my office because they find it so distracting.
[+] dwyerm|6 years ago|reply
A Solari Split-Flap Display? I love that they're making new ones! Starbucks has been putting them in their Reserve Roasteries.

I'm also sort of happy with the 'modern' ones that are actually LCD screens with speakers making the noises. It's cheating, but it's a nice tribute.

[+] Cthulhu_|6 years ago|reply
We've had a short project at some point recreating a station's big departure times flipboard in an ipad app; my colleagues went out there for a couple hours to just look at the thing, record background and noises, write down its behaviour and draw the small nuances and damages in the flippers and their contents. Over a weekend my colleague made a POC of the animation of a single unit, then in the next week the two of us copied that one over in a big grid to display departure times from the API. It was a really cool little project, and IIRC the managers of the organization we made it for would frequently just have it open on their desk or show it off to people.
[+] chrisys|6 years ago|reply
One of those is definitely on the cards for me, I have been meaning to get to that for a long time.
[+] odiroot|6 years ago|reply
I'm working on a few projects at home with ESP and RPi Zero. It's so much fun to do your own "IoT" devices.

There's still a problem I don't know solve well, holistically. When you do something with UI there's inputs from humans (buttons, knobs, etc), the network and timers. I'm completely lost how to coordinate that, especially when I use an LED/OLED display.

How to make sure a single screen is displayed long enough to be readable? But on the other hand how to react to all inputs? And how to deal with some inputs/triggers being more and less important (e.g. "modal" screens over static screens)? Also how to make sure not to get lost in the threading mess that I just created? The cherry on top is, some inputs require "short term memory" -- like patterns of button pressing (double/triple press/long hold) or rotary encoders.

In the end I give up implementing a lot of features.

[+] mytailorisrich|6 years ago|reply
I trust that the picture really shows live data because all trains are listed as running late.
[+] VBprogrammer|6 years ago|reply
This is really cool!

One thing that always annoys me with those signs is when they try to put too much information on them. You have all of the stops, fine. You then have all of the information about the train splitting which you might well need. But then they start adding information about short platforms etc. It takes several minutes for it all to scroll past. Which is super annoying if you're trying to work out if the train standing there stops at your station.

[+] jedimastert|6 years ago|reply
I know it's a lot less complex, but on the MBTA all of the signs only show next two trains and how long they'll take to arrive. The extra information comes in where each of the displays are.
[+] sschueller|6 years ago|reply
Very cool but I find a pi is overkill for something like this. ESP8266 or ESP32 would work just as well.
[+] mugsie|6 years ago|reply
They would, but the Pi Zero is a much better UX for people who don't deal with microprocessors on a regular basis. It has SSH, I can get in and look at logs from my desktop, wifi is standard. It all adds up - and for something like this, the power draw is not an issue, and the cost is minimal.
[+] vasco|6 years ago|reply
On the other hand, it is also overkill to learn how to program and deal with an ESP32 if you already know some light linux sysadmining and some high level programming language to set this up.
[+] roland35|6 years ago|reply
If this is being designed as a consumer device that may be true, but the ESP devices have their own issues and the pi makes for a great proof of concept!
[+] sigstoat|6 years ago|reply
a qty~1 project like this is dominated entirely by NRE. that's the only thing to optimize.
[+] jrockway|6 years ago|reply
Pi Zero Ws are $10, ESP32 dev boards are $12. Why pick the more expensive one AND spend more time writing the software?
[+] inflatableDodo|6 years ago|reply
I like the emergence of these cheap, fun, single function computing devices. Sure, it is useful to have a smartphone that does everything, but that doesn't help develop your internal map of reality in the same way as things like this do.

Ubuiquity can only be stretched so far in a single tool before the benefit you derive from adding yet another feature is outweighed by it becoming very slightly worse at everything else it does. Smartphones are great, but as a backup computing device, in much the same way keyring multitools are. And the best of them are still measurably worse than the best non-smartphones at actually being mobile phones.

[+] jonahhorowitz|6 years ago|reply
I need one of these, but showing my upcoming meetings. Then I need it to start blinking when I'm supposed to be somewhere besides my desk.
[+] EamonnMR|6 years ago|reply
Ohh, I think I know the right APIs to make the Boston MBTA version of this. Will post it up if I do it.
[+] chrisys|6 years ago|reply
PRs welcome - we could remove the 'UK' part of the project and make it work for more cities/countries.
[+] GordonS|6 years ago|reply
As a total PI noob, it's great to see such clear and simple to follow instructions for something actually practical. Also liked the specific recommendations for the case and such - it would be really easy for someone to replicate.

Been meaning to get a PI and do something with it for years!

[+] jypepin|6 years ago|reply
wow, crazy how small Pi has become!

I remember trying to do a similar project for the bus stop at the corner of my street to know when to leave to catch the bus. It was fun, but I never really finished when I realised how big just the Pi would be (still powered by usb-a, etc).

Nice to see this one so well executed!

[+] prashnts|6 years ago|reply
I’m patiently waiting for a Pi Zero format for new Pi 4B (or something close...).

Regarding the size of B series, unless I need the ports, I almost always snip out the ports — don’t bother desoldering it, the ground plane in Pi acts as a massive heat sink. Instead, I snip slowly and carefully the metal housing of ports, and then wiggle the plastic bits until the break away. Reduces the size, and leaves sufficient space to put small modules in place.

I posted a few pictures in my previous comment here: https://news.ycombinator.com/item?id=20462711

[+] piotrkubisa|6 years ago|reply
It's overwhelming how many projects with high rate of usefulness are based on boards from Pi Zero family, not the A or B.
[+] wheresvic1|6 years ago|reply
I'd love to see a writeup of doing something like this but without any of the balena cloud stuff.
[+] jentulman|6 years ago|reply
I'm working on a pi zero version of my own at the moment. The National Rail Enquires api's (Darwin) are free to use at personal (and surprisingly large) scale. They may be SOAP but still easy enough to talk to with some simple python. https://www.nationalrail.co.uk/46391.aspx
[+] jsingleton|6 years ago|reply
Yeah, it is a nasty API for the live departures. There are much worse though!

I wrote a proxy to make it easier to use (https://github.com/jpsingleton/Huxley). Been meaning to port it to .NET Core when I find the time. There is also an old Python client here: https://github.com/HackPartners/darwinrest

You can find many more resources in the community (https://wiki.openraildata.com/ https://github.com/openraildata https://groups.google.com/forum/#!forum/openraildata-talk). We're pretty friendly, say hi.

[+] pndy|6 years ago|reply
This is great!

And it made me wonder if bus transport data in my city is available for everyone - we got few displays around, two services/applications that show the current position for each line...

[+] Avamander|6 years ago|reply
Well, technically it's available for everyone if the system has an app then the app can be reverse-engineered quite easily to get access to the API.