Tag Archives: interface

SmartParallel: laying out the PCB

We’ve been here before, but now it feels like we’re finally getting somewhere. The long-running saga that is my SmartParallel serial-to-parallel dot matrix printer interface is nearing completion. Well, maybe. Having solved (I think) the back-powering problem, and with a prototype that I believe actually works, I’ve decided to call Rev 2.0 of the design schematic the final version. All… Read more »

SmartParallel: stripboard prototype – now with blinkenlights

Okay, so the next stage of the stripboard prototype for the SmartParallel serial to parallel printer interface went well. Mostly. As planned, I added a bar LED block with eight segments to show the state of the data lines, along with power-limiting resistors in the form of a resistor array. I also added four LEDs. Three are driven via a… Read more »

SmartParallel: stripboard prototype

Things went from bad to worse with the breadboard prototype of the SmartParallel serial to parallel printer interface. All was fine for a while. Lines of text sent from my Mac via an FTDI cable were duly printed on the Epson MX-80 F/T III dot matrix printer. But then, every now and again, the printer would randomly reset. After a… Read more »

SmartParallel: pulling up and pulling down

It’s never a good idea to let signals float around in the no-man’s land between the high state and the low state. This is why we so often use pullup and pulldown resistors. You set the line to a known, definite state by default and then switch it as necessary. Some uses of pullup and pulldown resistors are obvious. Some… Read more »

SmartParallel: breadboard prototype

A major reason for doing breadboard prototypes is to learn what mistakes you’ve made in your circuit design. Of course, it’s also a way to introduce brand new errors. Or both. Before committing to fabricating PCBs, I wanted to check out whether my design for the SmartParallel dot matrix printer interface would even work. My confidence was reasonably high because,… Read more »

SmartParallel: hacking a Centronics connector

Okay, I lied. Having ordered the PCBs for my Centronics breakout board, and also having ordered a couple of DB25 breakout boards via Ebay, I settled in for the long wait I knew would follow. I said in an earlier post that I was getting used to these two to three-week delivery times for stuff coming from China. The truth… Read more »

SmartParallel: Centronics breakout board

Creating a full breadboard version of the SmartParallel board is turning out not to be a five-minute affair. It has to be done meticulously and methodically if it is to have any value as a prototype. Fitting it all on to a single breadboard is proving challenging too. And that got me thinking. What about replicating at least part of… Read more »

SmartParallel: First complete PCB layout

Well that wasn’t easy. Finally, the SmartParallel TTL serial to parallel printer interface has a complete PCB layout. And I learned a few lessons along the way. The most important of these, perhaps, is that when assigning signals to the pins of a microcontroller during the schematic drawing part of the project, don’t rely on whimsy or the luck of… Read more »

DIY joystick for the BBC Micro – part 1

My recent PC build was undertaken partly to allow me to play Elite: Dangerous. There was no small amount of nostalgia involved in that decision: the original Elite was one of the few games I played back in the 8-bit days. But while I can now play the two incarnations of the game – separated by 30-odd years – side-by-side, there… Read more »

Sheldon robot: remote control

      No Comments on Sheldon robot: remote control

With any robot, it’s always useful to have some form of remote connection, if not full remote control. The question is how to achieve this. By the way, in this post, I’m definitely in ‘thinking out loud/workshop notebook’ mode, because nothing described here is finished. I’m just playing with concepts. Now, when I mention ‘remote control’, I’m not talking about… Read more »

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 »

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 »