Teardown: Microboards Orbit 3 CD/DVD duplicator

I have been building an automated CD ripping machine for a while now, and during the research phase I stumbled upon some commercial solutions developed by Microboards Technology. The older designs are made by Champion Duplicators Inc. which Microboards acquired in 2000.

Overall view of Microboards Orbit 3.

The loading mechanism used in these devices seems quite novel, so I decided to buy one on eBay for further studies. I could possibly use some of the parts in my own design as well – I have first-hand experience in how tricky mechanisms are to get to work right.

These units weigh about 12 – 15 kg – therefore the shipping from USA was not cheap! The dimensions are 388 x 254 x 241 mm. While the volume may seem big, it does contain three optical drives which take a lot of room.

Without the sheet metal cover.
Serial number sticker.

The loader mechanism is based on a big servo which pushes a spring-loaded metal sheet. Basically the metal sheet has a circular opening, which gets aligned with another hole when the servo moves it. The other hole is not perfectly round but has some flanges on the sides, ensuring that only one CD gets loaded per stroke.

Close-up on the loader mechanism.

Underneath there is a spindle which moves up and down on a rail. This moves the CD vertically. The trays of the DVD drives have slots cut in them so that the arm of the spindle can move even when the tray is open. The red and black wires on the left belong to the limit switches of the spindle arm carriage.

Lower part of the loading mechanism with the spindle.

When the CDs have been processed, they go to a conveyor made of polyurethane belt. As the unit is quite old (some parts have a manufacturing date of 2006, others 2009 and 2010) the belts have already gone bad. When the unit was powered on, it would not pass the self-test because the belt of the spindle arm was slipping.

The unit has three IDE drives, two of which can record. The third one can be used to read the master disc which the two other drives write. Obviously using two drives instead of one is faster.

The optical drives.

The unit also has a hard drive. According to the manual it can be used for ripping audio CDs.

IDE hard drive.

There are two controller boards. One of the boards sits on top of the whole unit, and is used for interfacing to motors and limit switches.

Interface board, connected to motors and limit switches.

The main board is buried under the optical drives. It boasts a handful of CPLDs and an FPGA.

Location of the main board in the unit.

The entire thing is powered by a beefy APS power supply.

Power supply specs.
Power supply.

As I have no use for a device which makes a zillion copies of a CD I am planning to use some of the parts of this unit to create my own ripping station. The brains will get replaced by a modern single-board computer and I will reduce the number of drives to just one. I am also trying to get the volume and the power consumption of the device down.


Bad product design: Wharfedale DX-1

When I moved to a new apartment a few years ago I decided to get a 5.1 home theater system. Wharfedale Diamond speakers are quite nice so I decided to get Wharfedale DX-1 home theater. I have been pretty happy with it except for one major annoyance – the amplifier inside the subwoofer tends to break when I move the subwoofer for cleaning.

Broken Wharfedale DX-1 amplifier module, based on TDA7294.

I changed the TDA7294 chip the first time this happened, but now I think that I will get a class D amplifier module from China and use it instead. I will post some pictures when I complete the mod.

Making an usable solid state relay

Using a microcontroller to control a device which uses mains power can be dangerous. There are products which try to overcome this problem, but I think they still have a lot to improve. If we take a look at the Sparkfun catalog, the Beefcake Relay requires you to find a safe enclosure for your project. On the other hand, the PowerSwitch Tail  comes in a nice enclosure but supports only American power plugs. Moreover, the low voltage connector is a screw terminal which is slow to mate and de-mate. Industrial solid state relays, like eBay Foteks, also require a proper enclosure.

Finding an enclosure which has suitable dimensions is quite easy, but there is quite a lot of boring work if you want to use connectors instead of just running a cable through the enclosure wall.

DIY solid state relay used to turn the heat bed of 3D printer on and off.

Recently I upgraded the heatbed of my 3D printer so I had to figure out a solution to this. I decided to use Schurter 4300.0301 for the mains connection and a 5.5mm DC plug for the low voltage connection. The circuit board, which implements the functionality from the application circuit of the MOC3043M datasheet, is soldered directly to the terminals of the mains connector. The whole thing fits nicely to a Kradex Z56 enclosure.

