I scooped up an Akai APC40 on Craigslist for $80. The seller said he worked for a live production company and was using it to trigger lighting scenes before it stopped working. Plan A is to fix it and sell it. Plan B is to cannibalize the APC for parts and reuse them for prototyping. Here are pictures of the teardown and internals.
The bottom of the APC40 has a bunch of screws. Some of these screws are under the plastic feet on the front edge of the unit After removing the bottom casing, there are more screws securing the PCB to the top casing. These screws are coarsely threaded into plastic, so care was taken when removing and inserting them as to not strip the threads.
The button pads are a decent translucent material. They are secured by their weight and by some plastic posts.
The square button pads are 15mmx15mm, and the rectangular ones are about 15mmx7mm. Each button connects using the 4 pieces of conductive material on each corner. Underneath each pad is a bi-color orange/green SMD LED.
I assumed the rotary controls were encoders, and that these were just strange with 4 pins. It turns out they are actually endless rotary potentiometers. The model is “OB2.5k”, presumably a 2.5k endless dual potentiometer.
The line faders appear to be typical slide potentiometers. The model is “10KB2X2”, presumably a standard 10k slide potentiometer.
There are 16 SMD LEDs surrounding all but the Cue Level pot. The LEDs are brought to the top panel using light pipes (clear plastic tubes), arranged in a circular array. These light pipe arrays seem to be a custom part built for Akai.
On the front panel, there are translucent and solid buttons. The buttons snap into the PCB. The edge of the button touches a tactile switch soldered to the PCB. The tactile switches have a satisfying click to them. The button caps are custom built for Akai, but http://www.mpcstuff.com sells replacements of slightly different material.
There is enough room under the buttons for a through-hold 3mm LED to be mounted. The LED is soldered through the board and the height increased using a spacer. The switches appear to be compatible with Omron B3F-1000, with a 4.3mm plunger height.
The main chip presumably managing all the top panel controls and LEDs is a Lattice LCMXO256C FPGA. The other chip is a Texas Instruments AHCT541octal buffer/line driver. The line buffer might protect the FPGA from high currents required by all the LEDs.
There are a total of 3 pairs (only 2 pairs are pictured) of Texas Instruments 74HC4051 shift register chips. Since there are so many inputs (controls) and outputs (LEDs) on the top panel, each pair of 4051s may be multiplexed, their states controlled by the FPGA.
The top panel PCB is connected to the larger PCB using a 50 pin FFC cable. Another cable using a 10 pin rectangular connector is also used. The FFC cable likely carries data, while the other cable may carry just voltages (The faulty USB jack has been removed, and R36 and R37 have burnt off).
The sticker on the microcontroller reveals that this APC is running version 1.02 of the software, released on August 6th 2010. The first number may be an internal part number. The main chip is a STMicroelectronics STM32F102. This chip uses a Cortex-M3 core. The maximum speed is 48mhz and this particular model (RBT6) appears to have 128kb of flash memory, 16kb of RAM, 51 general I/Os, and 16 A/D converters (according to the manufacturer). It likely runs on 3.3v.
The left side of the main PCB contains all the necessary power components, including a typical 7805 voltage regulator and the rectangular connecters that probably provide power rails to the front panel PCB.
The right side of the main PCB contains connectors for data. The two large TRS jacks connect to foot pedals and the FFC connector connects the data lines of the main PCB to the front panel PCB. There is also a 20 pin JTAG connector.