lundi 10 juin 2013

Rewriting the FXL-8 microcontroller code

Okay, let's try to rewrite the program of the FXL-8 using my old prototype's code :)

I made a little looper simulator interface under MacOSX using XCode, the code also compiles with the Arduino IDE, so it can be uploaded to an Arduino board, that will replace the original "brain" of the looper.
The code is still highly unoptimized, the LEDs are updated at every cycle, that's crappy.


Here : https://www.dropbox.com/s/m0r3zjau2i71ama/looper.zip

On the simulator, everything works just as on the real thing, but you have twice the saving slots :)
I've also successfully tested the code on a real breadboard, but just the bank switch / patch select so far.

I guess I could reflash the looper's microcontroller (there are solder pads for the programming pins on the PCB !) but I don't know how to do that, and the Arduino libraries may not be available.

Next step : test all, and embed the new "brain" into the looper (that will require a LOT of wire soldering :-)




mardi 4 juin 2013

Retro-engineering the FXL8 switcher : footswitch board

Okay, I had some time ahead so I looked into the FXL8 switcher to try to guess how it works.

It is driven by a STC 89C52RC micro controller (8051 core) in a PQFP-44 package.
Its datasheet (in Chinese) is here : http://pdf1.alldatasheet.com/datasheet-pdf/view/139744/ETC1/STC89C52RC.html

The main footswitches are linked to the main board by a 6 cable connector. Pins are :

From top to bottom : pin 0...5

- Pin 0 : ground (it's bit odd since the ground is not used anywhere on the footswitch board)
- Pin 1 : connected to SW_B, SW_C, SW_D
- Pin 2 : connected to SW_MINUS, SW_PLUS, SW_A
- Pin 3 : connected to the other end of SW_A, SW_D
- Pin 4 : connected to the other end of SW_PLUS, SW_C
- Pin 5 : connected to the other end of SW_MINUS, SW_B

Footswitch board schematic

Two strange this (IMHO) :
- The switches look like Alpha DPDT momentary switches. a simple SPST momentary switch would have been enough (reminds me of 3PDT footswiches in some of non-true bypass EHX pedals :-)
- Why use a ground pin (pin 0) ? It isn't connected to anything on the board.
- As a beginner, I would have use one pin per switch instead of making a complex multiplexed system...

Quality footswitch :)


FXL8 Switching system gutshots

Just ordered a Harley Benton FXL 8 switching system to see how it was made, and if it could be modded.
As I thought, it's quite close to my looper prototype :)


Here are some gutshots :

Main PCB and Stomp switches PCB - as guessed, Wave-X / Vitoos / Joyo are all the same.

Solder quality can be bad...

Why leave so much LED pin metal ?
The relay switches, just like my prototype :)
This means real true-bypass.


The brain. Notice the ULN2803, same as my prototype again :)
The uC seems to be  clocked at 6MHz, and seems to be an STC89C52.

Full main board.
Later I'll see if the main uC can be replaced with my own : this switcher can hold up to 8 banks... why not increase to 16, the LCD is able to display digits from '0' to 'F' after all !
Think I'll change the LED colors to start first :)

More later, there are some components I haven't guessed yet.