The Sonic Landscape

Max/Msp Standalone Application – Project Update (November 18th 2010)

Posted on | November 19, 2010 | No Comments

(Click image to view full screen)

Update (Nov 18th 2010)

Spent much of the day rebuilding my Max/Msp standalone application, after trying out various new ideas on how the interface should look. The previous versions were originally designed for a gallery installation planned for 2011 (consisting of a large printed map with RGB leds) although, as my current university project requires me to hand in a prototype of the work, i thought this would be a good opportunity to improve on the interface design and try out some new ideas.

Firstly, I found a great map from NASA, which has kindly been released into the public domain (details: HERE).

I’ve also changed the locations of a few of the Pachube data feeds, primarily to give each of them more space, so they are not as grouped together (as seen in previous versions). I’ve also changed the interface panels (on the top and bottom), by lowering the alpha channel to give a sort of transparent/glass style to the interface.

Hopefully this helps to make the standalone app more aesthetically pleasing to view, although i did have to add circular transparent shapes to surround the RGB LED points, to hopefully help focus the eye on each LED point on the map, and not to get lost in the complexity of the map itself.

All in all it took most of the day to finish, and its now 1:53am….Will try and upload a video of the updated project tomorrow.

Please check back for further details, thanks. Stats In Sound

Max/Msp Standalone Application (Video)

Posted on | November 5, 2010 | 2 Comments

Recent video detailing my current university project (using data provided by Pachube.com and Current Cost).

The project converts real-time energy consumption data from various locations around the globe and converts this data (from watts to hertz) to generate audible sine-waves. StatsInSound Stats In Sound

Pachube MaxMSP Standalone App (Oct 30th 2010) from Guy Evans on Vimeo.

Parsing XML Data directly into Max/Msp

Posted on | October 30, 2010 | No Comments

(This post has since been updated, click HERE to view the updated max/msp patch)

Had quite a busy and stressful week, working very long hours each day trying to parse XML data from Pachube directly into Max/Msp.

I had some feedback from my tutors last week and came to the decision of trying to make my Pachube Sinewave Project (see earlier blog posts), as a standalone interface (without the need to use Processing to get the Pachube data). This standalone option is a temporary measure until i start building the gallery installation itself (planned early 2011).

After working approximately 10-12 hours a day, i have FINALLY got my (Max/Msp) standalone app working correctly. I literally had to deconstuct my max patch and rebuild it from the ground up, testing out various techniques of parsing the XML data correctly.

Its been a major task having to rethink the project, whilst also learning how to correctly parse the XML data from Pachube for the data feeds I required.

Firstly i tried this method: (my api key has been removed for security purposes)

Example 1. (shown below)

________________________

Originally, i used the jitter objects:   jit.uldl, jit.textfile, jit.str tosymbol, combined with detox (xml parser), but had major problems using detox. I’m not sure if the problem was caused by authenticating my pachube api key, but no matter what i did, the detox max object would intermittently crash on a regular basis. The crashes may have been caused by the XML structure not being ‘standard’ XML format.

I then had to specify ‘which line’ from the XML file, contained the data i needed to extract. This was quite a long process, having to look at each XML file for the 13 data feeds, and manually calculating the line number for use.

Due to the problems of detox crashing regularly (although it may not have been a problem with detox itself, but more likely the XML structure of the data i was trying to extract), I then looked at other max objects which could similarly parse the data.

After days and days of experimenting (very long hours!) i used a different technique (as shown below), whereby i specified the xml tag <> in conjunction with specifying the line number of the XML data i needed.

_______________________

The above example is not ideal, but its a quick workaround to get the data i needed. I was previously unable to get the data using correct XML tags, (such as  <value></value>), so this technique at least got the data i needed, (without the use of the detox object).

I added lots of other changes for my Max/Msp patch, notably using the patcher object with inlets and outlets, and then duplicating these to save time from manually re-creating each internal patch.  I also adapted the interface to function as a standalone app (using a ‘textedit’ object to allow user input of a Pachube API key). Also allowed the user to switch on/off data feeds by clicking the corresponding LED on the map.

