intel vs ppc

something i knew all along but tried to ignore: many of my noisier synths sounds like crap on modern (intel) macintoshes and some even goes all silent. the code below deliberately blows up a resonant hipass filter and is typical for how different the same code can sound on my intel vs my ppc mac. listen to the attached mp3 files. in a few years all the ppc computers will be gone and we can't recreate the sounds.

//punk (loud!)

update 090811: thanks to batuhan bozkurt for putting me straight. it's not an intel vs ppc issue but rather apple changed something in their internal soundcards. using a newer (intel) machine and an external soundcard (fireface 400), the punk code sounds the same as the ppc version below (ie good/better in my ears - no autocompression).
so the internal soundcard in my old powerbook (1ghz, ppc) is robust, filters hardly ever blows up and it doesn't have that automatic compressor/limiter as my newer macbook pro (2.16ghz duo, intel) internal soundcard.

update 180101: with GlitchRHPF from sc3-plugins and some clipping one can get the original sound back...

Audio icon punk_intel.mp3759.55 KB
Audio icon punk_ppc.mp31.48 MB


more custom electronics. a wireless system for our flute/video duo kretslopp (together with flutist anna svensdotter).
3 knobs and 3 buttons on the right hand arm, 1 accelerometer (3d) on the left hand arm.
anna made the leather bracelets.

attached is schematics, avr firmware and a max/msp patch for testing.

wireless slave and usb master...

overview. controllers, master, slave and 'bracelet'.

update 090823: also attached supercollider classes (req. conductor quark)


a cheap little circuit that reads 10 analog controllers (8 knobs and 1 joystick). i built it for my neighbour jens' portable keyboard project. it's using an atmega88 and a 4051 multiplexer to get 10 analog-to-digital converters. a standard max232 with some caps lets the atmega88 talk to the serial port of the computer.
attached is schematics, avr firmware and a max/msp patch for testing.

Package icon jensKeyboard.zip65.23 KB


livecoding via sms anyone? an expensive and annoyingly hard hobby for sure.
but the RedPDU supercollider class makes this possible in any case. it can decode mobile phone text messages in the pdu format. and with a serial connection to your phone (bluetooth or cable), it is easy to directly download incoming sms from your phone into supercollider and interpret them. no additional hardware required.
the class is available here. (there is also a mxj java version for max/msp called f0.pdu here)

and here's a short demo video where i send a short message to myself...

RedPDU from redFrik on Vimeo.

the code i texted in this video was...

Pbind('degree', Pn(Pseries(0, 2, 5), 4), 'dur', 0.1, 'amp', 0.5).play

and the sc receiver function is in the helpfile. but note: on many phones it is impossible to type characters like {} [] \ | etc. you might want to add some find&replace functionality and use <> meaning curly brackets etc.

update: i believe sms pdu isn't in use much any more so this will only work with old (mid-2000) phones.

sort of unicode support for sc

this is a big ugly hack and gives far from complete support for these special characters. but still it is useful in some situations like for buttons or comment boxes in your gui.

w= Window(Umlaut.fix("åäö test"), Rect(100, 200, 150, 150));
Button(w, Rect(10, 20, 130, 40)).states_([[Umlaut.fixAll("schööön")]]);
Button(w, Rect(10, 70, 130, 40)).states_([[Umlaut.fixAll("Tätigkeit heiß")]]);

all supported characters... (more can be added on request)


update: there is also asciiCorrect in the wslib quark by wouter snoei
note: broken in sc3.9 under osx

Package icon Umlaut.zip3.42 KB

redUniverse: l-system and turtle

now added RedLSystem and RedLTurtle to my redUniverse quark. RedLSystem is a fairly standard string rewrite class. one special feature is that it saves the structure/tree/recursion depth of the rewrite process. RedLTurtle either plot l-systems or standard strings. it comes with a set of default drawing functions, but you can easily add your own commands.

l= RedLSystem("F", ($F: "F[+F--F]+F"));{};
RedLTurtle(l, 40, 10, 0.9, 0.1).makeWindow;

l= RedLSystem("F", ($F: "|[-FFF--F]+F"));{};
RedLTurtle(l, 20, 20, 0.95, 0.2).makeWindow;

l= RedLSystem("F", ($F: "|[--F][+F]-F"));{};
RedLTurtle(l, 400, 20, 0.65, 0.1).makeWindow(initTranslate: Point(0.5, 0));

l= RedLSystem("F-F-F-F", ($F: "F[F]-F+F[--F]+F-F"));{};
RedLTurtle(l, 6, 90, 0.9).makeWindow(initTranslate: Point(1, 0));


custom wireless system built for craftwife. the leds are to be sewn into real ties. there are 6 red leds per slave and each led can be dynamically controlled (pwm 0-255). all slaves run on battery (AA 3.6v lithium) and keep in contact with the master using 2.4ghz wireless transceivers (nordic nRF24L01+). the maximum working distance is about ~80m (line of sight).
the master talks to supercollider via the RedTieMaster and RedTieSlave classes (usb-serial 115200 baud).

schematics, firmware, partlist and sc classes attached below (gnu gpl v2)



master and slaves...

leds on ribbon cable...

total cable length: 135cm
distance between leds: 4cm

redTie-hardwareWireless from redFrik on Vimeo.

Package icon redTie.zip76.62 KB


Subscribe to f0blog RSS