<?xml version="1.0" encoding="utf-8"?>
<feed xmlns="http://www.w3.org/2005/Atom">
    <title>Distant Stations</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/" />
    <link rel="self" type="application/atom+xml" href="http://www.solipsism.net/atom.xml" />
    <id>tag:www.solipsism.net,2009-03-10://1</id>
    <updated>2009-03-12T21:19:04Z</updated>
    <subtitle>Music and electronics.</subtitle>
    <generator uri="http://www.sixapart.com/movabletype/">Movable Type 4.24-en</generator>

<entry>
    <title>Next for MeggySeq</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2009/03/next-for-meggyseq.html" />
    <id>tag:www.solipsism.net,2009://1.33</id>

    <published>2009-03-12T21:01:35Z</published>
    <updated>2009-03-12T21:19:04Z</updated>

    <summary> I think the next piece, suggested by the Evil Mad Scientist himself (whose evil I seriously doubt. he seems quite nice, actually), is a serial listener that runs on a PC. He suggested writing it in Processing, and mailed...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Arduino" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="arduino" label="arduino" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="meggy" label="meggy" scheme="http://www.sixapart.com/ns/types#tag" />
    <category term="meggyseq" label="meggyseq" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p><br />
I think the next piece, suggested by the Evil Mad Scientist himself (whose evil I seriously doubt. he seems quite nice, actually), is a serial listener that runs on a PC. He suggested writing it in Processing, and mailed me a program that works but isn't very flexible. It's a good proof-of-concept, though. </p>