This morning, i recreated each internal patcher (for each data feed) and removed the detox objects, using the newer examples i had successfully tested and so far so good….i can run the app for 10-20 minutes without it crashing at all.

Shown below is the newly created ‘standalone app’ which requires the user to input a valid Pachube API key (an api key is given once registered with pachube). I will upload a working version of this sometime in the future, but hope to further improve on the patch over the next few weeks.

Will update soon, when more progress has been made…

Click image below (for larger view)

RGB LED Update

Posted on | October 22, 2010 | No Comments

Had a bit of a major breakthrough earlier today, with regards to using my RGB LED’s for my project.

I had previously thought that i would need 3 channels of PWM to light each RGB LED, but luckily….as i only need to use the RED and GREEN outputs for my project (to fade from green to  yellow to red), i have luckily managed to light each LED using just 2 channels of PWM (woohoo!)

I’ve tied the Blue output for each RGB LED to a digital output and simply turned that output off, to bypass the Blue colour being used.

This small (but major breakthrough) will make my project a lot easier to complete. I’ve ordered 3 TLC5940 chips, which will give 16 channels of PWM per chip (16 x 3 = total of 48 channels of PWM), so in theory, i could possibly have 24 LED’s being used on my map (2 channels of PWM per LED).

I’m currently hacking the Maxuino patch (maxuino v.7 for Max/Msp), to compensate for the extra digital outputs on my Arduino Mega (53 Digital outputs).

I hope to try out my TLC5940 chips as soon as they get delivered, using this tutorial as an example: LINK

___________________________

UPDATE (3:53PM)

Managed to get 6 RGB LED’s connected via Maxuino. I extended the digital outputs up to 53 by editing the maxuino patch (to switch the BLUE values on/off) and i’m using 12 PWM channels for the RED/GREEN values for the 6 RGB LED’s.

Here are some examples below:

RGB LED

Posted on | October 20, 2010 | No Comments

(October 19th 2010)

I got my delivery of RGB LED’s earlier (from www.oomlout.co.uk) and have spent the evening trying to find a way of implementing them into my Max/Msp patch. I had previously used processing to light regular LED’s, but the RGB LED’s were a bit more tricky to control from Max.

I used Maxuino v.7 and duplicated the single PWM slider object another two times (to provide 3 channels of PWM to the RGB LED). I connected the 10 ‘zones’ from the max patch to newly created message boxes (RGB values), and each of the message boxes sent a signal to the Red and Green resistance for the RGB LED.

Took about 5 hours in total (testing out the RGB LED, setting new RGB values for the fade from green to yellow to red and then trying to integrate elements of Maxuino into my patch, to be able to send the data to my arduino)

Final got it working, and have tested it out with my own data feed from Pachube.

Managed to get the RGB colour to fade from Green to Yellow to Red (in 10 stages).

I’ve attached a few pictures below:

(The actual colours of the RGB LED’s are much brighter/vibrant, than compared to the photos below)

Hopefully i’ll upload some better examples later.

______________________

Next step is to either buy an RGB shield (as seen here), or figure out some other way of sending the data to the array of RGB LED’s (perhaps this cheaper method, using a few TLC5940 microchips daisy-chained together as seen in this example).

The image below shows how i integrated the Pachube data (in 10 steps) to the RGB values from Maxuino to my Arduino (click image for a larger view) :

Carbon Composition

Posted on | October 17, 2010 | No Comments

Recent upload to Soundcloud (short example of my university project). See earlier blog posts for further details on the project.

Carbon Composition by Guy Evans

Huge thanks to Usman Haque (and all the Pachube staff) and also to Current Cost. This project would not have been possible without their help.

Note Test (Oct 7th 2010)

Posted on | October 7, 2010 | No Comments

Note Test (October 7th 2010) from Guy Evans on Vimeo.

Short update on my university project using Pachube data to create a musical composition.

This video shows in more detail the max/msp object ‘freq2note’ (created by Karlheinz Essl – essl.at/​).
Firstly, i convert the electricity usage from Watts to Hertz. The max object (freq2note) then converts the frequency to musical notes across a piano.

