Wednesday, March 12, 2014

Cort versus Cork: Towards a Sandrode Computer

We live in a post-digital age.  I will leave un-packing of that statement for classroom discussion, nevertheless proceeding upon that assumption as well as the popular lemma, that we live in post-laptop age.  So, how to proceed with computing?  Shbobo, a company I started with Steve Kornico, is dedicated to the pursuit of new computers whose primary expression is sound, with an interface that is squishable or an otherwise alternative to the mouse and keyboard.  We have released the Shnth, which uses wooden bars to sense flex, as well as antennae.  Now we face a dilemma, is the company a one-horse town, or are there more kinds of computers?  There should be, because the fact of any post- situation is that there are a multiplicity of options.  For example, the analog synthesizer market, in the context of the temple of computer music, is all about wild diversity, quaintness, and subtle variations in "live sound". 

Shbobo: Sh is the sound of code, bobo is musical gesture.

One topic I have been working with recently, conceptually, is that of sandrodes, or androgynous nodes, and nodal interface in general.  A node is basically any piece of conductor that pierces the outer shell of a musical instrument, allowing electronic contact with some part of the interior circuit.  The "thesis instrument" which is logo for this blog, called "Din Datin Dudero," exemplifies nodes, and it just so happens that many of them are androgynous; they act as both input and output, and playing it is a sort of lacing-game with wire.  

How to conceive of a nodal instrument in the digital realm that is part of Shbobo's manifesto?  The context contains computer music instruments such as the manta, which is a collection of touchable conductors, using capSENSE technology.  An early idea is to utilize timer captures as inputs and various synthesized pulses as outputs in a capSENSE configuration; each node is naturally androgynous and extending this to control the actual waveforms would be fruitful to hear the "sound of code".  Usually capSENSE signals are unheard, shoved under the rug as an arbitrary ultrasound, but perhaps all those nodes can be sounds too?

Another sort of digital sandrode could consist of DAC output, either current or voltage mode, fed through resistor to ADC input.  Here again we have an output and an input making it androgynous.  The playing of these nodes consists of touching or wiring them to each other.  

What topology for the instrument?  A central cortex would be easiest to implement, perhaps with slaved DAC chips.  But what about distributed computing, the idea of a bunch of cute little insects sharing the board with one's master cube?  For this purpose, I have begun a long and laborious process of appropriating 8bit microcontrollers.  Perhaps it will be fruitful, perhaps it is a dead end.  One never knows with 8bit; it is a fundamentally a question of morals.  

Morals Excursion

The blogosphere, circa 2014, is full of pundits who declare the death of every bitsize except 32, due to the viral potency of ARM holdings' Cortex DNA.  They say, don't learn 8bit chips, they are a waste of time, like dial phones.  Sad that so much work that was done on 8bit only recently, like the Arduino, and so many other boy scout, hacker projects, is projected to die.  I mean, isn't post-digital about a multiplicity of options?  Why did STmicro recently introduce a new 8bit architecture?  If everything, including toasters, can be automated with a 32bit cortex, the only reasons to use 8bit are: power efficiency, and cuteness.  Do not underestimate cuteness; it is the main reason people buy STM8-discovery kits, for a rainy day to hang out with old code and a primitive chip.  Perhaps the power efficiency is true as well, although Cortex code does a lot in one instruction so there is a way to normalize the architectures for power usage. 

21st century morals: power efficiency and carbon footprint of your chips.

As code appropriator, I am looking at the ST 8bit architecture solely for its instruction set as a material.  The raw assembly opcodes, DNA for programs, is unique and induces different kinds of programs from the Cortex.  So here, I would present the patit sketch of a new-computer topology, which incorporates a central Cortex, surrounded by a "cork" of 8bit chips:


The STM8 architecture is programmed by "SWIM" interface, thus we have the breaststroker at top who symbolizes a multiplex connection for the Cortex to program the Cork.  It is a master slave relationship, but other types of loops or chains may be possible, however it is easiest for Cortex to know SWIM and the cork to be as close to insects as possible.  It is called cork because of the cuteness and corkiness of 8bit.   Everything has the sandrodes as discussed above, either capSENSE or DACADC. 