<p>Ideally, it would detect serial ports and display a menu to let the user pick an active serial port. (Right now it's hard-coded.) </p>

<p>It should also let the user pick sounds for slots 1-8. Since they don't have to be copied to an SD card here, they don't need to be renamed. Especially since, if we're on a PC, we have all kinds of memory and CPU to play with and don't need to take the string-crunching shortcuts I took in the MeggySeqListener arduino sketch. </p>

<p>If I get enthusiastic, I could even have it copy the files to an SD card, or to a directory or something, and rename them correctly and stuff. But right off I think the easy playback (for people who have a Meggy and don't have a Wave Shield and so on) would be a big help.</p>]]>
        
    </content>
</entry>

<entry>
    <title>MeggySeq 1.0</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2009/03/meggyseq-10-info.html" />
    <id>tag:www.solipsism.net,2009://1.22</id>

    <published>2009-03-10T07:40:00Z</published>
    <updated>2009-03-11T10:50:21Z</updated>

    <summary> MeggySeq 1.0 is released! You can download it here: MeggySeq 1.0.zipDocumentation and more details below the jump......</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Arduino" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="arduinomeggyseq" label="arduino meggyseq" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p><object type="application/x-shockwave-flash" width="400" height="300" data="http://www.flickr.com/apps/video/stewart.swf?v=68975" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"> <param name="flashvars" value="intl_lang=en-us&amp;photo_secret=320abe1d18&amp;photo_id=3345599859&amp;show_info_box=true" /> <param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=68975" /> <param name="bgcolor" value="#000000" /> <param name="allowFullScreen" value="true" /><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=68975" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&amp;photo_secret=320abe1d18&amp;photo_id=3345599859&amp;flickr_show_info_box=true" height="300" width="400"></object>

</p>

<p>MeggySeq 1.0 is released! You can download it here:</p>

<p><span class="Apple-style-span" style="color: rgb(0, 0, 238); text-decoration: underline;"><a href="http://meggy-jr-rgb.googlecode.com/files/MeggySeq-1.01.zip">MeggySeq 1.0.zip</a></span></p><p>Documentation and more details below the jump...</p>

<p><br /></p>]]>
        <![CDATA[<p><span class="Apple-style-span" style="font-weight: bold;"><span class="Apple-style-span" style="font-family: '-editor-proxy';">MeggySeq</span></span></p>

<p>The overview: </p>

<p>MeggySeq is a step sequencer for the Meggy Jr. <span class="caps">RGB </span>from Evil Mad Science:</p>

<p><a href="http://evilmadscience.com/tinykitlist/100-meggyjr">http://evilmadscience.com/tinykitlist/100-meggyjr</a></p>

<p>MeggySeq does not make any noise itself! It sends values over a serial connection to another device. I have built it to talk to an Arduino with a Wave Shield attached: </p>

<p><a href="http://www.ladyada.net/make/waveshield/index.html">http://www.ladyada.net/make/waveshield/index.html</a></p>

<p>MeggySeq has 8 patterns of 16 steps each. You can set each of those steps to play one of 8 <span class="caps">WAV </span>files on the waveshield. You can play the pattern back, stop it playing, and change the tempo. You can copy patterns from one slot to another. You can even save all 8 patterns from <span class="caps">RAM </span>to <span class="caps">EEPROM </span>so they won't be lost when you turn off the Meggy Jr. </p>

<p>You can loop patterns into longer compositions (up to 8 patterns long) and edit the patterns and pattern parameters (like tempo, loop length, and pattern length) without stopping playback.<br /><br />
You can edit one pattern while another is playing, and if you change patterns during playback, the first pattern will finish playing before jumping to the newly-selected pattern (or the next pattern in the loop if you've turned on looping). </p>

<p><span class="Apple-style-span" style="font-weight: bold;"><span class="Apple-style-span" style="font-family: '-editor-proxy';">The basics:</span><span class="Apple-style-span" style="font-weight: normal;"></span></span></p><p></p><ul><li><span class="Apple-style-span" style="font-weight: bold;">Wait, what's a step sequencer?</span></li></ul><p></p>

<p>Think of it as the brains of a drum machine. Each pattern is one measure long, divided into 16th notes. You can set one drum hit to play per 16th note. (You can use other noises, too. More on that later.) A typical measure of drumming has a kick drum on beats 1 and 3 and a snare drum on 2 and 4. Since one measure is 1 pattern in the sequencer and each pattern has 16 steps, you could then set steps 1 and 9 to play the kick drum sound and 5 and 13 to play the snare drum sound. Hit play (the A button) and you've got a basic drum loop! </p>

<p></p><ul><li><span class="Apple-style-span" style="font-weight: bold;">Okay, so if MeggySeq doesn't make any noise, what does?</span></li></ul><p></p>

<p>At its core, MeggySeq is just a program for sending the numbers 1-8 over a serial connection. Something needs to be listening on the other end of that serial connection to actually play the sounds indicated by the numbers being sent. The MeggySeqListener program watches a serial connection for the numbers 1-8 and plays back files named "1.WAV" through "8.WAV" based on those numbers. It is designed to be loaded into an Arduino with a Wave Shield, which is then hooked up to headphones or speakers.</p><p><span class="Apple-style-span" style="font-family: '-editor-proxy';"><span class="Apple-style-span" style="font-weight: bold;">
The details:</span></span></p>

<p><span class="Apple-style-span" style="font-weight: bold;">How to use MeggySeq:</span></p>

<p>Load the MeggySeq.pde source into your arduino development environment. Compile it and, with your Meggy connected and turned on, load it into the Meggy's memory. When it's done, your Meggy will reset and start running the MeggySeq program.</p>

<p>For learning how to use MeggySeq, it may help to turn on the serial monitor in your arduino development environment. Set the baud rate to 38400.</p><p><span class="Apple-style-span" style="font-family: '-editor-proxy';"><span class="Apple-style-span" style="font-weight: bold;">
The Edit Screen:</span></span></p>

<p>The first thing you will see is the Edit Screen. This is where you edit patterns. It is also where you can start and stop playback and choose patterns to play or edit. </p>

<p><img src="http://farm4.static.flickr.com/3342/3343829514_989a596ec9.jpg" alt="the edit screen" /></p>

<p>The AuxLEDs across the top of the Meggy screen display the number of the currently-selected pattern (1-8) and, if playback has started, the pattern that is playing.</p>

<p>Each pattern is made up of 16 steps. The top four rows of <span class="caps">LED</span>s display the value of steps 1-8. The bottom four rows display steps 9-16. The blue bar at the top left shows the step that is currently selected for editing. </p>

<p>The Left and Right buttons will move the edit bar left and right through the pattern. Up and Down will change the value of the current step. At first the step is empty, and no dot will be lit up. Press Up once on an empty step and the bottom dot will light up yellow, indicating"1". Press Up again and it will move up, indicating "2," and so on. Values over 4 are indicated by a purple dot. To clear a step, hit Down until the dot disappears. </p>

<p>When you have a pattern made, you can press the A button to start playback. A green bar will start moving across the screen, highlighting the step that is currently playing. If you have the serial monitor turned on and your Meggy is connected to your computer, you should see numbers start to appear in the serial display. They correspond to the value of the step that is currently playing. "0" is a step with no value set, or silence.</p>

<p>When the playback bar reaches the end of the current pattern, it will jump back to the first step and keep playing. (This behavior can be changed later.)</p>

<p>While it's playing, press A to stop playback. Pressing A again will  restart playback at the first step of the current pattern. To change patterns, hold down the B button and press Right or Left. The lit yellow AuxLEDs at the top of the screen will indicate which pattern is now selected. In this way you can move back and forth through the 8 patterns.</p>

<p>If you change patterns during playback, the first pattern will finish playing before the newly-selected pattern starts. (This behavior can also be changed later.) The green playback bar will only display when you are viewing the pattern that is currently playing. </p>

<p></p>

<p><span class="Apple-style-span" style="font-weight: bold;">Navigating to the Parameter Screen:</span></p>

<p>From the Edit Screen, hold down the B button and press Up.This will take you to the Tempo display in the Parameter Screen. To move to other parameters, press the Left and Right buttons.</p><p><br /></p>

<p><span class="Apple-style-span" style="color: rgb(0, 0, 0); font-family: -webkit-monospace; "><pre>&lt;--BPM-Loop Length-Loop Start-Copy--><br />    |<br />   B+Up (just B to get back)<br />    |<br />Edit Screen<br />    |<br />  B+Down (just B to get back)<br />    |<br />Save/Load Screen <br /> </pre></span></p>

<p><span class="Apple-style-span" style="font-weight: bold;"><span class="Apple-style-span" style="font-family: '-editor-proxy';">Changing the Tempo:</span></span></p><p>The tempo starts out at 120 beats per minute. (For various reasons the tempo is not exactly what is displayed, but it's pretty close. See the design notes at the end of this document.) </p>

<p>On the Parameter Screen, during playback, the current step will be displayed as a moving dot at the bottom of the screen.</p>

<p><img src="http://farm4.static.flickr.com/3379/3343832006_a9ee69c4bd.jpg" alt="BPM display" /></p>

<p>Press Up and Down to change the tempo. The maximum value is 199 <span class="caps">BPM </span>and the minimum is 45. If MeggySeq is currently playing your patterns, you should see and hear it speed up or slow down as you change the tempo. </p>

<p><span class="Apple-style-span" style="font-family: '-editor-proxy';"><span class="Apple-style-span" style="font-weight: bold;">Looping:</span></span></p>

<p>MeggySeq can loop through patterns, letting you create longer, more complex compositions.</p>

<p>There are two parameters that control looping, Loop Length and Loop Start. Loop Length is the number of patterns to play, and Loop Start is the pattern at which the loop begins.</p>

<p><img src="http://farm4.static.flickr.com/3361/3343840208_192253d917.jpg" alt="loop start" /></p>

<p>To change the loop parameters, move to the parameter screen and hit Right or Left until the Loop Length or Loop Start icons are displayed. Use the Up and Down buttons to change the value of the parameters.</p>

<p><img src="http://farm4.static.flickr.com/3602/3343000657_64b16d2bb4.jpg" alt="loop length" /></p>

<p>By default, looping is disabled. Set the Loop Length to a value larger than 0 to enable looping. Set it back to 0 to disable looping.</p>

<p>When looping is enabled, the top row of <span class="caps">LED</span>s will light up to indicate the patterns that will loop. For example, if Loop Length is set to 4 and Loop Start is set to 3, patterns, 3, 4, 5, and 6 will play continuously, one after the other. After pattern 6, pattern 3 will start again, and so on.</p>

<p>If looping is enabled, and you hit A to start playback while on a pattern not in the loop, that pattern will play first. When it finishes, playback will jump to the first pattern in the loop. For example, if Loop Length is set to 4 and Loop Start is set to 3, and you start playback on pattern 8, pattern 8 will play, and then patterns 3, 4, 5, and 6, and then pattern 3 again and so on.</p>

<p>One warning: Looping can be confusing, since if looping is enabled, the pattern displayed on the Edit Screen may not ever play. If you get lost, you can always disable looping by setting the Loop Length to 0.</p>

<p></p>

<p><span class="Apple-style-span" style="font-weight: bold;"><span class="Apple-style-span" style="font-family: '-editor-proxy';">Copying Patterns:</span></span></p>

<p><img src="http://farm4.static.flickr.com/3106/3343010339_7a3e7ae711.jpg" alt="copy screen" /></p>

<p>To copy patterns from one slot to another, navigate to the Copy Screen. The number on the left is the pattern that will be copied to the pattern number displayed on the right. (The arrow indicates the direction.) If the first number is 0, it will clear the pattern on the right, setting all steps to 0. The number that is selected and you can currently change will be red, while the number you can't currently change will be dim green. You can use the Left and Right buttons to change your selection or to navigate out of the Copy Screen. Up and Down will change the currently-selected value. Pressing A at any time on the Copy Screen will perform the copy as selected immediately.</p>

<p>To leave the Copy Screen, you can either press B to go back to the Edit Screen or Left or Right to move to other parameters. </p>

<p><br /><span class="Apple-style-span" style="font-weight: bold;"><span class="Apple-style-span" style="font-family: '-editor-proxy';">
Saving and Loading:</span></span></p>

<p>From the Edit Screen, hold down the B button and press Down to go to the Save/Load Screen. </p>

<p>Warning: This will stop playback. </p>

<p><img src="http://farm4.static.flickr.com/3319/3343846528_b9b3491f6f.jpg?v=0" alt="loading" /></p>

<p>From here you can press Left and Right to choose saving or loading (indicated by the letters S or L on the left) and up and down to choose bank 1 or 2. Each bank can hold 8 patterns and all other parameters, like tempo, loop setup, and so on. </p>

<p>Pressing A will either save the current memory to the selected bank or will load the selected bank to current memory for editing or playback. </p>

<p><img src="http://farm4.static.flickr.com/3299/3343848296_e18fe5d520.jpg" alt="saving" /></p>

<p>Banks are saved to the Meggy Jr's <span class="caps">EEPROM, </span>so they will not be erased even if you turn off your Meggy. If you've come up with some great beats and don't want to lose them, save them! </p>

<p>Pressing B will exit back to the Edit Screen. </p>

<p>(WARNING: If you've been using the <span class="caps">EEPROM </span>to store other things, note that this will nuke whatever's already in there!<br /><br />
Also, the <span class="caps">EEPROM </span>is only rated for 100,000 writes, so don't pound the save button unless you want to shorten the life of your Meggy's <span class="caps">EEPROM.</span>) </p>

<p><br /><span class="Apple-style-span" style="font-weight: bold;"><span class="Apple-style-span" style="font-family: '-editor-proxy';">
Setting Up Samples on a Wave Shield:</span></span></p>

<p>You need a set of 8 <span class="caps">WAV </span>files (or fewer if you don't want to have as many sounds, I suppose) on an SD card. They can be anything, of pretty much any length that will fit on the card.</p>

<p>Convert them to the right format and copy the files onto an SD card as described here:</p>

<p><a href="http://www.ladyada.net/make/waveshield/convert.html">http://www.ladyada.net/make/waveshield/convert.html</a></p>

<p>For playback using the MeggySeqListener.pde program, they <span class="caps">MUST </span>be named "1.WAV" through "8.WAV". The caps are important. "1.wav" won't be found and won't play.</p>

<p>If you need a set of files you know will work, try Lady Ada's<br />
numbers:</p>

<p><a href="http://www.ladyada.net/media/wavshield/piwav.zip">http://www.ladyada.net/media/wavshield/piwav.zip</a></p><p>I have also included a couple of sample sets in the zip file from the google code page.</p>

<p>The files should be in the root directory of the SD card, not in another directory on the card. Make sure the filenames are all upper-case.</p>

<p>To test it, you can load the MeggySeqListener into your arduino with the Wave Shield attached and turn on the serial monitor in your arduino environment. (Make sure the baud is set to 38400.) You should be able to type the numbers 1-8 into the input box and hit return and hear the sounds play back from the Wave Shield. </p>

<p>If you don't hear anything make sure that:</p>

<p>1. You have headphones or some kind of amplified speakers plugged into the Wave Shield (powered computer speakers should work for this).<br /><br />
2. The Wave Shield volume is turned up<br /><br />
3. No errors are showing up on the serial monitor</p>

<p><br /><span class="Apple-style-span" style="font-weight: bold;"><span class="Apple-style-span" style="font-family: '-editor-proxy';">
Connecting your Meggy to a Wave Shield:</span></span></p>

<p><img src="http://farm4.static.flickr.com/3593/3342983445_fc695d0af8.jpg" alt="serial connection" /></p>

<p>Meggy Jr can send and receive data over serial. MeggySeq only sends. The default rate is 38,400 baud (which can be changed in the program). The listener must be set to the same baud rate for communication to work. </p>

<p>To build a cable, start building a MeggyLink cable, as pictured here:</p>

<p><a href="http://www.evilmadscientist.com/article.php/meggycable">http://www.evilmadscientist.com/article.php/meggycable</a></p>

<p>One end must be what's described there. The other end should be able to attach to whatever you are using for a listener. For an Arduino and Wave Shield, you can use the handy jumper connections built into the Wave Shield circuit board:</p>

<p><img src="http://farm4.static.flickr.com/3642/3342978545_c7b007a662.jpg" alt="waveshield serial" /></p>

<p>Connect the RX connection on the Meggy to the TX connection on the Wave Shield, and vice-versa. The ground connection should go to the pin labelled "GND" on the Wave Shield. </p>

<p>(If you are building a cable for <span class="caps">MIDI </span>output, it's similar. I'm going to try to set this up next. Also, measure your wires better than I did so you don't end up with a random longer jumper like mine.) </p>

<p>Once the cable is built, make sure the listener arduino has power, connect the cable to Meggy and listener, and turn on your Meggy.<br /><br />
Enter some steps and hit play. You should hear your sounds. <br /><br />
Have fun!</p>

<p>[MOVIE, yay.]</p><p><span class="Apple-style-span" style="font-weight: bold;"><span class="Apple-style-span" style="font-family: '-editor-proxy';">
Design Notes:</span></span></p>

<p>- Since <span class="caps">MIDI </span>is just serial, it should be easy enough to modify the output to send <span class="caps">MIDI </span>notes rather than just numbers. I've marked those spots in the program. Building a <span class="caps">MIDI </span>cable is left as an exercise for the reader. Info:</p><p><a href="http://itp.nyu.edu/physcomp/Labs/MIDIOutput">http://itp.nyu.edu/physcomp/Labs/MIDIOutput</a></p><p><br /></p><p>- <span class="caps">BPM </span>is not quite accurate. (Although if you were one of the 3 or 4 people who downloaded version 1.0, it's much better now.)</p>

<p>- It might be nice to stop users from hitting the Save button more than once per visit to the Save screen.</p><p><br /></p><p><span class="Apple-style-span" style="font-family: '-editor-proxy';"><span class="Apple-style-span" style="font-weight: bold;">Where to get samples?</span></span></p><p></p><p><a href="http://www.freesound.org/">http://www.freesound.org/</a></p><p><a href="http://www.rhythm-lab.com/">http://www.rhythm-lab.com/</a></p><p><a href="http://www.archive.org/search.php?query=subject%3A%22OLPC%22">http://www.archive.org/search.php?query=subject%3A%22OLPC%22</a></p><p></p><p><br /></p><p></p>]]>
    </content>
</entry>

<entry>
    <title>MeggySeq 1.0 on its way...</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2009/03/meggyseq-10-on-its-way.html" />
    <id>tag:www.solipsism.net,2009://1.23</id>

    <published>2009-03-10T02:52:01Z</published>
    <updated>2009-03-10T02:53:24Z</updated>

    <summary> I just need to finish up the last pieces of documentation, take a few pictures and upload a couple of movies, and it&apos;ll be ready to go. Watch this space!...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Arduino" scheme="http://www.sixapart.com/ns/types#category" />
    
    <category term="arduinomeggyseq" label="arduino meggyseq" scheme="http://www.sixapart.com/ns/types#tag" />
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p><br />
I just need to finish up the last pieces of documentation, take a few pictures and upload a couple of movies, and it'll be ready to go. </p>

<p>Watch this space!</p>]]>
        
    </content>
</entry>

<entry>
    <title>State of the MeggySeq</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2009/03/state-of-the-meggyseq.html" />
    <id>tag:www.solipsism.net,2009://1.21</id>

    <published>2009-03-06T10:23:16Z</published>
    <updated>2009-03-09T23:12:15Z</updated>

    <summary>Tonight I fixed it up so that you can hit play and change patterns and the pattern won&apos;t change to the one currently displayed until the first finishes playing. This is important because by dissociating playback from editing, I can...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Arduino" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p>Tonight I fixed it up so that you can hit play and change patterns and the pattern won't change to the one currently displayed until the first finishes playing. </p>

<p>This is important because by dissociating playback from editing, I can build in looping functionality.</p>

<p>The current plan is to let the user pick loops of 1, 2, 4, or 8 patterns. (Or pick 0 to not loop at all.) Then the user can pick a starting pattern (which will adjust itself based on the length of loop. A loop of 4 patterns could start at 1, 2, 3, 4, or 5, but not 6, 7, or 8, and so on). </p>

<p>When the user hits A to start playback, the currently-displayed pattern will play and then if it's part of the loop, playback will continue until the end of the loop is reached and then start over at the beginning of the loop. If the pattern is not part of the loop, that pattern will play and then it will jump to the start of the loop. So if I have a 4-pattern loop starting at 5 and I'm on 1 and hit play, it will play 1 and then 5, 6, 7, 8, and 5 again and so on. </p>

<p>These settings will be saved along with the patterns and tempo to eeprom. </p>

<p>When this part is done, I'll clean up the comments and debug junk and release the source! I suspect swing quantization will take enough time to sort out that I might as well let people play with what's here and not make them wait for me to figure out something complicated that I didn't quite design the thing around. </p>]]>
        
    </content>
</entry>

<entry>
    <title>MeggySeq update!</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2009/03/meggyseq-update.html" />
    <id>tag:www.solipsism.net,2009://1.20</id>

    <published>2009-03-05T11:28:21Z</published>
    <updated>2009-03-09T23:12:15Z</updated>

    <summary> I have just finished and (more or less) tested pattern copying and clearing and saving to/loading from the EEPROM. It all works, and so does my fairly crude interface. (B+U goes to parameter screens, does not stop playback. B+D...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Arduino" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p><br />
I have just finished and (more or less) tested pattern copying and clearing and saving to/loading from the EEPROM. It all works, and so does my fairly crude interface. (B+U goes to parameter screens, does not stop playback. B+D goes to load/save page, does stop playback.)</p>

<p>Next up, a couple of variations on looping, probably loops of 1, 2, 4, and 8 patterns, starting at arbitrary patterns (but a loop of 8 will start a 1, and a loop of 4 can't start at anything higher than 5 and so on). This gets tougher, since it will mean a) dissociating what's displayed with what's playing (or making it hard to edit) and b) trying to display more info on the top 8 auxLEDs than you can really easily display on simple LEDs. I'll probably have to resort to blinking, which is kind of inelegant. Unfortunately I'm using all 64 pixels for the pattern display so I can't mess with that part of the screen. The good part is that I made good decisions toward the beginning of writing this thing, so most of this won't be too difficult. </p>

<p>When that's done, I'll post the code for MeggySeq and the listener (that, at least, won't change much if at all) and write up some kind of How-To with pictures and details on the serial cable between the Meggy and the Arduino/Waveshield. Also, I'll list all the things that are wrong with how this thing works and see if somebody else feels like fixing them... 8) (Number one: What I call "BPM" isn't quite the same as the actual beats per minute that play.) </p>

<p>I'll also make sure my code is readable and that there are comments and things pointing out where, if you wanted to make it send MIDI output, you'd do so. I may write up that part myself. even. </p>

<p>I'm also at 8296 bytes used out of about 12k usable on the ATmega chip (after the arduino bootloader and stuff is installed). I may be able to ditch some of what I'm doing with progmem-- if nothing else, removing the #define DEBUG flag will get rid of a bunch of static strings. </p>

<p>I'm really happy with how this is turning out. More photos and detailed movies this weekend.</p>]]>
        
    </content>
</entry>

<entry>
    <title>More MeggySeq</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2009/03/more-meggyseq.html" />
    <id>tag:www.solipsism.net,2009://1.19</id>

    <published>2009-03-04T02:03:39Z</published>
    <updated>2009-03-09T23:12:15Z</updated>

    <summary>More fun with MeggySeq-- a different set of samples this time....</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Arduino" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p>More fun with MeggySeq-- a different set of samples this time.</p>

<p><object type="application/x-shockwave-flash" width="640" height="480" data="http://www.flickr.com/apps/video/stewart.swf?v=67090" classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000"> <param name="flashvars" value="intl_lang=en-us&amp;photo_secret=fc7681e8c0&amp;photo_id=3326960274"></param> <param name="movie" value="http://www.flickr.com/apps/video/stewart.swf?v=67090"></param> <param name="bgcolor" value="#000000"></param> <param name="allowFullScreen" value="true"></param><embed type="application/x-shockwave-flash" src="http://www.flickr.com/apps/video/stewart.swf?v=67090" bgcolor="#000000" allowfullscreen="true" flashvars="intl_lang=en-us&amp;photo_secret=fc7681e8c0&amp;photo_id=3326960274" height="480" width="640"></embed></object></p>]]>
        
    </content>
</entry>

<entry>
    <title>Oh hey.</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2009/03/oh-hey.html" />
    <id>tag:www.solipsism.net,2009://1.18</id>

    <published>2009-03-03T23:42:42Z</published>
    <updated>2009-03-09T23:12:14Z</updated>

    <summary>Looks like MatrixSynth linked here... Unfortunately, I haven&apos;t updated in a long time. So, here&apos;s a link to the current MeggySeq code and the MeggySeq Listener (which runs on the Waveshield arduino). (Also, the old mp3 links here are dead...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Administrative" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p>Looks like <a href="http://matrixsynth.blogspot.com">MatrixSynth</a> linked here... Unfortunately, I haven't updated in a long time.</p>

<p>So, here's <a href="http://www.solipsism.net/arduino/MeggySeq.pde">a link to the current MeggySeq code</a> and the <a href="http://www.solipsism.net/arduino/MeggySeqListener.pde">MeggySeq Listener</a> (which runs on the Waveshield arduino).</p>

<p>(Also, the old mp3 links here are dead and will stay that way, sorry. It was killing my bandwidth.)</p>]]>
        
    </content>
</entry>

<entry>
    <title>Zenith/Salt Tank </title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2006/06/zenithsalt-tank-1.html" />
    <id>tag:www.solipsism.net,2006://1.16</id>

    <published>2006-06-24T03:57:26Z</published>
    <updated>2009-03-09T23:12:14Z</updated>

    <summary>I have a few compilations that I mostly listen to late at night. One of them is the first FAX compilation, a double CD of ambient electronic music from one of the most prominent ambient labels of the mid-90&apos;s. The...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Ambient" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p>I have a few compilations that I mostly listen to late at night. One of them is the first FAX compilation, a double CD of ambient electronic music from one of the most prominent ambient labels of the mid-90's. The second is a promo I was given of a compilation called <i>United States of Ambience 2</i>, which is pretty much what it sounds like. </p>

<p>I've got two tracks today, good for when you realize it's about 1:30 or 2 in the morning and you've been up for longer than you expected but aren't quite ready to go to bed yet. Maybe you've got the last of a glass of wine to finish, maybe you're on the last few pages of your book (or maybe, with pleasant synchronicity, both). Or maybe other people don't sit up all night reading and listening to ambient music and drinking wine. </p>

<p>They're both beat-driven, but quietly so. They don't pound, they throb and pulse. They're subtly insistent, taking you with them while they go somewhere and look around and then bring you home again. The first, "Electro Dreams," is a brisk walk at night, past people moving through their own lives and doing whatever it is they need to do separately from any observer and from one another, while  the second, "Introspection Part 1," is a look around <a href="http://solipsistnation.livejournal.com/164929.html">the cannery</a> sometime in the very early morning when even the people at work are asleep on their feet, dreaming themselves into the machinery in a way the daytime workers never experience. </p>

<p>Both of these appear to be out of print. If you find them in the used bins or feel like dropping the 7 bucks Amazon sellers seem to want for the first Fax compilation, I'd say go for it.</p>

<p><a href="http://www.solipsism.net/files/zenith-electrodreams.mp3">Zenith - Electro Dreams</a> (<i>FAX Compilation</i>)</p>

<p><a href="http://www.solipsism.net/files/salttank-introspectionpart1.mp3">Salt Tank - Introspection Part 1</a> (<i>United States of Ambience 2</i>)</p>]]>
        
    </content>
</entry>

<entry>
    <title>Maaashups</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2006/06/maaashups.html" />
    <id>tag:www.solipsism.net,2006://1.15</id>

    <published>2006-06-05T21:37:20Z</published>
    <updated>2009-03-09T23:12:14Z</updated>

    <summary>I have mixed feelings on mashups... On the one hand, you have brilliant collages like The Kleptones&apos; 24 Hours or The Evolution Control Committee. On the other hand, there are any number of crap mixes where somebody throws a couple...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Mash-Up" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p>I have mixed feelings on mashups... On the one hand, you have brilliant collages like <a href="http://www.kleptones.com/pages/downloads_24h.html">The Kleptones' <i>24 Hours</i></a> or <a href="http://evolution-control.com/">The Evolution Control Committee</a>. On the other hand, there are any number of crap mixes where somebody throws a couple of songs into Ableton Live or Garageband without regard for little details like, you know, <i>key</i>. (Or even creative pitch-shifting.) Plus I could live the rest of my life very contentedly without ever hearing that damn "Oops, I appear to have spent all last night masturbating and now I'm going to claim it was an accident, tee hee" song pasted over another song again. (Hip-hop and soul vocalists take note! If you record a song without backing tracks under your vocals, it is guaranteed that every schmuck with Garageband will be mixing you with hundreds of generic Apple Loops the very hour your track hits the internet!)</p>

<p>Like any other morbid curiosity, thought, I can't resist poking around, just to see what crimes have been perpetrated against my favorite songs. Here are some tracks I've found that I think are interesting, amusing, and non-obvious enough to point out.</p>

<p><a href="http://www.solipsism.net/files/mashup-policyofsweetdreams.mp3">Policy of Sweet Dreams</a> -- Depeche Mode and the Eurhythmics. Synthpop power mix, yeah! I especially like how the opening hooks have been interlaced to form a sort of uber-hook. And the Eurhythmics "Ooohs" and Depeche Mode chorus mix nicely. Recommended. </p>

<p><a href="http://www.solipsism.net/files/mashup-neverfloaton.mp3">Never Float On</a> -- The Assembly and Modest Mouse. Mixing two super-popular synthpop acts is too obvious? Well, okay. How about the band Vince Clarke was in between Yaz and Erasure? With Feargal Sharkey on vocals, The Assembly recorded and released one single, "Never Never." Here it is, mixed with Modest Mouse's recently-popular "Float On." A little time-stretched, sure, but it works.</p>

<p><a href="http://www.solipsism.net/files/mashup-devilwentdowntothebeach.mp3">Devil Went Down To The Beach</a> -- New Order and the Charlie Daniels Band. Synthpop and indie rock was too obvious? Sure, okay. Here you go! The instrumental B-side version of "Blue Monday" and some hardcore country music! Take that!</p>

<p>All right. That's probably not my final word on mashups, but now I can claim I have followed internet trends and talked about mashups in my mp3 blog. Now I just need to set up an Amazon wish list and post topless pictures. <br />
</p>]]>
        
    </content>
</entry>

<entry>
    <title>The Overlords</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2006/06/the-overlords-1.html" />
    <id>tag:www.solipsism.net,2006://1.14</id>

    <published>2006-06-05T21:23:12Z</published>
    <updated>2009-03-09T23:12:13Z</updated>

    <summary>I once read a usenet article on The Overlords describing them as somewhere between Front 242 and Devo. Thinking that seemed like an ideal combination, I sought out their first album, Organic?. It wasn&apos;t too bad a description. Driving industrial...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Industrial" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p>I once read a usenet article on The Overlords describing them as somewhere between Front 242 and Devo. Thinking that seemed like an ideal combination, I sought out their first album, <i>Organic?</i>. It wasn't too bad a description. Driving industrial beats, synthy hooks, growly vocals delivered in some unidentifiable European accent, and a little  bonus weirdness thrown in for extra excitement. Plus a cover of "Holiday in Cambodia." What more could you want? </p>

<p>They released another album, <i>All The Naked People</i>, which included actual production values, but it was far less interesting than their first. Thus, the three tracks here are from <i>Organic?</i> The Overlords appear to have pretty much vanished since then. </p>

<p><a href="http://www.solipsism.net/files/overlords-organic.mp3">Organic!</a><br />
<a href="http://www.solipsism.net/files/overlords-holidayincambodia.mp3">Holiday in Cambodia</a><br />
<a href="http://www.solipsism.net/files/overlords-neardark.mp3">Near Dark [Campfire Mix]</a></p>]]>
        
    </content>
