When you have a microcontroller or other microcomputer on the bench in front of you and it lacks the familiar keyboard and display of a modern desktop computer, what do you do when you wish to program it or otherwise issue commands? Unless you are a retro computer enthusiast who longs for a set of Altair-style toggle switches, the chances are you’ll find its serial port and attach a terminal.
Serial terminals, devices containing a screen and keyboard hooked up to send and display text from a serial port, used to be a staple of computing, but as standalone devices, they’re now rather rare. In most cases nowadays using a serial terminal will mean opening up a terminal emulator in your modern OS, Linux, Windows, or MacOS, but there is still a use for standalone hardware. [Kuldeep Singh Dhaka] certainly thinks so, because he’s making an extremely nice portable terminal with an LCD screen.
The terminal emulates a venerable DEC VT-100 terminal, but since it’s built around an STM32F105 ARM microcontroller we’re sure it could emulate other models with appropriate software. It takes either a USB or a PS/2 keyboard, so we’d expect to see it paired with a suitably tiny portable keyboard when it in use. There is no source code available for it yet since this is very much still a project in development that we’re featuring now because it is a 2017 Hackaday Prize entry, but he assures us that code will be on its way and it will be GPL licenced.
He’s even posted a video that we’ve placed below the break of the device in operation, connected to a machine running MicroPython. We’d probably turn off that beep, though.
If you’d like to see a real VT100, here’s one we showed you receiving a BeagleBone. But if home-made terminals are your thing, then a LED screen is where it’s really at.
This got me thinking.
I don’t need much more than something that reads a serial port and prints the output. I could hook it up to all my Arduinos as needed to do portable debugging.
Has anyone done this yet?
http://hackaday.com/2010/05/07/reuse-that-pda-as-a-wrt-terminal/
Yes, I did it.
I used 2 uarts so I could display the traffic in different directions with two colors
http://www.electrobob.com/ser-show/
It turned out to be a very useful device.
Video here https://www.youtube.com/watch?v=TQqiZ45koOs
I wrote a simple python script to run on my laptop to snoop on both directions of a UART, and show both directions interleaved:
https://gist.github.com/RoganDawes/1042a316a9d320d5e2ff
I also wrote a variant that runs on a Teensy 3, using two of the three built-in UART’s, and outputs the various bytes read via the Teensy USB serial port. Handy for the cases where you don’t have two independent USB-UART’s, or don’t wish to deal with multiple connections. It also had the option to trigger a GPIO on a keypress via the USB-serial UART, which is useful for remote reset which could otherwise require a button press. (Or even if you just don’t want to have to take your hands off the keyboard! :-) )
The same idea works really well with the Teensy (or any other USB-capable Arduino, I guess) as a USB-Serial adapter, using a single hardware UART. Trigger reset via the Break signal, or by toggling DTR, etc.
I’d love to find a simple bluetooth UART that can be trivially attached to most console ports. I.e. Vcc, Gnd, Rx, Tx is a really common header (with variations in ordering, of course), this should be enough to drive a low power bluetooth interface.
I guess there must be people without drawers stuffed full of Palm IIIs, 320LXs and the like….
I made a Bluetooth serial monitor so I could use my smartphone as a serial terminal: http://www.galacticstudios.org/blueprintf/
I submitted it to Hack-a-day a couple years ago, and a couple of times since (when they posted similar things on HAD) but they ignored it. :-( Maybe if it’s not on hackaday.io, they don’t want to promote it.
Great project!
Yeah, I’m liking this one. Why have yet another screen, when you already carry one around with you? Bonus? Built in keyboard.
Would Adafruit’s open source Bluetooth connect work?
https://github.com/adafruit/Bluefruit_LE_Connect_v2
(Love the lady and her crew)
Nice project indeed, no idea why HAD didn’t feature it.
Neat…. can prooly find a use for that….
Oh.. and anyone with OBD-1 cars, 95 and older, you can probably get raw data from the ECU with that, and after years of scratching through tech docs and manuals, write your own app for speed sensor, temp, etc data display.
Are you selling them? I’d buy one for sure.
Sorry, no. But the schematic, gerbers, and firmware are freely downloadable.
Hmmm… beats me. Looks like a sweet little project: an autobauding Bluetooth serial dongle. Totally useful. No idea why your Blueprintf didn’t catch an editor’s fancy. Maybe I’ll right that wrong right now…
I do the same thing with an ESP8266 over WiFi, because WiFi is the lowest common denominator wireless layer and my laptop doesn’t have Bluetooth without a dongle that I always forget at home. :)
One can never have too many serial connections!
As for the “not on .io” idea: no way! Submitting a decent project for the Hackaday Prize is pretty much a guaranteed writeup, but most of our posts come from the “outside world”.
Hi Elliot,
Since I have your attention, check out http://www.galacticstudios.org/vectrex32smartcart/. Also previously deemed not sufficiently interesting for HAD.
– Bob
That looks really neat! Keep going!
Used to do that with my palm. hp journal, and with the old 486 laptop to connect to my nslu2. Sadly they are all gone now.
Is this really “pocket”? It needs an external keyboard, which isn’t that pocket. It would be nice to have either a small keyboard on a detachable module or an on-screen virtual keyboard (the LCD is a resistive touchscreen).
Adding a slot for SD cards and supporting it in the firmware would be a good idea too, perhaps turning the terminal into a small picture viewer or a music player.
This could also be used without the keyboard as a display with built-in controller and support for simple graphics and UI, like Nextion screens or FTDI video chips.
“an on-screen virtual keyboard (the LCD is a resistive touchscreen).” Oh yea, the new design has a 800×480 px lcd, maybe the lower half of the lcd can be used as keyboard. thanks for the input.
i also thought on a small keyboard on a detachable module, that is why i gave extension connector in new design to be able to add new hardware functionality.
And using it as HMI screen isnt in project scope atm, lets see.
Needs 80-column though.
New design (atm working on) will have 80 columns.
Isn’t a VT100 supposed to have 24 lines with 80 characters per line?
Yes, but emulators would allow you to scroll back and forth.
There are a lot of programs with menus in a fixed position on the screen, while the rest was scrolling, like the WordStar text editor, or even “graphical” games that draw the game graphics using text characters. All these require an 80×24 VT100/VT52 in order to display properly. Otherwise, a lot of the best tools and games from that era will be unusable.
“That” era? There’s still stuff recently written, console mode partition tools etc.
I owned an old Osborne computer (luggable)
The cheap surplus monitor those used required constant scrolling (WordStar and Calcstar included)
They just mapped it to memory and scrolled back and forth in memory to display the screen.
New design (atm working on) will have 24 lines with 80 characters per line.
+1
Are you still working on that?
I usually just use a small dedicated ASCII VGA terminal based box. Add a keyboard and a small 7 inch monitor and it does VT52 or VT100. Source code available, and uses PIC32 main chip. http://www.siliconchip.com.au/Issue/2014/July/Micromite%2C+Pt.3%3A+Build+An+ASCII+Video+Display+Terminal
No, the source code is not listed on the site and the site prevents you from searching the page with Ctrl+F! Fuck that noise.
The author is Geoff Graham, here is his site. You can buy the boards from the article, and source the chips from most electronics houses. Here is the schematics and the source code location. You can buy the programmed chips or do your own if you have a PIC programmer. I have built 5 of them, and modified the source for various things, it has multiple keyboard regions along with multiple output configurations, and uses USB not db9 connections. Also is one color output (hardware select-able) only. http://geoffg.net/terminal.html
I’ve been using a HC-06 and a terminal app on my phone for years now.
Includes a keyboard, logging, cut&paste to email etc.
There is always stuff like this: http://www.brielcomputers.com/wordpress/?cat=25
I’ve always needed a serial monitor that will listen to Rx and Tx, so for many years I’ve used an old Husky 486 ruggedised ‘laptop’ which has 2 rs232 ports and runs of it’s battery for ages. I bagged two of these for £20 10 years ago. Back in 1990 something, they were £2500 a pop!
Does anybody know where I could buy something like this? I could really use a few for work debugging and a pre-fabbed one would save me a lot of time. Thanks, pretty cool project!
Tim