Not quite the same scale but one of my personal favourite stories involved hardware buried under a highway. The Ethernet stopped working, but the PoE was still ok. We had the foresight to install a serial line to the console on the equipment too. This meant that I could power cycle the hardware at will (through the managed PoE switch) and talk to the boot loader (U-boot) over serial. While not exactly a REPL in the conventional sense, it had enough functionality to be able to talk directly to the MAC and PHY to determine what was going on.
Sadly we couldn’t convince it to work, even at 10 Mbit. My suspicion is salt water ingress into the vault. What we did manage to do, though… There were just enough tools installed on it that I could cross-compile zmodem at home, convert it to a hex file, upload the hex file by essentially just running cat > on the target, convert it back into a binary using… Perl I think? Or xxd? And then doing the daily data offload over zmodem every night instead of over TCP as was originally planned. It was a crazy weekend…
Neat. I’m curious about long run serial as someone who’s only done arduino stuff at 5V, what does industrial serial talking over a miles long connection look like? Higher voltage? Repeaters?
Often, though evidently not in this case, people use RS422, which is differential, so you can get megabits per second or kilometers, though not both. Shared-bus RS422 is RS485, like LocalTalk or DMX512. The voltages are actually lower than the ±12V normally used by RS232. Converting back and forth between RS232 and RS422 is easy and cheap. https://www.ti.com/lit/an/slla070d/slla070d.pdf is a TI appnote with an overview.
Ahhhh it was standard RS232 which uses -12V and +12V instead of the 0-5V signalling that TTL serial uses. Otherwise very similar and easy to convert with eg a MAX232.
A lot of machines that use u-boot wont give you a prompt unless you connect them from a serial connection. Ideally, these ARM VM8850 and up based netbooks should have a u-boot prompt with a keybinding. Also, it would be far better if they had an Open Firmware (Forth) based BIOS.
Sadly we couldn’t convince it to work, even at 10 Mbit. My suspicion is salt water ingress into the vault. What we did manage to do, though… There were just enough tools installed on it that I could cross-compile zmodem at home, convert it to a hex file, upload the hex file by essentially just running cat > on the target, convert it back into a binary using… Perl I think? Or xxd? And then doing the daily data offload over zmodem every night instead of over TCP as was originally planned. It was a crazy weekend…