</entry>

<entry>
    <title>Doubting Thomas</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2006/06/doubting-thomas.html" />
    <id>tag:www.solipsism.net,2006://1.13</id>

    <published>2006-06-05T18:04:13Z</published>
    <updated>2009-03-09T23:12:13Z</updated>

    <summary>The late 80&apos;s were a fertile period in the world of industrial music-- Skinny Puppy in particular released four seminal studio albums-- the kind of albums that influenced everyone who came after them (even if the bumper crop of imitators...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Industrial" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p>The late 80's were a fertile period in the world of industrial music-- Skinny Puppy in particular released four seminal studio albums-- the kind of albums that influenced everyone who came after them (even if the bumper crop of imitators attracted by, for example, Cleopatra Records didn't seem to be good for much more than novelty tribute albums and opening for better bands). </p>

<p>Between 1987 and 1990, cEvin Key and Dwayne Goettel recorded enough tracks on their own to fill out an album and an EP. Key's percussion and Goettel's sampling combine to form an equisitely-crafted set of what they called "soundtracks for movies that never existed." <i>The Infidel</i> is dark, percussive, and lush, and the carefully-chosen snippets of movie dialog serve to add extra layers of expression to what might otherwise be just another set of almost ambient instrumental tracks (although an exceptionally lush and complex set).</p>

<p>I'm including a few tracks here-- "Naugal Tone" and "Come in Piece" from <i>The Infidel</i> and  the extended version of "Father Don't Cry" from the <i>Father Don't Cry</i> EP.</p>

<p>In 1995 Dwayne Goettel died of a heroin overdose at his parents' house, where he had gone in an attempt to kick the habit.</p>

<p><a href="http://www.solipsism.net/files/DoubtingThomas-FatherDontCryExtended.mp3">Father Don't Cry (Extended)</a><br />
<a href="http://www.solipsism.net/files/DoubtingThomas-NaugalTone.mp3">Naugal Tone</a><br />
<a href="http://www.solipsism.net/files/DoubtingThomas-ComeInPiece.mp3">Come in Piece</a></p>]]>
        
    </content>
