A Python Serial Terminal To Get You Out Of A Jam

When fiddling around with old computers, you can occasionally find yourself in a sticky situation. What may be a simple task with today’s hardware and software can be nearly impossible given the limited resources available to machines with 20 or 30 years on the clock. That’s where [bison] recently found himself when he needed to configure a device over serial, but didn’t have any way of installing the appropriate terminal emulator on his Fujitsu Lifebook C34S.

His solution, since he had Python 2.6 installed on the Debian 6 machine, was to write his own minimal serial terminal emulator. He intended for the code to be as terse as possible so it could be quickly typed in, should anyone else ever find themselves in need of talking to a serial device on Linux but can’t get screen or minicom installed.

The code is very simple, and even if you never find yourself needing to fire up an impromptu terminal, it offers an interesting example of how straightforward serial communications really are. The code opens up the /dev/ttyS0 device for reading, and after appending the appropriate return character, pushes the user’s keyboard input into it. Keep looping around, and you’ve got yourself an interactive terminal.

With this program written, [bison] was able to connect the 266 MHz C34S to his Retro WiFi SI, a modem adapter that bridges the gap between a vintage computer and modern wireless network. Gadgets like these allow you to browse BBSes as the creator intended, and can be fashioned with nothing more exotic than an ESP8266 running some open source code.

A Tiny Terminal For Your Serial Access Needs

Some pieces of computing equipment have faded away without a trace, for example a modem is not a device that detains many hackers as they strive for that perfect emulation of a venerable Hayes on an Arduino. But there are some other devices that continue to hold a fascination, even years after they departed from the professional arena. A great example is the serial terminal. Once to be found on many a desk as it provided a way into a minicomputer, it has long ago been supplanted by terminal emulators or simply other portals into computing services such as the web. But in our community there are still plenty of serial terminals to be found, for example [RedHog]’s little emulated VT220 on an ESP8266 platform.

If you were hoping for a full-green screen and keyboard to plug into a hefty D-connector serial port then you’ll be a bit disappointed, as with a tiny screen and only a few buttons on a dev board or an Arduboy it’s not going to allow any 1337 vi mastery even with its on-screen keyboard. Take a look, we’ve placed a video below the  break. But despite all that it shows promise, with ability to use either the logic-level serial port or the USB serial interface. We can see that it might find a use as a serial display though, but it would fascinate us to see what could be done were it to use the 8266’s on-board WiFi in some form. If you’d like to experiment you can do so with the code on GitHub.

This isn’t the first such terminal we’ve seen here before of course, some of them have been extremely practical, while others we just want to own because they’re cool.

Continue reading “A Tiny Terminal For Your Serial Access Needs”

Hello: A Mini Badge For CCCamp

Badgelife culture is our community’s very own art form, with a plethora of designs coming forth featuring stunning artwork, impressive hardware, and clever software tricks. But sometimes a badge doesn’t need a brace of LEDs or a meme-inspired appearance to be a success, it just needs to be very good at what it does.

A perfect example is [Gavan Fantom]’s Hello mini badge. The hardware is fairly straightforward, it’s just a small square PCB sporting a LPC1115 microcontroller, 8Mb Flash chip, piezo speaker, and an OLED display. Its functionality is pretty simple as well, in that it exists to display text, images, or short animations. But the badge hides a very well-executed firmware that provides a serial terminal and zmodem file upload capability as well as an on-device interface via a small joystick. Power comes from a 500 mAh lithium-polymer cell, for which the badge integrates the usual charger and power management hardware.

There’s a variety of possibilities for the badge, but we’d guess that most owners will simply use it to display their name with perhaps a little animation. A bit of nifty processing of some video could perhaps get something approaching watchable video on it though, opening up the entertaining possibility of displaying demos or other video content.

[Gavan] will have some of the Hello badges at the upcoming CCCamp hacker camp in Germany if you’re interested, and should be easy enough to find in the EMF village.

1970s Lab Equipment Turned Retro Pi Terminal

When it was released, the Beckman Model 421 CRT controller represented the latest and greatest in liquid chromatography technology. Its 12 inch screen would allow the operator to view critical information such as flow rate and concentration, and its integrated keyboard simplified system control. It made liquid chromatography faster and easier, allowing lab technicians to focus on analysis rather than the complexities of operating the equipment.

But none of that matters right now. What matters is that [Igor Afanasyev] found one of these gloriously vintage devices at a local swap meet and decided it deserved a second chance at life. With a Raspberry Pi and a surprising amount of support hardware, he was able to turn this roughly 40 year old piece of scientific equipment into a multipurpose device that does everything from classic gaming to multimedia playback. It’s got a few quirks, but overall this is a gadget that any hacker would love to have kicking around their modern-day lab.

[Igor] explains that the Model 412 is essentially just a dumb terminal with no internal logic, so in theory it should have been possible to just hang the thing on a serial port and be done with it. But unfortunately the display drive board was dead, so a full rebuild was in order. This meant that there’s little left of the original device other than the keyboard and the case itself, but since it isn’t exactly a “vintage computer” in the traditional sense, we think the purists will allow it.

For the display, [Igor] used an LCD he salvaged from an old digital picture frame. It was the right size to fit the opening, and thanks to an unpopulated VGA header on the board, wasn’t too difficult to get connected to the Pi with an HDMI adapter. He also added a hardware VGA scanline generator board so that no matter what the Pi shows it will have that classic old-school look; a fantastic detail we don’t usually see on builds like this.