A Piece by Jason Brogan 

A laptop ensemble is given induction coils, that can sense the processing activity of one's own laptop, and express it in sound.  The piece involves running various programs and positioning the sensors at different locations and distances from the running unit.

Listening to this piece by a wonderful thinker, I ponder the nature of the sounds generated by blogging or emailing or spreadsheeting.  These processes do not share an essential sampling rate with more traditional computer musics.  That is, where Supercollider can run at 44.1khz, establishing predictable pitch references, non-sound programs do not have such a predictable interrupt routine; they are optimized to fit code into speed, thus they often sound like various hairiest kinds of noise.

Can the cork be used in such a way, as an interruptless computer that simulates such "sound of code" by just running blocks in real time, without a sampling rate?  Perhaps jumping around inside a uniform program memory by external stimulus, such as ADC codes.  The SRAM too can be treated as a material, wherein fixed function is abolished and code blocks use arbitrary offsets in memory.  A computer for computing's sake:


The metricized space to the left is SRAM, or memory for variables such as what is necessary to create a triangle oscillator or a resonator.  To the right, such code blocks as mentioned, a fourses, or my recent favorite invention, the mechanical triangle resonator, all of which feed PWM peripherals to create an analog output on pins.  Also, sub blocks, little email emulations, and the idea of an ADC which feeds program counter to jump around in this space of code.  

Morals Excursion Too

Is music for night or daylight?  That is the question raised by solar panels and batteries; to charge in the day and save it for boring old night, or run your instrument right now after lunch, in the midday lull, perhaps to entertain a siesta?  Does computer music sound good with the crickets and mysterious skunk sounds of night, or over the silence of a hot day with mojitoes?   We think about this all the time, because batteries are a chemical encased in the wood of the instrument.  With the Shnth, batteries, charged over USB, were a vehicle to entertain oneself whilst respectively vehicled, on the train or plane.

 Appropriating Steve

As mentioned elsewhere in this blog, ST is one of the biggest of the Chinese silicon houses; it is a "leader" in the Magic Quadrant model.  For that reason, of mainstream execution and stability, it was chosen for Shbobo's base material.  Contenders were Atmel and Microchip, which had had a long 8bit history, whereas ST started fresh with the 32bit Cortex and expanded to an 8bit backend.  Thus they had the benefit of all latecomers- building on the mistakes of others and profiting from their innovations.  Such as diversity of peripherals: timers, ADC, DAC, and most important, USB.   However, there were other reasons to appropriate ST, including the angle of its logo-font:


As is clearly seen, ST has appropriated a little bit of Roddenberry; its logo suggests space-age, advanced morals, and nineties special effects sequences.  Also, ST stands for Steve.  Continuing the playful interpretation sequence of our prey's logos, let's look at how they choose to represent their product in brochures:


The chosen logo for ST's 8bit branch is a kite: plaything of children and hobbyists delight.  The geometry of kite suggests simplicity, quadrilateral organization as one would expect in an 8bit architecture.  A speeding racecar, perhaps an application of the chip, contrasts awkwardly; is this chip about green wind power or petroleum?  The world in an 8bit chip, and the low power, CF lightbulb predict a new mini market for these.  Note the jumping man.


In contrast with the simple kite, ST chooses a butterfly to represent the more robust Cortex.  Clearly, it is not a plaything, but almost a living thing, like an elegant artificial intelligence.  The jumping man is back, with his exuberant sillohette of joy, and we appropriate this to mean music, and hopefully, dance music!  Instead of more concrete, green symbols, there is a cube in the top left corner, which is to mean this is one's cube, controller of cork: mister master cort.  Perhaps, one final note would be to look at the Chinese characters for the chosen symbols:
风筝, FengZheng, a kite: a simple "wind-zither".  Note the characters have very few strokes.
蝴蝶, HuDie, a butterfly: quite complex characters that share the insect radical.  In ideograms, you can see the relationship in complexity between the 8bit and 32bit architectures.

Recap: is it righteous or just plain preposterous to work on an 8bit chip?  Does that fulfill one facet of the ideas of "post-digital" or "post-laptop"?