</entry>

<entry>
    <title>Tangerine Dream</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2006/05/tangerine-dream-1.html" />
    <id>tag:www.solipsism.net,2006://1.12</id>

    <published>2006-05-16T20:57:02Z</published>
    <updated>2009-03-09T23:12:12Z</updated>

    <summary>I first discovered electronic music when I was in middle school, in 1982 or 1983. The music teacher sat us down and played Kraftwerk for us-- Autobahn, all of it. I was enthralled, entranced, and newly obsessed. I went out...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Noodly Electronica" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p>I first discovered electronic music when I was in middle school, in 1982 or 1983. The music teacher sat us down and played Kraftwerk for us-- <i>Autobahn</i>, all of it. I was enthralled, entranced, and newly obsessed. I went out to find more electronic music, and was directed to Tangerine Dream. The first Tangerine Dream album I picked up was <i>Exit</i>, and it remains one of my favorite albums of electronic music. I used to listen to it while playing games on my Commodore 64, but that's another story.</p>

<p><i>Exit</i> is notable for being written largely using the PPG Wave 2 synthesizer-- it's a striking and distinctive sound. It was one of the first (if not THE first) synthesizer to use digital wavetables, but it processed them through an analog signal chain, making it an incredibly versatile and expressive synth. The sounds are undeniably digital, but the analog filters warm up the sound and keep it from being too sterile. <a href="http://www.vintagesynth.com/misc/wave.shtml">Here's the page at Vintage Synth Explorer.</a> It's pretty! And blue! </p>

