• Welcome to Circuitbenders Forum.

CATWEAZLES Fraktal / CellilarAutomata Synth

Started by Circuitbenders, February 04, 2008, 06:45:00 PM

Previous topic - Next topic

Circuitbenders

what happened to your Fraktal/CellilarAutomata Synth?

http://www.circuitbenders.co.uk/forum/index.php/topic,424.0.html

now that seemed like an incredibly cool device. Weren't you making some PCB's at one point?





i am not paid to listen to this drivel, you are a terminal fool

catweazle

#1
Hi,
how about that:

I post all you need to build it as DIY project

All you need is a few components:
- Microchip PIC 18F4620  (you can get it for free (sample) at microchip.com)
http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=1335&dDocName=en010304

To put the software(hex-file) into the microcontroller you need a "programmer"
- ProgrammerHardware for programming the PIC microcontroller:
http://www.semis.demon.co.uk/uJDM/uJDMmain.htm
Software for programmer:
http://www.winpic800.com/index.php?lang=en
all is freeware!

(you don't need programming knowledge for building it)
source code (c language) and compiled hex file for the uC   
will be posted here tomorrow.

and you need ... (things a bender has already)
- some Resistors and capacitors
- potentiometers and switches
- 5Volt source (7805 voltage regulator)
- breadboard or pre-drilled pcb


It's not that complicated ... have a look :


Circuitbenders

#2
Luckily i just ordered a PIC programmer so i will definately be having a go at building one of these whan it arrives.

Can't wait to get this thing up and running

What are the values of the pots at R3 to R6 etc?

Is JP1 a connector block and if so do you really need it if the PIC has already been programmed? I don't have much experience with PIC's as yet.

i am not paid to listen to this drivel, you are a terminal fool

catweazle

Thank you for your interest! I'm very motivated to continue the project.

sorry I forgot that pot values.
The values for the 8 Potentiometers are not critical, use 10k Ohm Pots.

JP1  is the connection for the programmer (ICD = in circuit programming)
You do not have to remove the PIC for programming.

And very IMPORTANT:
the 100nF capacitor should be placed near as possible at the PIC !
(between pins 11/12 or 31/32), don't forget to power pins 11/12 AND 31/32.

The schematic is the minimum requierd. I want to keep it as simple as possible.
But enough for the beginning. I don't think a ready made PCB is really needed.
Of course we can add some switches, LEDs etc but then some more components needed...

I thoght long about selling ready programmed PICs, but what about software updates then.
If you have a programmer you can do updates yourself.

Ordering a ready made programmer is a good idea (you know that thing is working).
For my opinion the
http://www.winpic800.com//index.php?option=com_content&task=blogcategory&id=19&Itemid=88
is a good choice because it can burn  PIC , AVR and EEPROMs. And 60€ is not much for that feature.
But there are also cheaper ones available (look for "ICD" or "PIC programmer" on google ...
There are a lot other interesting PIC/AVR projects on the www like  MIDIbox, SwinSID, AVRsynth etc...
So it's nice to have a programmer for PICs and AVRs  ;)
(the PIC and AVR microcontrollers are nearly the same, it's kinda religion which to choose)

If you not shure about the programmer you have found feel free to ask me.
(the PIC18F4620 should be at least supported by the programmer!)



catweazle

Here is the Schematic for Version 1.0 for the Synth Hardware.

Bill of materials:

- "Veroboard/Stripboard" PCB - or Breadboard
- PIC 18F4620  40 pin DIL package
- 40 pin DIL IC socket (if you don't want to solder the PIC directly)
- 8 potentiometers (linear) 10k
- 1k Resistor
- 4.7k Resistor or 5k pot
- 10k Resistor
- 10nF capacitor (0.01uF)
- 100nF capacitor (0.1uF)
- 100uF capacitor (35Volt)
- 10uF capacitor
- 0.1 .. 10uF capactor (audio output)
- Diode 1N4007 or other general purpose
- 7805 Voltage regulator
- 5pin pin header 2.54mm grid for programmer connection
- Plug for external wall wart power supply or battery holder ...
... and some sorted length of wires


Software follows...

catweazle

#5
and here is a little demo of what you get ...

http://etecnic.fh-pforzheim.de/~catweazle/F-Synth/PICSynth_Demo1.mp3

the sequence at the beginning is the dry signal out of the pic synth.
i hadn't tweaked any knobs while recording. The sequence and tones came out of a "chaos algorithm"

at 6 seconds I added delay (digitech x-series digital delay) and filter(Korg MS20 filter unit).
I don't know where the regular plops in the mp3 came from (maybe software bug or simply chaos itself ;)

No samples where used what you here are only two 8bit counters and some very simple math.
see link for more details about the algorithm theory and idea behind ...
http://www.instructables.com/id/Predictive*-digital-music-synthesizer-Pandora_s-B/


and here is another demo ... (same setup but more tweaking).
http://etecnic.fh-pforzheim.de/~catweazle/F-Synth/PICSynth_Demo2.mp3

Circuitbenders

Just got my PIC programmer from somewhere in hong kong via ebay. It appears to program any PIC's up to 40 pin and  EEPROM's. It also has a handy 6 pin connector so i can plug it straight into the PIC-synth board. Not bad for just under $10.

If anyone wants to make one of these synths in the UK, the only place i've found that stocks the PIC18F4620 in the UK is JPR electronics HERE

If anyone knows of elsewhere in the UK let me know.
i am not paid to listen to this drivel, you are a terminal fool

Signal:Noise

I#m actually quite tempted to have a go at making one.

catweazle

#8
If you can't find any distributor for the PIC18F4620, try DigiKey, Mouser ...
or you can get free product samples from microchip.com if you register and have a little time.

*****
News:
*****
Software (HEX-File for the PIC)  is ready (beta version) for download:
If you want the source-code (ccs c-compiler) mail me   acidliner<at>web.de
http://etecnic.fh-pforzheim.de/~catweazle/F-Synth/PICsynth_Betaversion.zip


Fraktal Synth Software (beta version):

Pot   Description
---------------------------------
1      Algorithm 1..4
2      Speed / Pitch
3      Parameter 1
4      Parameter 2
5      Parameter 3
6      <not used yet>
7      <not used yet>
8      <not used yet>

Parameters 1..3 are depending on the algorithm.
Parameter 3 is only used in Algorithm 3.
Algorithm 4 is not working yet (available in next update)

Smal changes of the parameters can make big differences in the tones and sequences.


I'll keep you informed about software updates
the algortihms can be more powerful ...

and some pictures of my prototype

Tip:
If you build that thing in a box make a hole for the ICD programming interface.
The 7805 voltage regulator can be very hot. Mount some "cooling metal plate" on it.
Connect a LED (with 1k series resistor) to the 5V power supply to see if the power supply
is working right.


ne7

wow that looks / sounds bloody great! :)
nice one!
ne7/triad
------------------
http://ne7.untergrund.net

catweazle

thanks for the feedback.

each of the demo mp3 shows only 1 posibility what this thing does.
I don't have tweaked any knobs while recording, only a external filter and delay fx were used.
To make it a bit more exciting.

New Software version
Betaversion02.hex
http://etecnic.fh-pforzheim.de/~catweazle/F-Synth/PICsynth_Betaversion02.hex

I have modified the first two algorithms from the first betaversion in order to make them more controllable.


Algorithm 1   fraktal synth,
                   has 65535 posibilitys/different tones and sequences
                     
Algorithm 2   fraktal synth,
                   has 255*255*255 tweak settings... (different modulations than algorithm 1)

Algorithm 3   is preliminary, not very exciting


Algorithm 4   cellular automata, a bit buggy yet, but will be fixed


I'm planing to implement that "4 oscillator sleepdrone synth" as algorithm 3.
(that thing build up from ttl/cmos buffers used as oscillators modulating each other)
from Nicolas Collins book "Handmade Electronic Music: The Art of Hardware Hacking"

... and some new demos ...

http://etecnic.fh-pforzheim.de/~catweazle/F-Synth/PICSynth_Algorithm_1.mp3
http://etecnic.fh-pforzheim.de/~catweazle/F-Synth/PICSynth_Algorithm_2.mp3

Circuitbenders

Both those new demos are briiliant, especially the first one, instant acid techno! 

Its annoying that JPR won't have any of the right PIC's in stock until Feb 25th, i'm not sure i can wait that long, with any luck the samples i ordered will have arrived before then  ;)

What are you planning for the remaining knobs?

Some way of sync-ing the thing to an external clock input would be the most useful thing i can think of.
i am not paid to listen to this drivel, you are a terminal fool

catweazle

#12
I was a little scared as I heard what comes out of the box the first time  ;D

Remaining knobs:

Knob   Description
------------------------------------------
1        Algorithm selection 1..4 
2        Speed/Pitch
3        Parameter 1 
4        Parameter 2   
5        Parameter 3 
6        Parameter 4
7        Parameter 5
8        Parameter 6

some algorithms will use all knobs (in the release version). I have added 8 knobs to be flexible, ok some are
not used but I'm shure we find something to do with the unused ones ;)
It's better to have some left for future ideas (updates).
For example I have combined the first two algorithms in one (7 knobs are used). Since they are
pretty the same (mathematically).

Sync:
mmmh... a bit difficult .... but should be not impossible
timbre and sequencer are not created seperately (how it is done normaly) all result from only one algorithm. 
To tell the truth I hadn't thought about that a lot. But you are right that would be a good feature.
I finish the 4 algorithms first and then I have a look how to do sync.
MIDI (clock) sync? 

I hadn't thought it is so diffucult to get the PIC18F4620, here is another possible distributor
http://www.voti.nl/shop/summary.html   
or
a list from the MIDI-Box project
http://www.midibox.org/dokuwiki/where_to_order_components

Of course other PIC18Fxxx work for this project, too. But I don't want to rewrite the code
for all possible PIC types available  :P . I hope you understand that.
But if it is really difficult to get the PIC18F4620 we can talk about using another more
common available type.
Why I have choosen the 18F4620:
- lots of flash memory 64kByte (place for sample storage or something)
- lots of RAM memory 4kByte 
- I had it already at home ;)

I'm shure we could find a good distributor for the PIC...

catweazle

#13
PIC synth update:  New Algorithms

-  Step-sequencer (8 step) with FM-tonegeneration... I discovered some TB-303 like stuff,
    no filter or other external equipment was used!!
    http://etecnic.fh-pforzheim.de/~catweazle/F-Synth/PICSynth_Fm-Stepsequencer.mp3
   (step sequencer is controlled via two knobs one for step the other for the value at selected step)

- Second algortihm redesigned ...
   external filter and delay was used.
   http://etecnic.fh-pforzheim.de/~catweazle/F-Synth/PICsynth_NewAlg2.mp3

... I don't want to go onto your nervs with all that demos,
it's only to keep you informed about the project state...

djsynchro

No demo's are good! There's only one thing that matter.... how it sounds.
And it sounds bloody amazing... why is that? what is it, 8 bit sound or 1 bit or what?

Thinking of building it aaahhh!!!!