Category Archives: Projects

DottyMatrix: a simple solution?

The DottyMatrix project began when I thought, ‘It would be nice to make use of my old Epson MX-80 F/T III dot matrix printer’. The problem was talking to it. But then I thought, ‘It’s just parallel printer interface. I’ll make a microcontroller-based device to act as an interface. How hard can that be?’. The answer, it turns out, is… Read more »

DottyMatrix: A simple acknowledgement

Although it was gratifying (and surprising) that my DottyMatrix serial-to-parallel interface worked as soon as I plugged it into an actual printer, there was one nagging flaw. And that was a lack of acknowledgement. The /ACK signal in the Centronics interface was often sadly neglected, if not ignored completely. But in theory, the sequence for printing a character goes like… Read more »

DottyMatrix: Printing to an actual printer

It seems the repairs to my venerable Epson MX-80 F/T III dot matrix printer did actually work because it’s now printing again! What’s more, it’s printing via the prototype of my DottyMatrix serial to Centronics parallel interface. Time for a quick recap. The DottyMatrix is based around an AVR ATMEGA328PB microcontroller. It takes input on a TTL-level serial connection and… Read more »

ESP8266 IoT room thermometer – part 1

Impulsiveness is not always a good thing. So here’s a handy rule for you: first, prototype; then fabricate the PCBs. Doing it that way, things have a chance of going well. Reverse that order and … well, not so much. Not that it was a disaster. In fact I had prototyped this little project – mostly. But we’re getting ahead of ourselves…. Read more »

DottyMatrix: It’s alive!

      1 Comment on DottyMatrix: It’s alive!

My old, beloved Epson MX-80 F/T III dot matrix printer is back in the land of the living. For now. As you can see from some of my earlier posts, I’m designing a serial-to-parallel interface with Centronics compatible DB25 connector so that I can print to my Epson from anything with a TTL serial port, such as a Raspberry Pi…. Read more »

DottyMatrix: ghost of the typewriter and the curse of the carriage return

In designing my DottyMatrix serial-to-parallel printer interface, I had to decide how it would handle the incoming data stream. The purpose of the DottyMatrix is to connect my venerable Epson MX-80 F/T III dot matrix printer to (probably) a Raspberry Pi so that I can print out text files, such as program listings. Obviously, it would be good if it… Read more »

DottyMatrix and Virtual Printer – together at last

It’s great when a plan comes together. Having independently played around with my DottyMatrix serial-to-parallel printer interface and the Virtual Printer (designed to simulate my still-dead Epson MX-80 F/T III dot matrix printer), it was time to hook them together. And it worked! On the left is the DottyMatrix using my prototyping board for the ATMEGA328PB microcontroller. Its serial port… Read more »

Virtual printer & more fun with AVR interrupts

In building my AVR ATMEGA328P-based ‘virtual parallel printer‘, there were two signals that required special treatment. So it was time to revisit interrupts. On a Centronics-style parallel port, the host machine sends an ‘init’ or reset signal to the printer to tell it to flush its buffers and set itself to the default state. It also sends a ‘strobe’ signal… Read more »

Building a virtual parallel printer

Here’s a tip for anyone building a device designed to interface with a parallel printer – you kind of need a parallel printer to test it on. That shouldn’t have been a problem. My DottyMatrix project – which will allow me to send data over a serial connection and have it printed on my Epson MX-80 F/T III dot matrix… Read more »

Getting to grips with the parallel interface

The Centronics interface seemed such an intrinsic part of a computer’s architecture that, to those of us whose computing coming-of-age was in the 1970s or 1980s, it seemed unimaginable that it would all but disappear. Who knew that serial interfaces would one day reign supreme? There’s something still very satisfying about hooking up a parallel connection, with fat cables and… Read more »

First PCB and more mistakes

      No Comments on First PCB and more mistakes

Okay, so I’ve already fessed up to some errors I made with my first-ever PCB. Now I’ve discovered another, and it’s a doozy. It’s also a valuable lesson. I’m waiting for a few bits of kit in order to do surface mount soldering. I’ll be writing more about this when it’s all installed (but as a teaser, it’s a hot… Read more »

6502: more fun with clocks

      No Comments on 6502: more fun with clocks

Things can get a little confusing with the 6502 microprocessor’s clocks. The datasheet details three clock pins which, for the current version of the chip are PHI2, PHI2O and PHI1O. And with older versions of the 6502 you’ll see PHI1 instead of PHI2. As I detailed in a previous post, the situation is actually simpler that it first seems. It… Read more »

Zolatron 64: riding the address bus

The Zolatron 64 6502-based homebrew computer has a 16-bit address bus and I want to be able to interact with it manually. How do we do that? The answer is a front panel with switches and lights, as outlined in the last post. But it’s going to be a bit more complicated than just wiring each line of the bus… Read more »

Zolatron 64: initial thoughts on a front panel

Any self-respecting retro-style homebrew computer needs two things – switches and blinkenlights. Otherwise, why bother? I haven’t got a working computer yet but already I’m thinking about a front panel for it. This will be inspired, to some extent, by the Altair 8800 and also by the PDP-8, both of which I have in the form of modern replica kits…. Read more »

A PCB virgin no longer

      No Comments on A PCB virgin no longer

Well, it’s happened. My first PCBs have arrived. Now it’s just a matter of summoning the courage to solder on the parts and see if it works. This is the board I designed as part of my Eagle vs KiCad series. It breaks out a Centronics-compatible DB25 socket, with the data lines being driven by a shift register. There’s a… Read more »