<p>In the two tracks here, most of what you hear is generated by the PPG Wave. Even the most digital sounds are, while clean and undeniably digital, not sterile or static. No simple looped waveforms here-- nope, this is MODULATION.</p>

<p>I love this album, and I hope you, my loyal readers, enjoy it as well.</p>

<p><a href="http://www.solipsism.net/files/tangerinedream-kiewmission.mp3">Kiew Mission</a><br />
<a href="http://www.solipsism.net/files/tangerinedream-choronzon.mp3">Choronzon</a></p>

<p>The album goes in and out of print-- I can't recommend it enough.</p>]]>
        
    </content>
</entry>

<entry>
    <title>Holland</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2006/04/holland.html" />
    <id>tag:www.solipsism.net,2006://1.11</id>

    <published>2006-04-13T00:37:45Z</published>
    <updated>2009-03-09T23:12:12Z</updated>

    <summary>I had been meaning to post about hollAnd, but Bret at postpunkjunk.com got to it first. So, here&apos;s a link to his post, where you can hear &quot;Beep, Kiss&quot; and a couple of others. He appears to have about the...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Experimental" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p>I had been meaning to post about hollAnd, but Bret at postpunkjunk.com got to it first. So, <a href="http://postpunkjunk.com/?p=97">here's a link to his post</a>, where you can hear "Beep, Kiss" and a couple of others. He appears to have about the same opinion I do, too-- decent, interesting, uneven. </p>

