Search This Blog

Tuesday, September 9, 2025

Nostalgic computing weekend

 I got a bit nostalgic last weekend playing with old PC motherboards. Previously I made some metal frame for mounting HDD on standoffs.  I guess you could call that minimalistic open air PC with nothing other than a bare PSU on the side. . It gets tedious having to disassemble the frame to swap HDD. So I designed and 3D printed 2.5" HDD mounting hardware with HDD caddy.  

2.5" removable Caddy on old Dell P4 motherboard

The design is split into a few smaller pieces on top of a frame over the front right hand corner of an ATX motherboard.  As there are no standards other than the mounting holes, some adjustments to the frame might be needed.  

I opted to skip one of the standoffs to allow for long video cards. I even recycling my failed caddy design prototypes. I had to make some extra clearance for the thick power cable.

One of my old 2.5" to 3.5" adapters have no mounting holes and the other one has a flimsy plastic hood.  So  I printed PCB holders blocks for them. I glue them with 0.5mm thick double sided silicone adhesive tape.  

I had to do some cable origami to line up the correct orientations for both ends of the connectors.  This allows me to swap the caddy without having to mess around the cables and connectors.  I used the secondary IDE connector to free up the primary connector.  Thankfully that the PC BIOS is flexible to boot.

My initial design has 2 mounting screws that doubled as stops for the caddy.  I have made some latches with straighten paper clips for the pins.

I broke the fan blade in my DIY Dell Dimension 3000 heatsink fan. I had glue it back together with super glue and baking soda. To prevent future accidents, I printed a resized High-efficiency Noctua 120mm fan grill .  Sadly it has some mechanical interferences, so I had to trim off part of the fan grill to make the latch work.  There was no problems with my other motherboard or the same motherboard without the fan mod.

Sketchup and stl files are available in my github page

It is probably a good idea to use PETG for the frame and connector block as the PLA screw threads and fittings would loosen over time.  Threaded inserted could be an option for PLA if there are extra clearance on the motherboard for larger standoffs. There is no reasons why the rest of the pieces couldn't be glued together.

I've just found out that Amithlon runs perfectly on current revision of VirtualBox 7.1.4 r165100.  It was one of those things I kept trying for each of the VirtualBox major revs.  There was something funny about their SVGA driver.  

Amithlon has issues with more than 1GB RAM.  Probably the upper address bits were being used in the emulation for something else.  So that pretty much limited it to much older PC or running in a virtual machine.

It feels snappier than my Barton XP3000+ CPU.  This is nothing short of a miracle considering the emulated Picasson96 SVGA driver on the Amithlon MC68040 emulator on a linux kernel in a VM running its emulated (finally working) VGA driver.

My setting:


Monday, August 18, 2025

Corsair R100 Drive Caddy replacement

I broke the other ejector handle of the drive caddy yesterday.  Both of the handles broke off separate times at roughly the same spots where they narrow out for the stubs.


I have made some reliability changes to the ejector handles.  They are now separate and uniform so the bending stress is spread out over the entire length. The cut off part of the rail also acts as a stop for the levers.

I have very little reasons to mount a 2.5" drive on the same caddy as the SATA connectors do not line up with my Corsair 100R Hotswap style drive bay upgrade.

Files at my github project page

Thursday, August 14, 2025

PC drive bay mod

One of my PC is in an old case reused from a previous machine.  It was from the old days before long GPU was a thing. Between the GPU and tower CPU heatsink, I loses 3 HDD bays due to mechanical interferences.  

What I wanted is to rotate the drive bays by 90 degrees with the connector side facing side of the case so that they can easily be worked on.  I have decided to take matters into my own hands literally.

Not the first time I modded something in this PC.  I have swapped out the USB 2.0 connectors with USB3.0 on the front panel and Intel heatsink mounting brackets on my AM4!

My new PC case sort of does that and they even have removable drive bays. At the last minute, someone decided to put the connectors other side of the case so you'll still need to open up the panel on the other side to plug/unplug the cables.  They could have done the minimal like what I wanted by simply rotating the drive so that the connectors are accessible at the front.  See my Corsair 100R Hotswap style drive bay upgrade for how it could make swapping drives easier.  Obviously the OEM could have easily sold an optional $50 midplane upgrade.

The before picture

I removed the drive bays panels by drilling through the 8 rivets that held them in place.  I used my Dremel with a cutting wheel to cut and trim the panels into 2 sets - one for the 2 bays for the front and the other for 5 bays that are rotated by 90 degrees.

The thick cutting wheels I bought from aliexpress are great.  The 2 disc lasted enough to finish the job and finally broke when they were worn down to a bout 1 cm in diameter and got caught.  A bit of clean up with a rough file for finishing/deburring and the panels are good enough to be used.

A bit of free hand work with a Dremel cutting wheel