I hope decent commercial MCU controlled mains switches emerge soon.

Boot selector for Amiga

Over the holidays I had once again the pleasure of tinkering with my friend’s Amiga 500. This time helped him with flashing the HxC firmware to his Gotek floppy drive emulator which he had mounted in an external drive case. The flashing went smoothly, but in order to be able to boot from the Gotek device the Amiga needed a hardware modification.

This came as no surprise as we had done our homework. There are multiple products in the market but I did not really like them as they connected the IC pins to a DPDT switch with a long wire in order to swap the signals in pins 13 and 14. The CIA ICs are getting rare, and although unlikely, killing one with ESD would ruin the day. Moreover, the required switch type greatly limits the selection of switches and mounting methods one can use to make the solution as neat as possible. The prices of the existing solutions are also quite high if you consider the shipping costs as well.

For those reasons I created my own design. It is a really simple solution which uses a 74HC153 multiplexer to do the switching. The top side of the board has a precision DIP socket for the even CIA. The bottom part has the turned male pins for plugging the whole thing to the original IC socket. The circuit will draw its power (approx. 2 mA) from voltage supply of the CIA chip.

Amiga Boot Selector can be bought in my Tindie shop:
I sell on Tindie

Adding input auto-select for Scythe SDAR-2100 amplifier

I have a Sonos system set up at home. The Play:1 speakers start to play music whenever I press the play button on the Android control app; however, the Connect units which hook up to my existing amplifiers need something different. For my AV receiver I solved the problem using Python SoCo library and Marantz telnet interface. For my PC amplifier Scythe SDAR-2100 I had to think of something else as it does not have any control interface.

Front panel without lid.
Front panel without lid.

I took a look at the amplifier and noticed that the preamplifier board is separate from the power amplifier. Therefore I decided to replace the preamp with one that sniffs the inputs and changes the input if needed. As a bonus that way I could get rid of an intermittent volume control potentiometer.

The circuitry is nothing fancy; Arduino Pro Mini takes care of all the processing involved; PGA2311 is used for the volume control. Inputs are amplified with a pair of LM358 op-amps and then fed to the A/D converter of the AVR. A bank of relays takes care of switching the input. Switching regulator AM1D-1205DZ generates the +/-5 V rails from the 12V rail. As a bonus I use the AVR to pulse width modulate the backlight of the VU meters (the black/red cable in the photo).

Modified preamp board.

The trickiest part of the project was to design the PCB layout so that all the potentiometers, switches and connectors meet up with the main PCB and the holes in the enclosure. It involved a lot of measuring. I also experienced some software bugs which resulted in some VERY LOUD output… luckily I tackled those quite quickly.

Overall view of the circuitry.
Overall view of the circuitry.

While I had the amplifier in bits I also replaced the horrible stock speaker jacks to better ones. Overall I am very happy about how the modifications turned out. I no longer have to turn any knobs in order to play music from Sonos!

Arduino core memory shield is ready and for sale

Hi all,

after three hardware iterations my core memory shield is now finished. I am selling it as a kit on Tindie.
I sell on Tindie


Here is all the material related to the kit:


Thanks to Ben North and Oliver Nash at corememoryshield.com for the inspiration and encouragement!

Building a ferrite core memory, part 2

My ferrite core memory is progressing nicely. I have received the PCB and assembled it for the most parts.

Core memory shield without sense circuit

This evening I tried out how the H bridges worked – after a few tweaks in the Arduino code I was able to get this sequence out:

Bit read values from an array of cores.

The only remaining things are to assemble the sense line circuit and to do the final testing and tweaking, which will most likely take a long time.

Building a ferrite core memory, part 1

A while ago I ordered some ferrite cores from Bulgaria in order to build a vintage memory out of them. Yesterday I managed to build a one-bit memory by following what Wayne has done.

Writing 1,0,0 to memory which was in state 0. Enable pulses in yellow, sense line in cyan.


Now that I have an understanding of the technology and the characteristics of the cores I have I will continue to build a 32-bit version in the form factor of an Arduino shield (my own twist of this project).