<p>The PostPunkJunk archives are well worth trawling for music, too... </p>]]>
        
    </content>
</entry>

<entry>
    <title>Lali Puna, Baltimora, Blue Clocks Green</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2006/04/lali-puna-baltimora-blue-clock.html" />
    <id>tag:www.solipsism.net,2006://1.10</id>

    <published>2006-04-11T18:11:50Z</published>
    <updated>2009-03-09T23:12:11Z</updated>

    <summary>Okay, three tracks today. Insert typical blogger whining about not having posted in so long here. First, Lali Puna doing a super-quiet, almost ambient, cover of Phil Oakey and Giorgio Moroder&apos;s title song for the movie Electric Dreams, which, in...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Synthpop" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p>Okay, three tracks today. Insert typical blogger whining about not having posted in so long here. </p>

<p>First, Lali Puna doing a super-quiet, almost ambient, cover of Phil Oakey and Giorgio Moroder's title song for the movie <i>Electric Dreams</i>, which, in a heartless crime against culture, isn't out on DVD. How could they release <i>Short Circuit</i>, but not <i>Electric Dreams</i>? It's got a MUCH better soundtrack, especially with that wonderful cello/computer jam session. That and the closing number in <i>Revenge of the Nerds</i> were the most influential pieces of movie music in my formative years. Make of that what you will. And now, on the "Reproductions" Human League tribute album (which is generally quite good), Lali Puna has made it quiet and pretty, for times when you want to express how lonely it can be to be far from somebody you love and miss but huge throbbing analog synths just don't fit the mood. </p>