The keyboard on the Model 412 was more of a control panel than a traditional input device, so not only does it have keycaps which say things like “FLOW RATE” and “WRITE TAPE”, but it has a fairly weird layout. After reverse engineering the somewhat unusual key matrix, he spun up a custom firmware for the Arduino Pro Micro using QMK which would let him use the board on the Pi as a standard USB input device. But rather than replace the keys, [Igor] created a little cheat-sheet overlay that he could put over the board to see what keys translate to which letters. It’s awkward for sure, but we really appreciate that he preserved the unique nature and look of the Model 412.

Like the Heathkit H19 that was brought back to life with an internal Raspberry Pi or the DEC VT100 with a BealeBone inside there’s something about the visual aesthetic and no-nonsense approach of these vintage terminals which continue to make them compelling into the 21st century.

Tiny, Wearable 8-Bit VT100 Terminal

In the modern era of computing, the end-user is often quite far removed from the machine they’re using. At least in terms of abstraction levels, the user experience of most computers, smart phones, and the like are very far away from the zeros and ones. If you need to get down to that level though, you’ll have to make your way to a terminal somehow, and reminisce fondly about the days when everything was accessed through a serial line.

Nowadays, some harmless nostalgia is often accompanied by a challenge as well, as [Nick] demonstrated with his tiny serial terminal. It mimics the parsing and rendering of a VT100 console using an Arduino Uno and a 1″x1″ TFT screen. His goal was to make it wearable like a wristwatch would be, using two buttons as an HID device. With the size and simple interface, [Nick] also explores the possibility of mounting such a terminal to a pair of glasses.

While not everyone may want to interact with a serial terminal with only two buttons, it’s certainly a great demonstration of what is possible when it comes to implementing retro software in unique ways. There have been serial terminals implemented in many other unique places as well, such as old oscilloscopes and replicas from popular video games.

PocketCHIP As A Hardware Hacker’s Terminal

Conferences these days can be tricky places to be at – especially hardware and hacker cons. If you aren’t the one doing the hacking, then you can be sure your devices are being probed, pinged and possibly, hacked. It certainly isn’t the place to bring your precious laptop. Besides, as the day wears on and your feet start aching, regular laptops start feeling bigger and heavier. What you need is a burner laptop – one that is lightweight, cheap and that you don’t mind getting hacked. [dalmoz] wrote a short, to-the-point, tutorial on making use of PocketCHIP as a hardware-hacker’s best friend when it comes to UART connections. It’s also handy to use as a stand alone serial monitor for your projects without having to dedicate a USB port and screen real estate.

The PocketCHIP is a dock for the C.H.I.P. microcomputer and adds a LED backlit touchscreen display, QWERTY keyboard and LiPo battery in a lightweight, molded case. For $70, you get a 1 GHz ARM v7 processor, 512MB RAM, Mali 400 GPU, WiFi and Bluetooth. It’s light enough to be hung around your neck via its lanyard slot. And all of the GPIO pins are conveniently broken out, including the UART pins. Right now, it’s in the hands of Kickstarter backers, but the Next Thing Co website indicates availability sometime this month.

On the hardware side, all you need to do is add header pins to TX, RX and GND (and maybe 5 V and 3 V if required) on the PocketCHIP GPIO header and you’re good to go. On the software side, things are equally easy. The UART pins are meant to provide debug access to the CHIP itself and need to be released from internal duty. Once the UART port is identified, a single terminal command frees its status as a debugging interface. After that, use any terminal emulator – [dalmoz] recommends Minicom – and you’re all set. In the unlikely event that all you have is an Arduino lying around, [dalmoz] posted a simple sketch that can be used to make sure you have it working. Great hacking tip, ’cause it is as simple as it gets. If you’d like to know more about the CHIP project, check out its documentation and Github repository – it’s all open source.

When A CRT Isn’t Retro Enough: LEDs

When we think of an old-style computer terminal, it has a CRT screen: either one of the big 1970s VDUs with integrated keyboard, or maybe one from a later decade with more svelte styling. You would have found other displays in use in previous decades though, and one of them came our way that we think it worthy of sharing.

16 segments in action. (PD) Wikimedia Commons.

[Dan Julio] was given several tubes of Siemens DL1416B 4-digit 17-segment LED displays by a friend, and decided to use them as an unusual retro display for his terminal project. These devices are an alphanumeric display with a parallel interface that can show a subset of the ASCII character set as well as a cursor. He had 213 of them, so made plans for a 64 character by 16 line display, however on discovering a quantity of the parts were non-functional he had to scale back to 12 lines of 48 characters.

The terminal in action.
The terminal in action.

The displays are mounted on PCBs in groups of four, controlled by a PIC16F1459 and some shift registers. These boards are then daisy-chained via a TTL serial line. The whole display shares one of the three serial ports on a Teensy 3.1 with his retro keyboard that has its own PIC controller, the others serving a serial printer port and the terminal serial port. The Teensy software has two modes: serial terminal or a Tiny Basic interpreter, and the relevant repositories are linked from the project page.

Since each set of DL1416Bs takes 250 mA, the whole display consumes about 9 A at 5 volts. On top of that the keyboard uses another 500 mA, so a sufficiently powerful supply had to be incorporated. This is mounted along with the Teensy in a very well-made enclosure, and the whole is mounted on what looks like a surplus monitor stand for a very professional finish.

To take us through the terminal’s features he’s posted a YouTube video that we’ve placed below the break. It comes across as a surprisingly usable machine, as he logs into a Raspberry Pi and edits a file, and takes us through some features of the BASIC interpreter.

Continue reading “When A CRT Isn’t Retro Enough: LEDs”