-
Notifications
You must be signed in to change notification settings - Fork 1
Home
The PLabs Player is a DIY all-in-one audio appliance based on an inexpensive thin-client PC running Voyage Linux . The device is controlled by touch buttons, volume knob and LCD. No monitor/other PC needed.
The device is turned off/on by the PC power button configured to suspend to RAM/resume. As a result the start takes about 10 - 20 seconds. The root filesystem on the CF card is mounted read-only to avoid file corruption at abrupt poweroff and to maintain the CF card lifetime.
The PC is fitted with:
- Class-T amp (powered by another PSU) <- internal soundcard line-out -> Speaker delay circuit -> speaker terminals
- slimline CD/DVD drive with SATA(IDE)/USB adapter -> internal USB header
- 1.8" TFT LCD -> Arduino SPI
- 4 touch buttons for control -> TTP224 board -> Arduino digital pins
- Volume pot -> Arduino analog input
- Arduino board -> Serial port -> MAX3232 adapters -> RS232 port internal header
##Thin-Client PC FS Futro S450/S550/S550-2, available in large quantities on Ebay for about 15 EUR incl. shipping.
The great power-consumption comparison for various thin clients https://gothian.wordpress.com/leistungsvergleich/leistungsvergleich-linux/ reveals this particular model does not have the lowest power consumption among the generally available thin clients. But there are other criteria:
- The internal space of the case allows adding both an amp and a slimline CD/DVD drive
- The front panel just fits a 1.8" TFT LCD and a volume button.
- Coming with 1GB RAM/1GB flash drive
- The machines I have purchased from various german sellers on Ebay.de have always looked brand-new, no scratches
I have had several Tripath amps and always liked their sound for the price. The TK2050 from ebay for about 15 USD incl. shipping just fits the case perfectly:
Ebay offers several variants of the amp, I prefer the one with 8 caps by side.
The drive just fits into the upper half of the metal cover.
Either IDE or SATA will do, with corresponding USB adapter. The IDE drive with USB adapter costs approx. 12USD incl. shipping.
There are several different boards produced, we need the one with no extra space above and below the LCD, e.g. http://www.ebay.com/itm/1-8-Serial-SPI-TFT-LCD-Display-Module-ST7735B-IC-PCB-Adapter-For-Mega2560-R3-/152287159888 (approx. 5USD)
I find touch buttons the easiest decently-looking controlling element for DIY. The TTP224 4 Channel board costs 0.60USD on aliexpress.
The four touch pad are made of regular black M3 bolts for a few cents.
Any 1 - 5kOhm linear potentiometer with an appropriate knob.
Common chinese clone Arduino Mini Pro 5V (!) running at 3.3V (1.5 USD incl. shipping). The 5V Arduino Mini Pro is clocked at 16 MHz (while the 3.3V version at 8MHz). We need maximum performance for fast TFT refresh - the 5V arduino runs just fine at 3.3V.
I ordered cheap tiny chinese MAX3232 boards (1USD for 5pcs incl. shipping). After a long struggle my scope showed the RS232 output voltage pump gets influenced by incoming RS232 signal, basically "looping" the signal back to the RS232 RX pin. The board tested did not work properly in duplex mode. Adding another board for the other direction solved the problem for almost no cost - i.e. two boards, each in simplex mode for one direction. Since then the communication was rock solid.
I could not make the RS232 port work with DTR properly (it kept resetting arduino). As a result only TX + RX lines are used/converted. Arduino is programmed from a development machine by using proper USB-serial adapter with the DTR pin.
Eventhough the amp offers multiturn trimpots for zeroing output DC shift, it produces amn ugly bump at power-on. Simple 555-based delay circuit with relay powered by 5V from the PC solved the issue completely.
I tried really hard to solve ground loops within the PC to be able to supply the amp from the same PSU as the PC itself. Unfortunately no measure worked satisfactorily (thick grounding wires, multi-stage filters, regulators).
The amp must be powered by another power supply. It turned out a regular decent switched-mode brick works just fine. In order to avoid power consumption when the machine is off (suspended to RAM), the amp power supply is disconnected from mains by a relay powered by 5V taken from the PC.