<p><a href="http://www.solipsism.net/files/lalipuna-electricdreams.mp3">Lali Puna -- (Together In) Electric Dreams</a></p>

<p>Next up, more unabashed 80's cheese, complete with chunky octave basslines, sampled guitars and a hook so hooky that I had to dig up the song more than 15 years later to find out if it was as great as I remembered. Yep, it was. I don't really feel like searching out any info about Baltimora right now. Presumably they were from Baltimore, released this song and the requisite 12" remix (which you're getting here-- dig it, synthesizer monkey noise breakdown at 4:49), and vanished. Who knows? Thank you, "Maximum 80's," for bringing us this nearly-forgotten delight. And oh look, <a href="http://www.youtube.com/results?search=baltimora&search_type=search_videos&search=Search">there are Baltimora videos on YouTube</a>. Cool. Baltimora! Top of the Pops! </p>

<p><a href="http://www.solipsism.net/files/baltimora-tarzanboy-12inch.mp3">Baltimora -- Tarzan Boy (12" remix)</a></p>

<p>Finally, another piece of catchy 80's synthpop, from <a href="http://www.blueclocksgreen.com/">Blue Clocks Green</a>, who until a couple of years ago didn't even have a web presence. They do now, and there's been some vague mention of a comeback, although I think that would imply that they'd actually been here in the first place. There's an extensive biography <a href="http://pobox.upenn.edu/~lapis/pistol.html">here</a>, and I deeply regret not stealing the "Hemingway" 12" vinyl from WBUR when I had the chance. Alas, my morality. Anyway, it's a cute and bouncy little tune, and very catchy indeed. Highly recommended, and mirrored here in case the upenn.edu link (where I got the file) goes away.</p>

<p><a href="http://www.solipsism.net/files/blueclocksgreen-hemingway.mp3">Blue Clocks Green -- Hemingway</a></p>

<p>Regardless of my previous threats, these are all mp3 files, so non-itunes users can relax-- for now.</p>]]>
        
    </content>
