Sunday, December 12, 2021

Kay Tremolo Schematic

 
And remember don't be like Leo,
 
Tremolo is modulation in amplitude, 
Vibrato is modulation in pitch.

Wednesday, October 20, 2021

The Stromer Mutroniks Superfuzz


 

Tuesday, August 24, 2021

Yashica Electro 35 Pleather Pattern

I made a pattern and replaced the fake leather on my Yashica Electro 35 GT.

 




 

Wednesday, July 28, 2021

Basic Arduino MIDI Drum Sequencer

Here's a simple-ish 808/606 style MIDI sequencer. I'd been looking for something like this for years. But most projects were either too complicated or used the arduino to also make the sounds. 
So yeah, the one I'm making for myself is more complicated, but here's something to hopefully get you started. 
 
I'm no programmer, but it seems to work.



 



//Simple MIDI Drum Sequencer 1.0 by Åke Strömer
//July 27 2021

#include <MIDI.h>
MIDI_CREATE_DEFAULT_INSTANCE();

//----------- IN & OUTPUTS ----------

//-------------MatrixMux-------------
#define clockPin 3 //Pin connected to RCLK/SH_CP/SHIFT REGISTER CLOCK     pin 11 of 74HC595
#define latchPin 4 //Pin connected to SRCLK/ST_CP/OUTPUT REGISTER CLOCK   pin 12 of 74HC595
#define dataPin 5 //Pin connected to SER/DS/INPUT                        pin 14 of 74HC595

//---------Knobs and Switches--------
#define clk 2

uint8_t SwRow[4] = {6, 7, 8, 9};

#define shiftSw 10
#define resetSw 11

uint8_t seqLength = 17;
uint8_t trackNr = 0;

//------------ MIDI -----------------
// 808              BD  SD  LT  MT  HT  MA  RS  CB  HH  OH
//                  0    1   2   3   4   5   6   7   8   9  10  11  12  13  14  15
uint8_t note[16] = {36, 38, 40, 41, 43, 39, 37, 56, 42, 46, 48, 50, 52, 54, 56, 58};
uint8_t midiCh = 1;

bool clkProgress = LOW;

uint8_t editMode = 0;
uint8_t stepNr = 0;
uint8_t seqNr;
uint8_t scanStep = 0;
bool dispStep[17] =  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0};
//          [TRACK][STEP]
bool currentSeq[16][17] =
{
  // 0  1  2  3  4  5  6  7  8  9  10 11 12 13 14 15 16 SEQUENCE NR 0
  {0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0, 1, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0},
  {0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0}
};

bool resetState = 0;
bool shiftState = 0;
bool lastShiftState = 0;


long time = 0;
long debounce = 300;

void setup()
{
  MIDI.begin(midiCh);
  for (uint8_t i = 0; i < 4; i++)
  {
    pinMode(SwRow[i], INPUT);
  }

  pinMode(latchPin, OUTPUT);
  pinMode(clockPin, OUTPUT);
  pinMode(dataPin, OUTPUT);
  pinMode(shiftSw, INPUT_PULLUP);
  pinMode(resetSw, INPUT_PULLUP);

  seqNr = 0;
  attachInterrupt(digitalPinToInterrupt(clk), isr, RISING);
}

void loop()
{
  mux();
  readButtons();
  if (clkProgress == HIGH)
  {
    stepNr++;
    clkProgress = LOW;
    for (uint8_t i = 0; i < 10; i++)
    {
      if (currentSeq[i][stepNr] == 1)
      {
        MIDINoteOn(i);
      }
    }
  }

  if (stepNr >= 16)
  {
    stepNr = 0;
  }

  for (int i = 0; i < 17; i++)
  {
    dispStep[i] = 0;
  }
  if (editMode == 1)
  {
    dispStep[trackNr+1] = 1;
  }
  if (editMode == 2)
  {
    dispStep[midiCh] = 1;
  }
}

void readButtons()
{
  shiftState = digitalRead(shiftSw);
  resetState = digitalRead(resetSw);

  if (resetState  == LOW && shiftState == HIGH)
  {
    stepNr = 0;
  }
  else if (resetState  == HIGH && shiftState == LOW)
  {
    editMode = 1;
  }
  else if (resetState  == LOW && shiftState == LOW)
  {
    editMode = 2;
  }
  else
  {
    editMode = 0;
  }
}

