Magnavox VideoWriter keyboard (cleanup and conversion)

User avatar
snacksthecat
✶✶✶✶

27 Aug 2018, 00:45

A few weeks back I bought this Magnavox VideoWriter keyboard from a dude on reddit. I was originally attracted to the coveted SKCM brown Alps switches that it comes with but it also reminds me of a story that my father used to tell me; giving this board somewhat of a special meaning to me.

In my lifetime I haven't seen an actual word processor IRL but when my mom was pregnant with my sister, she was finishing up her masters thesis. It was an overwhelming task as it was, but that was compounded by the fact that she only owned a manual typewriter at the time. Meaning, any changes had to be retyped which obviously was a very time consuming task. She probably wouldn't have been able to finish her final draft in time but my late father in law shipped her his trusty word processor. Revisions that would normally take days were whittled down to minutes and she was able to submit the final copy in time for graduation (and to give birth to my sister!). I think my parents will really get a kick out of this when I show them.

My plan for this board is simply to clean it up and hopefully convert it to USB, being as unintrusive as possible. I'm not aware of any available code to convert it but I'd like to take a green-field shot at it anyways.

Wish me luck!

Below are some photos of the board pre-cleanup.

Image

Image

Image

Image

Image

Image

Image

Image

Image

Image

Image

User avatar
Muirium
µ

27 Aug 2018, 14:29

Diagonally mounted switches on the arrow cross are pretty snazzy. The typography’s pretty cool too, though they did stray into “keming” with the logo on the underside. Really did think it read MAGNA/CK on first sight!

SpacemanToby

28 Aug 2018, 13:42

You could always replace the switches with matias or something. It would still work the same.

User avatar
Blaise170
ALPS キーボード

28 Aug 2018, 15:37

Why replace the switches with an inferior product?

SpacemanToby

28 Aug 2018, 15:44

My assumption was that he bought it for the switches. I guess if he's actually going to use the videowriter keyboard as a usb keyboard it wouldn't make sense.

User avatar
snacksthecat
✶✶✶✶

01 Sep 2018, 19:53

I think that converting at a protocol level might not actually be a good option.

Here's the pinout for reference:

Code: Select all

    0 - Black    Gnd
    0 - Red     ???
    0 - Yellow  Data
    0 - Green   Vcc
Image

The keyboard sends ASCII codes over the data line at 9600 baud as long as red is held low.

Unfortunately the keyboard doesn't send break codes so you'd have to handle debounce on your own. This means that there would be some delay if you want to handle held keys properly since held keys result in repeating codes sent at a fixed interval (500ms for the initial press and then 100ms apart as long as you hold it). For example, here is a held "d":

Image

I'm not sure of any way around this. It might just work out better to replace the controller.

p.s. sorry if any of this was explained incorrectly or in a confusing way. I'm still learning about this stuff.

User avatar
snacksthecat
✶✶✶✶

21 Sep 2018, 03:11

Moving full speed ahead with the controller replacement.

Image

I'll probably take a break at this point and disassemble/ultrasonic the switches so they're nice and smᗢᗝᗢᗝᗢᗝth.

User avatar
snacksthecat
✶✶✶✶

21 Sep 2018, 03:54

"Why ya gotta go and make things so complicated???"

Image

Image

orihalcon

21 Sep 2018, 15:18

Could you post a labeled picture of how you mapped the matrix to where the rows and columns come to the original IC? I'd thought about converting one of these with an Xwhatsit at some point, but hadn't mapped the PCB yet as it's way down on the to do list ;)

User avatar
snacksthecat
✶✶✶✶

22 Sep 2018, 01:44

orihalcon wrote: Could you post a labeled picture of how you mapped the matrix to where the rows and columns come to the original IC? I'd thought about converting one of these with an Xwhatsit at some point, but hadn't mapped the PCB yet as it's way down on the to do list ;)
Most certainly!

Image

Code: Select all

      987
 00000000
 
 00000000
 0123456

Code: Select all

 00000000000000000000
 
 00000000000000000000
            ABCDEFGH
Image

User avatar
snacksthecat
✶✶✶✶

22 Sep 2018, 17:33

It's probably not that cool or impressive to anyone but this is the best job I've done at fitting one of these into a tight space like this.

I probably should have used thinner gauge wire but I find it really convenient to solder jumpers to the PCB once I've figured out the row/column pins, connect it to a breadboard to map out the matrix, then just snip the jumpers to size and solder them to the teensy.

Image

User avatar
Hypersphere

22 Sep 2018, 20:47

Genuine Brown Alps (as found in your Magnavox) are great switches! Congrats on getting this venerable board going again and converted to USB!

User avatar
snacksthecat
✶✶✶✶

24 Sep 2018, 04:21

I gave the switches an ultrasonic bath and then lubed the tops and sliders with some dupont teflon spray.

Image

User avatar
ZedTheMan

24 Sep 2018, 05:55

Nice!

How are they feeling at this point?

User avatar
abrahamstechnology

24 Sep 2018, 14:07

What about socketing the controller so it can be restored in the future, if necessary?

User avatar
snacksthecat
✶✶✶✶

16 Oct 2018, 18:47

Does anyone have experience retrobriting these keycaps? I had some bad luck even with just 3% peroxide making streaks on my NEC PC-8801 keycaps (the ABS ones) and these feel pretty similar.

User avatar
snacksthecat
✶✶✶✶

19 Oct 2018, 18:54

I was getting weird ghosting issues so I had to remove all of the extra components, making reversal of the conversion a pain. I'm not sure if there's a better way to avoid the ghosting while keeping the conversion reversable.