The video simply shows in more detail, the mapping of the frequencies to the musical notes.
At the start of the video (0:00mins – 1:42mins) i’m comparing each frequency to the musical note equivalent.
Then at 1:43mins i begin receiving the real-time data from Pachube.com.

At 3:21mins i use my kettle to boil some water and you see my energy consumption increase from 119 watts to 1952 watts, which also changes the note mapping for that frequency (it plays a higher note).

Pachube Musical Score

Posted on | October 4, 2010 | No Comments

Pachube Musical Score – October 3rd 2010 from Guy Evans on Vimeo.

Latest update on my university project, converting real-time energy usage into a musical composition.

Yesterday,  I was experimenting with the Max/Msp ‘Real-time Composition Library’ by Karlheinz Essl (http://www.essl.at). Its an incredible library, lots of useful objects and some great examples to get started with.

I had previously attempted to convert the energy usage (in watts) to frequencies (Hertz). I then used the ‘freq2note’ max object to convert the frequencies to a musical scale and the results were quite interesting.

The ‘freq2note’ object converts frequencies from the range of 20 Hertz to approximately 3500 Hertz, and maps them across 8 octaves. I took the 12 global feeds from Pachube (real-time energy usage data) and outputted them through a piano.

The results were better than i expected, the piano almost mimics the sine-wave frequencies and adds a new dimension to the composition. I recorded 10 minutes as a quick test (as shown in the video above) and outputted the real-time data to a musical score (using Apple Logic). StatsInSound

Shown below is a short extract of the musical score (as shown in the video at the top of this post).

For the full 10 minute score, please download the PDF (here)

Pachube 10 minute musical score (Page 1 of 4) Stats In Sound

Project Update (Oct 2nd) VIDEO

Posted on | October 1, 2010 | 3 Comments

Project Update (Oct 2nd 2010) from Guy Evans on Vimeo.

Short video showing the updated design for my university project.

Please see earlier blog posts for more details on this project.

(I replaced the previous video with this new version, fixed a few glitches with incorrect colours being displayed on the map regarding the Pachube data feeds) StatsInSound Stats In Sound

For best results, view in HD (full screen) here.

Project Update (Oct 1st 2010)

Posted on | October 1, 2010 | No Comments

(Click the image above to view in fullsize)

I’ve spent the past few days completely redesigning the interface for my project. I’ve removed the sine-wave displays and opted for a much simpler interface. I redesigned it in Max/Msp, using a world map (with a Creative Commons license) and also made each point on the map change in real-time with the energy usage at each location.

I wanted to make the interface as simple as possible to understand and i’m much happier with this new version. My plan now is to print the map at very high resolution (and size) and attach it to a display board (with polystyrene panels at the rear). This will allow me to insert RGB LEDS at the locations on the map, (these LED’s are capable of changing to any colour within the RGB range) and will change in real-time depending on the energy consumption at each location. The polystyrene panels are needed because, sometimes the Pachube data feeds stop broadcasting and the data stops being received. I sometimes have to check the data feeds are still ‘live’ and if any are not, then i need to quickly find another live feed to incorporate into the installation. I’m hoping that if the map is mounted on polystyrene or a foam backing, i can quickly and easily remove an LED from an inactive feed, and reinsert it at a new location of a different live feed.

It took quite a lot of time figuring out the RGB colours for the Map Legend, although i finally decided on the colours shown on the map.

Now i just need to buy approx 25 RGB LED’s and attach them to the map display once it is printed.

When the patch is running (in max/msp), the colour at each location on the map changes in real-time dependent on peoples energy consumption. I’ll try and upload a short video later to detail this.

Shown below is an updated view of my current max/msp patch (click the image below to view fullsize), as you can see i’ve removed a lot of the earlier components since opting for the new look interface. All in all, the new redesigned interface took about 10 hours to build. StatsInSound Stats In Sound

« go backkeep looking »
  • Pages

  • Admin

  • Archives