void MIDINoteOn(uint8_t noteNr)
{
  switch (noteNr)
  {
    case 0:
      MIDI.sendNoteOn(note[0], 127, midiCh);
      MIDI.sendNoteOff(note[0], 127, midiCh);
      break;
    case 1:
      MIDI.sendNoteOn(note[1], 127, midiCh);
      MIDI.sendNoteOff(note[1], 127, midiCh);
      break;
    case 2:
      MIDI.sendNoteOn(note[2], 127, midiCh);
      MIDI.sendNoteOff(note[2], 127, midiCh);
      break;
    case 3:
      MIDI.sendNoteOn(note[3], 127, midiCh);
      MIDI.sendNoteOff(note[3], 127, midiCh);
      break;
    case 4:
      MIDI.sendNoteOn(note[4], 127, midiCh);
      MIDI.sendNoteOff(note[4], 127, midiCh);
      break;
    case 5:
      MIDI.sendNoteOn(note[5], 127, midiCh);
      MIDI.sendNoteOff(note[5], 127, midiCh);
      break;
    case 6:
      MIDI.sendNoteOn(note[6], 127, midiCh);
      MIDI.sendNoteOff(note[6], 127, midiCh);
      break;
    case 7:
      MIDI.sendNoteOn(note[7], 127, midiCh);
      MIDI.sendNoteOff(note[7], 127, midiCh);
      break;
    case 8:
      MIDI.sendNoteOn(note[8], 127, midiCh);
      MIDI.sendNoteOff(note[8], 127, midiCh);
      break;
    case 9:
      MIDI.sendNoteOn(note[9], 127, midiCh);
      MIDI.sendNoteOff(note[9], 127, midiCh);
      break;
    case 10:
      MIDI.sendNoteOn(note[10], 127, midiCh);
      MIDI.sendNoteOff(note[10], 127, midiCh);
      break;
    case 11:
      MIDI.sendNoteOn(note[11], 127, midiCh);
      MIDI.sendNoteOff(note[11], 127, midiCh);
      break;
    case 12:
      MIDI.sendNoteOn(note[12], 127, midiCh);
      MIDI.sendNoteOff(note[12], 127, midiCh);
      break;
    case 13:
      MIDI.sendNoteOn(note[13], 127, midiCh);
      MIDI.sendNoteOff(note[13], 127, midiCh);
      break;
    case 14:
      MIDI.sendNoteOn(note[14], 127, midiCh);
      MIDI.sendNoteOff(note[14], 127, midiCh);
      break;
    case 15:
      MIDI.sendNoteOn(note[15], 127, midiCh);
      MIDI.sendNoteOff(note[15], 127, midiCh);
      break;
    default:
      break;
  }
}

void mux()
{
  uint8_t dataToSend;
  bool swRead[4] = {0, 0, 0, 0};

  for (uint8_t x = 0; x < 4; x++) //Column Scanning
  {
    dataToSend = (16 << x);
    digitalWrite(latchPin, LOW);
    shiftOut(dataPin, clockPin, LSBFIRST, dataToSend);
    digitalWrite(latchPin, HIGH);

    //------------ READ SWITCHES -----------------

    for (uint8_t ySw = 0; ySw < 4; ySw++)
    {
      swRead[ySw] = digitalRead(SwRow[ySw]);
      if (swRead[ySw] == HIGH && millis() - time > debounce)
      {
        uint8_t swStep = 1 + x + 4 * ySw;
        if (editMode == 0) //WRITE MODE
        {
          if (currentSeq[trackNr][swStep] == 0)
          {
            currentSeq[trackNr][swStep] = 1;
          }
          else
          {
            currentSeq[trackNr][swStep] = 0;
          }
        }
        if (editMode == 1) //TRACK NR MODE
        {
          trackNr = swStep - 1;
        }
        if (editMode == 2) //MIDI Ch Mode
        {
          midiCh = swStep;
        }
        time = millis();
      }
    }

    //------------ LED'S -----------------

    for (uint8_t y = 0; y < 4; y++) //Row Scanning
    {
      bool thisLED;
      int scanStep = y + 1 + x * 4; //Fast matrix scan

      if (editMode == 1) //TRACK NR MODE
      {
        thisLED = dispStep[scanStep];
      }
      else if (editMode == 2) //MIDI Ch Mode
      {
        thisLED = dispStep[scanStep];
      }
      else
      {
        thisLED = currentSeq[trackNr][scanStep];
      }
      if (stepNr + 1 == scanStep)
      {
        (thisLED) ?  thisLED = 0 :  thisLED = 1;
      }
      (thisLED == 0) ? dataToSend = B00000000 : dataToSend = (16 << y) | (1 << x);

      digitalWrite(latchPin, LOW);
      shiftOut(dataPin, clockPin, LSBFIRST, dataToSend);
      digitalWrite(latchPin, HIGH);
    }
  }
}

