Pi400 in a Case Part 2

(See Part 1 here : https://hobbytronics.home.blog/2025/04/07/pi400-in-a-case/ )

Below are some views of the models for the case. The upper two part frame, you can see the LCD Controller PCB Mounting plate as well. The LCD has the front bezel, so it sits above that plate with just a bit of clearance. To the left are the “feet” for the upper frame. The top feet are 2mm shorter than the bottom feet, the middle feet at the sides are 1mm shorter than the bottom feet. The right bottom foot is modified as the USB Hub is in the way of it a bit. I made the feet like that due to the clearances being so close with the antenna and lower panel when closed. There are some standoffs and washers below as well. There are the standoffs that the go between the LCD Bezel and top frame. There were washers I put on the LCD Bezel screws to spread the pressure a bit. There is also a ring that is behind the 3.5mm audio jack that stands it off the top frame a bit for more clearance behind the frame. The little plate to hold in the latching switch for the Headphone port discussed below is not shown. There are numerous feet and in the model when I have multiple of the same type I only have a single one in Tinkercad. I’ll have to export each of the files, and put them together with some instructions and properly named. Various parts have some minor changes to the ones printed so far to fix some minor things that I have had to work around or do modifications for.

You may notice the 4 round recesses and rectangle recesses below the Pi400. The 4 round recesses are for magnets. The rectangles are for thin metal plates. I didn’t want to rely on a press fit for the Pi400, so I had a thin metal plate with double sided adhesive on it.

The screen resolution has been adjusted, and the image now fits properly, although you can’t tell by the image on the screen below. The LCD is nice and clear. The audio from the speakers is very good, I mean I am comparing to laptop speakers. There is some hum in the speakers, I do wish I had found some shielded cable for the speakers, it isn’t bad though. I don’t hear it over the audio, it is only noticeable when there is no audio playing, you can tell something is coming from the speakers. If it bothers me, I can toggle on the audio to the headphone port, and the speakers go silent. I am happy overall how everything has turned out so far. The HDMI cable opening could certainly be smaller, but if it gets bumped it isn’t likely to bind, and has good freedom of movement. I printed a RJ45 cover in TPU to keep dirt and other things out of the network jack. I might modify the 3d model and print it so it better covers the keystone evenly. It is hard to take pictures of the system, the filament is a color change PETG filament and the surface is textured and rather shiny. The LEDs are plenty bright, but not nearly as bright as the camera indicates. The little .96″ LCD is very clear in person. The Voltmeters are easy to read as well and not washed out like the pictures. I did swap them, the upper one was originally the 5V meter, but as I am using a Green LED for the “Main power” Switch indicator, I wanted the Green meter for the 12V power reading. The 5V fluctuates a little, and the changes can be distracting, with it being the lower meter, it is less in view. I also swapped that lower meter with a Red one, the blue one was way to bright. The 5V Power LED indicator is also Red so that now matches too. The 12V Power switch indicator LED is actually a yellow or amber, but I didn’t have matching color volt meter. The LoRa Radio power indicator LED is a bit of an orange and not as piercing as the photo indicates.

Headphone Jack The RCA and 3.5mm Audio jack just was not going to work like I wanted it to. The RCA is oddly tied to the “BNC” input mode instead of “AV1”. The 3.5mm Audio Input jack is connected only to the VGA Input. The Audio input won’t work without a video input signal.. The 3.5mm Headphone Jack, is one with the built in detect/disconnect switch. I thought a little about changing the wiring on the 3.5mm jack that I already installed to having 2 RCA connectors and keep the “BNC” AV Input option. Thinking about it though, adding a working Headphone Jack will likely be more useful. To add a working Headphone jack, I had to add a latching button to switch between the internal speakers and 3.5mm headphone jack. Below you can see the two small wires soldered to the “switch” pins. They go to a small latching push button switch 8.5mm/8.5mm. The hole is the same hole as the RCA jack was in, I made a frame to hold the latching button. The frame has 2 holes in it for heat set threaded inserts for the locking bar/plate. I had the tolerances tight, so I didn’t have to add the plate as the button is so tight. I just glued the frame into place. I also created a Black TPU button cap. The buttons actually came with some button caps, which are nearly the same size as the TPU one, but I wanted it in black to blend in. The pack of latching buttons I had ordered is no longer available and the ones I found now and linked below do not include the button caps. I then added the frame for the button to the 3d model for the upper panel. That does make it so the RCA jack would no longer work there, but prevents having to glue in a part (which takes careful alignment, and the glue may fail at some point). I was doing the AV Video input so that I would use the monitor for some other devices. It is annoying it couldn’t be used just for audio only, so that also made me more prefer to switch over to just having a headphone jack. I am thinking about adding a 3.5mm TRRS Jack, which is used on some modern knockoff game devices with Composite output. That could be wired into the internal RCA ports. It would take either a custom breakout cable or such though for anything I want to use with it. That would probably be 3 RCA ports to a 3.5mm TRRS. Doing a single RCA and a 3.5mm Stereo Audio jack would also often require a 3.5mm to 2 RCA jacks for the audio.. It is all compromises, 3 RCA ports would be the most basic and least likely setup to require having adapter cables on hand.

Adding a Realtime Clock Module was fairly easy. I removed the preinstalled header pins to slim down the board a bit, then I soldered on one of the 4pin “Grove” connectors that I picked up for the .96″ LCD. Then I backed it with some Kapton tape, and more of the strong Velcro to hold it into the bottom of the case. The Kapton tape again is to protect the RTC Module if I have to remove the Velcro, as the adhesive on it is so strong I am concerned it may damage the RTC, but the Kapton tape will not damage the RTC if I remove it. Beyond that enabling the Pi400 to use the module only required adding “dtoverlay=i2c-rtc,ds3231” to the config.txt on the pi.

Making and installing the Battery Module Mount. I made the battery holder to use 2 of the unused threaded inserts below the keyboard frame. It holds the battery a bit loosely, which I didn’t want it too tight, I may put some padding of some type to keep it from rattling around. There are 2 threaded inserts in the main body, then the lighter locking bar there screws in to keep the battery from falling out. Screw placement isn’t great, but I can easily work a 2mm Allen wrench in to install the required screws. The bar didn’t fit easily, so I have adjusted the tolerances on it to make it easier to install. It looks a like it might not be super strong, the battery is light for the size of it, and the top rail is boxed in at the front with the keyboard support rail. The battery holder is a little bit short. I didn’t want it putting pressure on lower panel, but with it in, I feel the Pi400 doesn’t fit as well, as it can’t flex as much? You can see the placeholder model of the battery pack in some of the pictures. The slightly revised battery holder and locking rail shown in the screenshots are stronger than the one seen in the photos below. Even so, the one I printed seems plenty strong, I just improved the holding rail and the back of the holding box is now slightly thicker. The rail is not actually in the photo, as I didn’t have the threaded inserts or battery in it yet.

This now feels like a much more complete project with the battery mounting finished and the battery installed. There are always more things to do, and things that can be improved. I would like to have made provisions to mount the RTC module, the Fuse Holder and INA219 discussed below as well. I would like the 5V converter to be attached to the panels, as it isn’t as easy to take it apart now. Some of the wires could be worked out to be a better length as I left everything a bit extra long. There is no cable management inside or ways to tie things in place. It is a bit difficult, in that there are a number of modules and such that were not initially going to be part of this project. The Pi400 did not fit quite right, I have revised the model and printed the revised model, it now fits much better. I also added a screw to hold the one “loose” leg to the connecting wall in the lower panel.


Adding a Fuse and Current/Voltage Sensor. Adding a battery level indicator.

The Battery is listed as rated for 3A, and the charger around that, and the INA219 current and voltage sensor being also rated just a bit over 3A. I figured I should add a fuse to the project. I have some of the bulkhead type holders, but space is a bit of a premium. They are fairly tall, and I could only place such a thing in the upper right corner of the lower panel, and then it would just barely fit. I looked around for some inline fuse holders, and came up with some for automotive blade type fuses, which are often 12V usage as well so that should be fine. They also can be purchased in a 3A rating. I found a good model on Thingiverse.

I also installed the INA219 module inline. It is wired up with a 4pin Grove connector to connect into the GPIO breakout board. I had found a widget meant to work with it. It hasn’t been updated in 2 years, and I can not get it to work at this time. Using the same interface they used I was able to verify that INA219 module is working and getting readings as expected. It seems I need to come up with a solution of my own. I can come up with something to display on the .96″ LCD. It won’t be as elegant as the widget.

I ended up using code from mklements’s OLED_Stats to run the .96″ status LCD. It worked great for the normal stats, there was a variant for a UPS, but that was a specific unit, and not based on the INA219 module. I have virtually never worked with Python and have limited experience with Linux. I spent a good part of the afternoon and a bit yesterday trying to sort out how that code worked. I do like some things that were done on it. I had to work out how to interface the INA219 with that code, eventually I settled on using the Adafruit INA219 sample code. Without being familiar, I modified the INA219 example code to output the information I needed in the format I required. It seems someone familiar with it, could do this in nearly no time at all. I worked it out to give me a Battery Icon based on the battery level, a relative % of charge, and the current draw. There is nothing fancy, and I am sure the relative charge is not very accurate. I verified the battery shuts down just below 9V. I the Monitor will run at 9V, the 5V regulator works at that level too. I will see how it goes and probably adjust the values. It runs for several hours on the battery, based on the battery capacity, and the current usage reading, it could be up to 5 hours with a SD Card, but it is a bit less with a USB 3 connected SSD Drive. The battery charges quite slowly. I rewired how the Charge jack is connected, and now the INA219 can read when it is charging the battery, which means I could rework the scripts a bit and change the battery icon to a charge icon.

I will see about cleaning up and posting the code up on Github.

Then just two spade crimp connectors and some wire to put it inline. I recommend testing your connectors are griping the fuse legs well, and that the wires are crimped solidly to the connectors. “Loose” wires or poor connections create resistance and generate heat, and can be a real risk. My crimps were very solid to the wires, but as the plastic bit is already removed, I did then solder the wires to the crimp connectors for added security. I had several types of these spade crimps, and some gripped to the fuse legs better than others. This model uses a single screw to hold it together. It is not secured in the case, with the small wire shown in the right photo, and the other wire attached to the ground lead, it doesn’t move around a lot. It is light even with the fuse in, the fuse is securely held in it. It would certainly be possible to make the screw hole a through hole and secure it into some form of mounting location somewhere if you wanted to.

It would be nice to rework the design to properly secure the INA219, the Fuse, the RTC module, the 5V Step down module and a SSD Drive. I believe to do that I would look at redesigning the “Legs”. The Legs have been designed to be minimal, they stand the panel off of the case bottom, but in the main cavity below the Pi400 they have a bit of height to them. They could be widened to mount smaller modules to the “wall/leg” and in some areas even have a mounting plate that extends from them with threaded inserts for larger items like the 5V Regulator and SSD Drive. That would make a plate there in the bottom to screw the various modules into. The plan is so that the whole panel could still be lifted out of the case as a single unit without having to detach any wires. With it fitting well with the legs that I have on it currently, and that it is resisting falling out, adding that weight may make it not be so secure so I might then glue certain legs placed around could into the case, then it would just require removing the “correct” screws to get it to release the panel and all the modules as a unit.

I am going to put the Meshtastic setup in it’s own post. It doesn’t seem there is a guide that covers the Adafruit radio, at least any I can find. I expect it will be easier for someone to stumble across if I make it a dedicated post, and I will cover as much of the wiring and installation as I can. I’m not very familiar with Meshtastic at this point, so I will cover what I can on the setup, but I am sure I won’t cover everything possible. It may be a bit until I post the Meshtastic setup post, as it is not working well, and I am not sure if I have something wrong, or have a bad antenna or radio. I am currently doing a fresh install on a SSD and will see if the new install leads to any changes, as well as setting up some additional Meshtastic radios locally at relatively short ranges to see if they are received properly. I only have one other radio right now setup, and being 20′ away from the Pi400 is not a good test. I am in the middle of nowhere for Meshtastic, and down in a low spot. I can’t get line of sight and out of the area right now.

With the additional items I covered here after the initial post, the project has all the expected features in place. The main thing is the Pi400 keeps wanting to pop out of the panel because it is too tight. I did make provisions for attaching two small metal plates to the Pi400 and 4 magnets in the 3d print to hold it, but it just won’t go into the opening properly, I don’t think the magnets will be able to help. I may go to the trouble to reprint the main panel in the hope that it will fit better after the changes I made. I have enough filament, but it is color change filament, and may not be at the right point in the spool to match the other panels well. It was not a good idea to use a color change filament for the project. Provided the Pi400 fits the revised panel properly, the 3d models files are complete, to the point that I plan to complete them. I have no other known issues remaining with the models. Granted again, mounting the 5V regulator, the little I2C modules securely would be nice, some wire management. The only feature I did not put in that I initially planed is the SSD drive (as of starting this second post). I am doubtful that anyone else would print and build this with compatible parts, but maybe if someone get the same case, they could use the models as a basis to make modifications to.

I would like to work out some GPIO accessibility. The question there is always, well what do you want to be able to access, and where is it going to be placed. “Maybe” it would be possible to do a 40Pin into the “wall”, keep it protected when not being used by using a cover, such as shipped with the Pi400 (well shipped with 2 of the 3 I purchased). I would be concerned about the very limited visibility to ensure that any wires are attached to the correct pins. Making choice of another connector which won’t have the full compliment of pins, requires keeping that pinout handy, and finding a place for that connector to be installed. Then whatever that connector is, to have a way to attach to it. Yes I have seen using of the round Military spec connectors, which are huge for their pin count. More normal Din connectors are still low count, and get large and expensive. They may be good if various modules are design to work with the system, but for prototyping and development I feel they aren’t very flexible.

Additional Primary Parts used/added in this post.

DS3231 I2C Realtime Clock module https://www.amazon.com/dp/B09LLY8KRC

INA219 I2C Current and Voltage Sensor module https://www.amazon.com/dp/B091DRHL79

3.5mm Audio Jack https://www.amazon.com/dp/B0D2XKGM5P/

Latching Button 8.5×8.5mm https://www.amazon.com/dp/B01MU8ST7D/?th=1

Apple IIGS Additional Cleanup and Testing

Case Cleanup. I removed the RF shield from the inside of both IIGS case top covers. I wiped down the RF shields, and then I washed the case tops with some 409 cleaner and a brush in the tub. The next day once the cases were dry, I reinstalled the RF shields into the case tops with some UV Resin to replace the plastic melted rivets that I had to cut away.

RF Shield Reinstalled with some UV Curing glue where the plastic rivets had been.

The RF shields rust easily and already have some rust on them, so I didn’t want water all over them that I couldn’t readily dry off quickly.

For the working keyboard, I removed all of the keys that don’t have stabilizer bars. I then brushed out all the dirt, hair and dust from the keyboard. I then used the air compressor to blow out what was remaining. It didn’t look like anything had been spilled in it, so it cleaned up well. I don’t know how the stabilizers remove, so I didn’t want to risk removing them. I cleaned the keyboard with Windex and IPA as well as the remaining keys. I took all the loose keys and put them in the tub, spraying them down with 409 and a brush again brushing all 4 sides and the top. Then I rinsed them off well, and laid them out on a towel to finish drying. The next day they were dry so I used the other keyboard as an example to be sure I had all the keys reinstalled properly on the keyboard.

The cords including power cord were wiped down with Windex to get the worst of the dirt off, and a bit of touch up with some 99% IPA.

For the Color and Monochrome monitors, I opened both up to check them internally. I was checking for RIFA caps, which neither had. I was also checking if there were any problems that could be seen. There were no obvious broken solder points or evidence of leaking capacitors. Unfortunately the Color Monitor’s flyback case is cracking around the Focus control. I wiped out a bit of dirt and dust. There wasn’t anything else that I saw of any concern in the monitors. I also cleaned the case backs with 409 in the tub, and dried them out. The front of the monitors, I just cleaned with windex and paper towels.

The next day I was able to check the Monochrome display, I was waiting to ensure no water was in the monitor and that it was all closed up. The display worked normally. I don’t know if it is dim or anything. It looks fine to me, but I don’t use CRT displays often and my memory from when I was using Apple IIs in school has been way to long ago to be helpful. Internally the Monochrome monitor looked like it may not have been heavily used.

Testing the Monochrome Monitor with an original disk.

I now have a single IIGS in working condition with a 5.25″ Disk drive and Monochrome monitor.

It looks pretty good, but with the texture of the plastic, it still has dirt in the texture. I think there is a chance that simple dishsoap and a good scrubber would get some more of that out. That is what I usually use, but this had mouse filth all over it. I have seen people use Mr Clean Magic Erasers for such things, but they are actually abrasive, so I want to limit their use, I may give it a try, but they are over 30 years old, so they aren’t expected to look brand new, by me at least. I figured as bad as it was the 409 would do well, but it really was not as effective as I was hoping. There is some yellowing, and the old id number badge left a non yellowed spot above the logo that stands out a bit.

I do have the Color RGB Monitor cleaned up, but I have to make up a cable for it. Making cables takes time, and I’ve been working on some other projects. It is missing the back feet as well, so I will 3d print some new ones in TPU. It is also missing 1 of the “front feet”, which are a bit weird, and because of the front bar that tilts the monitor up it doesn’t rest on the front feet. The Monochrome monitor has what looks to be the same foot setup, so I figure if I can use them to measure up to quickly model replacement feet.

I also have the second keyboard to tear down and clean. That keyboard also has a few keys not moving properly, I don’t know what that might involve to correct. I have the other two 5.25″ disk drives to tear down and clean and service internally. I don’t need those two drives at this time, and I have cleaned the cables and outside of the cases.

The work on these items is mostly cleaning, and testing the items. The Power Supply did need some work, and the second keyboard has issues. The other Power Supply I am not going to be doing anything with at this time as I don’t need both IIGSs.

TI 99/4a Mitsumi to Cherry MX Keyboard

When I purchased the TI 99/4a Computer a few years ago, the keyboard was not working properly. I had ended up with one of the Mitsumi based keyboards with the membrane that degrades. After taking it apart to separate the stuck membrane on the keyboard, it still wouldn’t work properly. The best option for me at the time was to get another TI 99/4a that had one of the other keyboard types in it as many of these Mitsumi membranes have failed.

There were other modern replacement keyboards for 80s era (well late 70s for the TI 99) computers, but there wasn’t one for the TI 99 that I had been able to find at the time. I looked over the Mitsumi keyboard, it is very similar to the Commodore 64 Mitsumi keyboard in construction. The plungers look to be identical to the Commodore 64 except they are white plastic instead of black. The “pads” on the bottom of the plungers are different though, as these work with the Membrane not with carbon pads like on the Commodore 64. The frame is the same style, and I expect it is possible the springs are the same or close enough to use. The Spacebar spring is not the same as the rest. There were projects for the Commodore 64, so it needed a PCB design, and maybe adapting the key “adapters” that were used for the C65. That was well beyond my current abilities (and probably still is).

I decided to buy another TI 99/4a with one of the “other types” of keyboards. I ended up with a TI 99/4a with a Hi-Tek brand Stackpole keyboard. The Stackpole uses square tubes that the keys insert into that tend to split at the corners. I do have some split tubes in my keyboard, but it was working fine. I did have concerns the stems would split worse with use. Shelby of the Tech Tangents (at the time still called AkBKukU) on Youtube worked on restoring another Stackpole type keyboard and released a 3d model to print new tubes for the keyboard. I printed one on my 3d printer and it turned out great. So there are options to extend the life of the Hi-Tek Stackpole keyboard. The keys may not work as good as new, but they should be reasonable.

With the keyboard issue sorted, I shelved the idea of coming up with a new Keyboard PCB. I didn’t like I had an otherwise completely functional TI 99/4a sitting unusable on the shelf though.

I recently came across a project to rebuild the Mitsumi 99 keyboard with Cherry MX Style mechanical key switches. https://github.com/visrealm/keyboard4a99 I watched the Youtube build guide. I have worked on various keyboards, and the project is quite strait forward. It is designed specifically to rebuild the TI 99/4a Mitsumi keyboard, which is what I needed. It reuses the keycaps, the spacebar supports and clips, as well as the keyboard cable and some support rails and screws.

I expect with a bit of work, that it could be adaptable to use the Hi-Tek/Stackpole keycaps. It would take a different Stackpole to Cherry MX Key Adapter (I found one, but I don’t know that key height would be correct https://www.thingiverse.com/thing:4735119) You would also require making some metal support rails. I believe the keyboard “cable” is shorter on the Hi-Tek, so you would probably be making a new one. The visrealm project has an alternate spacebar support clip, which may work with it, depending how the spacebar works.

He has the Bill of Materials in the Github post. As of right now.

We need the original Mitsumi type keyboard to get the Keycaps, and Metal support rails with screws. Then optionally the keyboard cable (which I used), and the Spacebar Clips to put into his inserts. There is an optional version of replacement Spacebar Clips, but there is no point in me leaving those on the old keyboard, the same with the cable it can be recreated but there is no point in that for me.

My bad Mitsumi Keyboard

Then we need the Keyboard PCB. I downloaded the Gerbers from Github and uploaded them to JLCPCB. He recommends black to reduce seeing the PCB through any gaps between the keys, so I went with black.

5 new PCBs

We need 47 Cherry MX Compatible switches. I wanted Brown Switches, as they are my preferred type. I know there are now many other “colors”, but I don’t know anything about the colors other than red, blue and brown. I like a reasonably quiet switch, and I like the tactile feedback of the brown switches. I went with the cheapest option for me to get enough brown switches, which was to buy one of those 60% keyboards for $20. It was cheaper to buy that keyboard on sale than it was to buy 50 loose key switches.. I was sure to buy a keyboard with removable switches. It was a bit of a pity to strip the keyboard. It seems to be made well enough, but I don’t like the form factor. I will keep it for the few remaining switches, or incase one of my kids wants a keyboard of that style. It will be easy to repopulate it.

Parts Keyboard for Switches..
I now have enough loose key switches.

I needed a 8mm latching switch (compatible with the GPBX-800L at Mouser) for the Alpha lock, which again I went to Amazon, as I don’t have a need to place an order with Mouser. I now have 19 spares, and 20 of some three other variants. There is also a 1N4148 diode for the Alpha lock mod to keep the Alpha lock from letting the joysticks work. Which I have plenty of in my stock.

I used some M3 Brass inserts. It mentioned 10, where there are 3 for each of the “PCB mount rails”. I take it the other 4 are for the Spacebar support mount, but the ones to reuse the Mitsumi spacebar clips do not have the larger holes to accept the Brass inserts. I used M3x8 machine screws, for in the Brass Inserts as well as for the Spacebar mounts. The holes for the Spacebar mounts are for self-tapping screws, but the M3 machine screws went in fine, and actually were nearly too tight.

We need to 3d print the PCB mounts for each side, the Alpha lock, the PCB support backers (2), the Spacebar supports (2). The Keycap adapters (46?), there is a model that you can print them all at once, I did find them annoying to get apart but they were usable. There is also a unique Keycap adapter for the Spacebar (supposed to be a little different), and a unique one for the Right shift. I printed the parts all in PETG. I did make sure they were not brittle, during assembly and testing I had no issues with any breaking in my case. I did print “outer walls” first, this kept the cross on the top sized properly and kept it from stringing between the crosses.

The various 3d printed parts.

I have to have the Mitsumi keyboard pulled from the TI 99. Which is 7 screws in the bottom to open the case. Then 2 to release the power supply board, 3 to release the main computer pcb and housing, and 4 screws to remove the keyboard itself after unplugging it from the computer pcb. The guide on Github shows all the screws and steps.

Next I striped down the Mitsumi keyboard. Desoldered the wires from the Key lock switch. Then I unscrewed the metal support rails putting them to the side to reuse later.

Starting here. First I will remove the metal rails to reuse. Then the remaining screws.

Then I took the rest of the screws out to release the PCB. Next I used my desoldering iron to remove the keyboard cable. Just a little note on the cable, “pin 1” is Not the Red side of the cable. Keep an eye on how it is installed and reinstall it in the direction it was on the original pcb.

Cable to be desoldered.

While the PCB was off, I removed the spacebar and took out the Spacebar support clips.

Spacebar, Spacebar clips, and Keyboard cable. (and 8 key)

While I had the Mitsumi keyboard in storage, I had broken the 8 key stem. I had to get the broken stem top out of the 8 key without damaging the key. I used a 1/16th” drill bit to drill a hole in the broken stem top. Then I screwed a small screw into the 1/16th” hole, and used a pair of pliers to carefully pull the part out of the keycap. The screw was only screwed in a short distance, if it is too big, or in to far, you may wedge the part in tighter.

Getting the broken stem top out of the 8 key

I then took the screw out and used some super glue to glue the key stem back together, it may or may not hold up, but I also don’t expect the keyboard to get keycaps again.. After that I screwed the old keyboard back together. I will keep it for parts. If you don’t put the PCB back on, when the keycaps are pulled off the key stems will just fall out everywhere.

Stripped Mitsumi, and springs.

To start building up the new keyboard. I mostly followed the video guide. First I took the Metal support rails and added Kapton Tape to the bottom for insulation. The guide he used clear tape, and suggests maybe 2 layers. The Kapton Tape is much more durable, and is a proper insulation tape it you happen to have it. Note that the rails are “turned” compared to on the Mitsumi, using the “other holes”. I lined them up with the white lines on the PCB Silkscreen.

Kapton Tape for Insulation.

Once the rails are insulated they get installed with the 6 original screws, into the 3d printed support rails that are basically just to hold the screws.

Then I installed the Spacebar Supports. You can also see the PCB Mounts with their brass inserts installed. I was checking that they were going to fit properly. The PCB Mounts were added after all the key switches were soldered in.

I soldered on the keyboard cable next.

I started soldering in the switches. It is recommended on Github to get the key switches with the extra support pins in line with the center posts. The switches I purchased did not have those. It did make soldering them in strait a bit more difficult. I did work to solder them in strait as possible, which I did have some issues with. If they are perfectly strait, well the keycaps will still be crooked… well in my case they were. While I don’t know the reason for them being crooked, once installed, it has something to do with the 3d printed adapters.

To solder the switches, I started with the spacebar and went across the rows from there. I didn’t do it the way the guide showed. I am sure they would have been very crooked, maybe if I my switches had the additional alignment pins it would have been too bad. I ended up using Silly Putty to keep the keycaps in place and strait when I flipped the keyboard. With just one Silly Putty egg, I could do a full row. Though when I started I was using larger clumps of it as seen in the photo below.

The 0 key switch ran into the edge of the one 3d printed screw rail. I had to shave just a tiny bit off the rail to get it in strait.

So now the soldering is completed.

The soldered keyboard. The Spacebar Clips are installed. Tested the 8 Key.

So we did the key adapters. I printed out the grouped file. Then I had to cut them apart. I used Cura which did something weird to the one layer. Cura was reliable, but Orca indicated a better outcome, but I couldn’t get it to print successfully.. So It came down to using a new sharp Xacto blade to cut the adapters apart. When I had rough edges, I cleaned them up with the side cutters or Xacto blade.

The spacebar has a slightly different adapter. The Alpha Lock has a different type of cap. Then the Right Shift has a special centering double pin adapter.

So then I went through all of the keys separating the adapters and installing them. The key switches are quite strait, although not perfect. Though once installing the keycaps with the adapters they end up not aligned very well. They look to have printed well. I expect it is due to variations in the inside stem that goes into the Cherry MX type switches. The seam on the outside may have also affected them and made them rotate a bit. The stems are rectangular, so you have to be careful to not have them rotated 90 degrees, as they may “force on” but will bind. They may have been more consistent if I had been careful to not rotate them 180 degrees, but that was hard to tell.

Below is the completed unit ready to be installed. If you click on the front view, you can possibly see the P key is obviously twisted. The angle makes it hard to tell how numerous of the keys are twisted a bit.

Next I installed the keyboard. The keyboard is the lowest part of the 99 or rather the highest part. The keyboard must be installed before the Computer PCB and under the Power supply PCB. First I lifted the loose computer out of the way just enough to drop in the keyboard behind it, so that I could get the keyboard screws in properly. Then I lifted the computer up to plugged in the keyboard to the computer assembly. Then I screwed the computer and finally the power supply PCB. After that the bottom gets screwed back on. Finally the outer part of the Power Switch piece slides back into the case.

Finally the TI 99/4a has the new Cherry MX style replacement keyboard installed.

The P is kind of obvious from the angle again. There are other keys twisted a bit. I tested the keyboard before reassembly of the computer. All the keys work as expected including the Alpha Lock. The only issue, is the Enter key must have a clearance issue, it is partially press. I may pull the 99 apart to recheck it. It is only partially pressed, so it isn’t stuck down, and it still operate normally except not raising fully to the expected position.

As far as the project, it is great. The oddity is with the 3d printed key adapters. Others may have less problems with that and not have keys twisted noticeably. The key switches with the extra alignment pins may be a good idea and speed up assembly. The Alpha Lock switch doesn’t have “much” travel, it is not very obvious that it is pressed by looking at it. It does work fine.

I did have an issue with the Spacebar initially not wanting to raise up, it was binding a bit. I loosened the 3d printed supports and managed to get the alignment better. This may also be due to “twisting” related to how my adapters printed.

The keyboard feels great to type on. I was able to put the Hi-Tek Stackpole type keyboard back in my spare TI 99/4a making it complete again.

I hope to make some time to use the TI 99/4a. I think I’ll put away the Commodore 128 for a while so I can have the 99 hooked up and see if I can get familiar with it.