Image

Image

User avatar
snacksthecat
✶✶✶✶

21 Oct 2018, 18:18

I'm really please with how the retrobriting turned out. In person it looks like a brand new keyboard!

Image

User avatar
TheInverseKey

24 Oct 2018, 04:15

Like always an amazing job!

User avatar
ZedTheMan

24 Oct 2018, 23:15

Great work, snacks!

genesisx

31 Oct 2018, 15:45

Great work!!! Registered just to reply :p, I just got my hand on one of these, I am wondering what would it take to make an RJ14 to USB adapter for this?

User avatar
snacksthecat
✶✶✶✶

31 Oct 2018, 16:20

genesisx wrote: Great work!!! Registered just to reply :p, I just got my hand on one of these, I am wondering what would it take to make an RJ14 to USB adapter for this?
Thanks!

It would actually be pretty simple to create a converter for this board but there would be significant limitations. The biggest problem is that the keyboard doesn't send break codes. When you hold a key, the board will send the make code followed by a brief period of science, then will repeatedly send the code as long as the key is held. This means that you would have to handle debounce in the converter which doesn't pan out very gracefully.

I started down that road originally when I got the keyboard. If you're interested, I could see if I'm able to dig out the arduino sketch I was starting to write to convert it.

User avatar
snacksthecat
✶✶✶✶

13 Feb 2019, 01:11

I did another one of these controller replacements today. But instead of wiring up everything by hand, I instead rewired the PCB so that all of the rows/columns connect back to the main IC. By doing that, a Teensy++ 2.0 fits in perfectly and you just need to use header pins. I tried this on one of the Televideo boards a few months back but it had so many lines it became unmanageable trying to remap everything. This time was a breeze! Sure beats having to wire up everything by hand :) It would have been even cleaner but I missed a row and had to account for it after the fact (the long one running under the Teensy).

Image

User avatar
swampangel

13 Feb 2019, 17:51

snacksthecat wrote:
13 Feb 2019, 01:11
I did another one of these controller replacements today. But instead of wiring up everything by hand, I instead rewired the PCB so that all of the rows/columns connect back to the main IC. By doing that, a Teensy++ 2.0 fits in perfectly and you just need to use header pins. I tried this on one of the Televideo boards a few months back but it had so many lines it became unmanageable trying to remap everything. This time was a breeze! Sure beats having to wire up everything by hand :) It would have been even cleaner but I missed a row and had to account for it after the fact (the long one running under the Teensy).
This looks so sharp.

It's nice to work on old gear where the pcb/components are sized for human hands instead of a pick-and-place machine. :)

User avatar
ZedTheMan

13 Feb 2019, 18:59

swampangel wrote:
13 Feb 2019, 17:51

This looks so sharp.

It's nice to work on old gear where the pcb/components are sized for human hands instead of a pick-and-place machine. :)
I think you may be confused, this is a Magnavox, not a Sharp.

But yeah, great job on the conversion as always!

the_ambyguous

22 Mar 2019, 04:01

snacksthecat wrote:
13 Feb 2019, 01:11
I did another one of these controller replacements today. But instead of wiring up everything by hand, I instead rewired the PCB so that all of the rows/columns connect back to the main IC. By doing that, a Teensy++ 2.0 fits in perfectly and you just need to use header pins. I tried this on one of the Televideo boards a few months back but it had so many lines it became unmanageable trying to remap everything. This time was a breeze! Sure beats having to wire up everything by hand :) It would have been even cleaner but I missed a row and had to account for it after the fact (the long one running under the Teensy).

Image
could you elaborate on how to do this? I got one of these for the switches, but when i got the behemoth of a videowriter, it had all the accessories and the keyboard fit inside the case and the keycaps had very little to no shine, the board was just in spectacular condition, and I actually rather like the case on this thing. would like to convert it for USB usage.

adamcobabe

22 Mar 2019, 11:56

I'm very interested too. Please elaborate, snacks. :) What do you remove, what do you add? Is there a way to get rid of the long wire under the Teensy? Thanks.

User avatar
Quartz64

22 Mar 2019, 20:12

Majority of necessary information is already contained in snacksthecat's post: matrix mapping (row/column position of every key) and row/column pinout on the mounting holes. I've done the similar conversion with separation of Shift keys (there were connected in parallel on the PCB) and addition of diodes for NKRO. I have a PSD file which contains photo of the PCB and color lines for every row and column trace in separate layers, but it's over 100 MB in size.
TL;DR: You remove the resistor array, the main MCU and the decoder IC which drives the rows. You need to short the 4 diodes (D2–D5) in the bottom right corner of the PCB. Optional: rewire the right Shift if you want separate Shift keys, cut the traces and add diodes for NKRO. Finally, you can use any MCU with enough IO pins (18 for 10x8 matrix).

User avatar
snacksthecat
✶✶✶✶

Yesterday, 00:31

To reroute the pcb, I unfortunately don't have exact details since I was converting that board for someone else and so I don't have it any longer. But basically all I did was line up the teensy++ on the main IC so that the 12 pins on the bottom lined up with the necessary spots. Once that was in place, I just tested each of the other pins to see where on the board they terminated. The yellow wires simply bridge the gaps between where the matrix terminates and my ad hoc traces terminate. Once those are connected, everything routes nicely back to the main IC.

I realize that I probably did a bad job of explaining this. I do have another videowriter keyboard so if you need help, I can use that as a reference to assist you.

Post Reply

Return to “Workshop”