void isr()
{
  clkProgress = HIGH;
}

Wednesday, October 14, 2020

Carlin Compressor

I made some drawings of Nils Olof Carlin's compressor based on pictures I found at Nils Olof's own webpage, the Effects database & Moodysounds. I tried emailing him to make sure he was ok with me posting this, but the email address on his webpage was not working anymore.
 
I have since heard the sad news that he passed away on August 14 2017. Read more here.
If anyone from his family sees this and wants me to take it down please email me and I'll do so immediately. I hope this will be looked upon as a small tribute to a great genius.

 


 
 
2021 Update:
 


Carlin Phase Pedal

I also made some drawings of Nils Olof Carlin's phaser based on pictures I found at moodysounds & the effects database.


 
I made the traces connected to power red and ground green to make it easier to read.

Sunday, May 24, 2020

Price lists

Pedal price lists converted to 2020 prices:

Electro Harmonix

According to 1974 price list:
LPB-1 was $14.95, $75 in 2020.
Big Muff was $39.95, $210 in 2020.
Bad Stone was $149.95, $780 in 2020.


fOXX

from Sears 1976 fall catalog:
Fuzz Wah Volume was $79.95, $360 in 2020.
Phasing pedal was $99.95, $450 in 2020.
Wah Volume was $39.95, $180 in 2020.
Phase II machine $49.95, $225 in 2020.


Tuesday, May 12, 2020

Redd fOXX?

When I was looking for information about the fOXX Tone Machine; this red label version caught my attention. Most foxx fuzzes I've seen have a flocked fuzzy finish, a blue label, a carling toggle switch with on/off plate, and three cosmo knobs. Like this: 


But this one has no fuzzy exterior (it looks more like the crinkle finish on Shin Ei pedals), a red label, a switch with no on/off plate, and different knobs. Also note the 9V jack and the recessed foot switch, similar to the Shin Ei SF-1 super fuzz .



I used to have an amp with the same style knobs. The "Global 4080". (aka Harmony 4080)




The red label Tone machine also has a redesigned circuit board. 
(There is at least one with the old pcb though)


and that looks a lot like the Global amp and my 1976 Shin Ei SF-1 Superfuzz:



Blue label:



The global amp also uses CTS pots and the PCB says made in Korea. 


The transistors (and some of the other parts) look very similar to the ones in the red label Tone Machine.




The second picture is from this listing:

The potentiometers in that unit were made by CTS in late august 1976. 
Which is interesting since according to interviews with Steve Ridinger and Dick Norse (from Art Thompsons book "Stompbox"*) fOXX went out of business in mid 1975, and all their assets "were auctioned to someone in Chicago". So maybe?


or Sears? 

I looked through all the sears catalogs I could find and the Tone Machine isn't in any of them. 
Other foxx pedals appear from Fall/Winter '74 through to Fall/Winter '76.  


So did this this "someone in Chicago" continue to build foxx pedals with the leftover parts and then have new circuit boards and enclosures made in Asia?

If you know anything I missed here, please let me know.


UPDATE!! 
Looks like the mysterious buyer might've been Fred Gretsch Enterprises! 

As you can see here Fred Gretsch Enterprises announce to dealers that "We are now exclusive distributors for all FOXX and BALL products and are manufacturing these products here in Chicago."



These pictures come from this old reverb listing:


Ok, so I wasn't completely wrong: 

"In 1971, he started Fred Gretsch Enterprises, a Chicago-area business that imported and exported a wide range of musical instruments for large national retailers such as Sears, Montgomery Ward, Spiegel, and Aldens. He also purchased equipment from the defunct Harmony Company in the mid-70s and manufactured banjos under the Chicago brand name."


Here's another interview with Fred Gretsch where he talks about his work in the 70's:


Here's what the "new" circuit boards look like:





And the schematic: 


The cap between the base and collector on Q1, and the resistor coming from the 9V are new. 
All of the other differences in the newer schematic were there on the original PCB's, but never soldered in. 
Also these new boards use ECB transistors whereas the old ones used EBC transistors.

Also check out the Effects Database pages on fOXX:


*https://www.thriftbooks.com/w/the-stompbox-a-history-of-guitar-fuzzes-flangers-phasers-echoes-and-wahs_art-thompson/1521291/#isbn=0879304790


As a bonus here are the four different styles of labels I've found so far:


Friday, May 8, 2020

Four (or more) Transistor Circuits


Foxx Tone Machine

To be added: Big Muff

Five transistor circuits: Fender Blender
Six transistor circuits: Shin-Ei SuperFuzz