Wednesday, April 22, 2020

Arduino LTC1660 Octal DAC demo

I was looking for a breadboard friendly DAC with lots of outputs, and decent resolution.
I found the LTC1660. It can be had for under $10, features 8 outputs, and 10 bit resolution. This should be good enough to control VCOs over a handful of octaves.

There seems to be a single example of how to use it with an arduino, but it doesn't spell out the SPI connections. Without SPI, you're limited to slow, CPU intensive communication. With SPI, I was able to get an example program to output at around 180kHz. This will be much slower in practice, but it shows the potential of the chip.

Below are the connections and code:


#include <SPI.h>
#include <stdint.h>
const int pinCSLD = 3;
const int pinCLR = 9;
 
void setup() {  
  pinMode(pinCSLD, OUTPUT);
  pinMode(pinCLR, OUTPUT);
   
  digitalWrite(pinCLR, HIGH);
  digitalWrite(pinCSLD, HIGH);
  SPI.begin();
  SPI.setClockDivider(SPI_CLOCK_DIV2);
}

void loop(){
  for (int i = 0; i < 1024; i++) setDAC(1, i);
}

void setDAC(uint16_t address, uint16_t value) {
    uint16_t h = address << 4 | value >> 6;
    uint16_t l = value << 2;
    PORTD &= ~(1 << pinCSLD); //LOW
    SPI.transfer(h);
    SPI.transfer(l);
    PORTD |= (1 << pinCSLD); //HIGH 
}

Saturday, April 11, 2020

Korg KR-55 Recap Guide

I'm repairing my second Korg KR-55 drum machine. They both had a ton of failing electrolytic capacitors that needed replacing. In the first machine, the capacitors had leaked and damaged the board. In the second, one had failed and shorted, causing the snare, hihats, and cowbell to not work.

Recommending "recaping" as a general fix, is something of meme now. It's no joke on the Korgs though. I advise replacing all the electrolytics in them, so I made a the following images and lists to help.

The logic board only has a few capacitors. The 470u are the large, axial type, and don't seem to be an issue. They're listed for completeness.
Name Value Voltage
C21 .33u 50V
C1 10u 16V
C22 470u 25V
C23 470u 25V

Here are the relevant capacitors on the sound board. They're color coded by value.
Red = 1u / 50V
Org = 10u / 16V
Ylw = 100u / 16V
Grn = other

Here are the footprints on the bottom, to help with desoldering. These are not coded, because they should all be removed.

Here are the types and totals of capacitors:
Value Voltage Total
.15u 50V 2
.22u 50V 2
100u 16V 5
10u 16V 14
1u 50V 14
47u 16V 1

Here are the individual capacitors, and their function in the circuit. This can be helpful for debugging.
Name Value Voltage Role
C59 .15u 50V Low Conga
C60 .15u 50V Hi Conga
C49 .22u 50V HiHat
C61 .22u 50V Tom Noise Audio
C50 100u 16V Cymbal Power
C52 100u 16V Hat Power
C106 100u 16V Power
C107 100u 16V Power
C123 100u 16V Metal Power
C20 10u 16V Bd, Sn Power
C21 10u 16V Bd, Sn Power
C51 10u 16V Cymbal Power
C71 10u 16V Tom/Conga Audio
C72 10u 16V Tom/Conga Power
C73 10u 16V Tom/Conga Power
C98 10u 16V RS/Clav/CB Audio
C99 10u 16V RS/Clav/CB Power
C100 10u 16V RS/Clav/CB Power
C101 10u 16V RS/Clav/CB Power
C103 10u 16V Mix Audio
C105 (C05) 10u 16V Power
C112 10u 16V Noise
C114 10u 16V Noise Power
C2 1u 50v Bd Trigger
C5 1u 50v Bd Audio
C10 1u 50V Sn
C13 1u 50V Sn Audio
C16 1u 50V Sn Body Audio
C18 1u 50V Sn Audio
C54 1u 50V Low Conga
C55 1u 50V Low Conga
C64 1u 50V Hi Conga
C65 1u 50V Hi Conga
C90 1u 50V Claves Audio
C95 1u 50V Cowbell
C108 1u 50V Noise
C111 1u 50V Noise
C19 47u 16V Bd, Sn Power