The front drive bays are mounted back where they belong.  They are short enough that they don't need additional supports.  The problem is the much taller panels that needs some for bracing on the cut ends.

I designed a 2 parts drive bays for a removable 2.5" SSD that is also mechanically strong enough to be used as bracing.





The bay is printed vertically with the blocked side on the plate.  4 large 6-32 nuts are inserted into the slots at the back.  The large nuts provide a lot of contact are and help to spread out the forces.  

The caddy is printed as is without support.  Here is what they looks like printed in PLA+.  The opening and the standoffs allows for some air to reach on the bottom side of the case.  The hexagons allows for some flexing of the studded sides for screwless mounting.

It took a lot of trial and error to get the cantilevers working with the right stiffness and those silly mounting studs to be of the right shape/length and sizes.  The latches handles are still too flimsy, but the latches are deep enough that they are locked.


Here is a picture of one the the early mechanical fit test.  They are a bit claustrophobic as the two bays barely missed the other.  The printed part was stiff enough for bracing the cut panels, so I didn't have to look for additional supports.


There are too many places I could mount the drive bay as portions of the bottom case have raised shaped for added mechanical strength.  I have to use piece of FR4 to raise the mounts. This is actually the second  mounting spot as it left just enough clearance for a 15mm fan.   It reminds me of the Simpson diagram of carving a Puffer fish.


This is what my new drive bays look like.  There is enough clearance of 28.5 cm for a long GPU.  This leaves just enough space for my new GPU (in my other PC). B580LE : 272 mm x 115 mm x 45 mm


Top drive bay shows how much space the 3.3" HDD would take up before the modification.  The clearance of old drive bays was so bad that it would interfere with even the shorter GPU I have.  There isn't a whole lot I can do for really long GPU in this tradition PC case.  My newer case has the PSU on the bottom and cleared up space to the edge of the case, so it can take really long GPU that have broken the PCIe mechanical specs.

Now I can add/replace HDD and the connectors  as they are easily accessible from the side of the case. 


Now I just need to order a 120mm x 15mm fan.

Files at my github 3D page.

Monday, August 11, 2025

Dockstar cooling mod

Doctstar relies on natural convection for cooling.  It has cooling vents on the sides and a "chimney" of vents at the top. Both it and the docked HDD can get quite warm if left running for a while.

I have designed a forced air cooling system.  A small 40mm x7 cooling fan is used to draw exhaust air from 3 vents at the left, right and the chimney. The air exits at the back side of the HDD.

The air vent draws air from the front part of the case near the CPU and its DDR memory.


Here are the result after idling at 30.4C room temperature for 20 minutes.

Temperature is taken with an IR thermometer after running idle for 20 minutes at room temperature of 30.4C.  

The 3D printed design is made of 2 parts that can be glued together.  The part holding the fan acts as a lid that is glued onto the vent.  The 40mm x 7 fan is friction fit to the assembly.  There are 2 flat surfaces - one along the top part of the cradle and one that make contacts with the top of the case.   I used 3M VHB tape on them to attach the assembly to the Dockstar.

The 5V fan wires is routed through the air duct  and spliced to the USB connector for power.  I have also modified the case to bring out the 3V TTL serial port from the 2mm headers.

My USB HDD case is a bit smaller than the Seagate one. I have designed an insert for the cradle that sits next to the serial port.  There is a slot that allows for reflection of the light from the HDD status LED. 



USB driver status LED

Files are upload to my github 3D project directory.


Sunday, September 1, 2024

Charger adapter for Xbox 360 battery pack

 

The battery charger in the Xbox 360 controller isn't exactly robust.  From time to time it would stop charging the NiMH battery pack.  This is a quick and dirty hack for a temporary charger that helps to charge the battery pack so that it can resume normal charging again.

I made this adapter from a 2 cell screw driver charge cradle.  Ironically there are no fancy electronics for charge termination.  The charger uses a small transformer and rectifier diodes without filter capacitor.  I would not recommend leaving the battery pack on the cradle for more than a few hours.

Charging indicator

I added a charging indicator.   The output voltage is a tad bit high for my liking. The negative terminal of the battery pack has a silicon diode in series for a bit of voltage drop and as a way to detect charge current. During charging, the transistor monitors the voltage drop across a silicon diode and turns on the high efficiency green LED.



I measured the dimensions of the cradle and the battery case using a slide caliper and 3D printed their counterparts using PLA+.  The cradle contacts are small strips of iron that was used to crimp the mesh bag for my onions.  The battery contact was dremel out from old ISA slot with 0.1" pitch. 
`
The small PCB is soldered to the contacts and sit directly over it.

Metal strips from onion bags are used as
the contacts  for the drill cradle


The previous version was hand made from an old dental floss case and through hole parts

Files are released on github