</entry>

<entry>
    <title>AAC vs. MP3</title>
    <link rel="alternate" type="text/html" href="http://www.solipsism.net/2006/03/aac-vs-mp3.html" />
    <id>tag:www.solipsism.net,2006://1.9</id>

    <published>2006-03-14T19:58:43Z</published>
    <updated>2009-03-09T23:12:17Z</updated>

    <summary>I mostly use the AAC format (.m4a) when I encode my CDs these days. I&apos;ve done enough A/B testing to determine that (at least to me) they sound enough better to be worth using. I may post things here in...</summary>
    <author>
        <name>solipsistnation</name>
        <uri>http://www.solipsism.net</uri>
    </author>
    
        <category term="Administrative" scheme="http://www.sixapart.com/ns/types#category" />
    
    
    <content type="html" xml:lang="en" xml:base="http://www.solipsism.net/">
        <![CDATA[<p>I mostly use the AAC format (.m4a) when I encode my CDs these days. I've done enough A/B testing to determine that (at least to me) they sound enough better to be worth using. </p>

<p>I may post things here in .m4a format. This means that iPods are pretty much the only portable that can play them. Plus, it's possible that there are people whose software might not handle the format. Most players have plugins or some sort of method for playing .m4a files, at least. </p>

<p>Would there be massive outcry if I were to post music in .m4a format? I'm inclined to go ahead and do so, but if it would be WAY TOO ANNOYING, I'd go to the trouble of digging out CDs and re-encoding them. It would take longer, since I couldn't just upload what's on my laptop now, but for you, my beloved readers, I would do this thing.</p>

<p>Currently considering for upcoming posts: Shriekback, I Start Counting, A.C.Marias, You Shriek, and some others. Any requests? (I think I Start Counting will be next.) Plus, special guest posters Joe and Nik have accounts, whenever they feel like posting anything. </p>

<p>Let me know...<br />
</p>]]>
        
    </content>
</entry>

</feed>
