Tin Drum

Here’s a nice use of GPS data. Stephen Schulz is using a HP iPAQ equipped with a GPS receiver and running Mediascape to help to power a wearable drummimg machine. More details can be found here.

Sing when your coding

Below is a screenshot of my away and home scripts hurling chants at each other. The home is chanting “who are ya” and the away is responding with “green army”. At the mo I’ve got each one printing the other’s chant just to make sure that the data transfer works but the plan is they’ll only print their own after responding to the incoming chant. Following on from my problems with getting the away to print the chant to the screen, I discovered that the font I used wouldn’t print at the point size that I was trying to use. Switching it to Tahoma seemed to do the trick. I also managed to export both of them as executables so that running them at the same time shouldn’t be an issue anymore.

The away and home scripts chanting at each other

Project progress 3

Since my last progress report, things have progressed at quite a steady pace. I’m developing the system using a mix of XHTML MP and PHP. This has meant a bit of a turnaround with my usual way of developing web applications. With the memory of mobile phones being at a premium and the size, or lack of more to the point, of bandwidth, I’ve had to go back to the days of building for 14.4k modems. Each page has to be stripped back to the absolute minimum needed to format it. However, I am starting to disagree with what seems to be the current opinion of using CSS. All the experts seem to advocate using inline styles as a way of reducing code and keeping it simple. But, this will actually bloat the code. If you want to set the links to always be black then for every link you need to add the inline style. I know it’s not a lot of characters but even so, you’re still adding to the weight of the page. What I’ve been doing is adding the styles into the header of the page and as each is only there once, it keeps the page weight down – maybe I should write a tutorial!!

Anyway, back to my progress. The pseudo email system is finished so users can now reply and email the administrator. At the moment they can’t contact a user direct unless they want to do a swap or respond to a request for one. It also sends an email to their email address telling them that they have a message waiting. With the cost of data transfer still at something of a premium, I never envisaged users being logged on for hours at an end and thought this would be a good way of notifying them. The registration page is complete as is a facility to send them their password if they’ve forgotten it. I’ve also recently finished the search feature so users can now look for assets they might want to swap. I’m currently working on the add facility. Adding the name, type of file and a brief description is fairly easy but getting the full file spec including path without actually loading the file has been a bit of a challenge but I’m getting closer to cracking it.

Things to do include the ability to unregister, modify the assets users put up for swapping and most importantly the process of the swap. My plan is to have this part finished by 29th March in time for the open day with the administrator’s system finished shortly after.

After a discussion with Chris, phone2fone is rapidly turning into a platform. With just a couple of slight mods, it could easily be used as a swapping game or even as a system for swapping or giving away larger items similar to Freecycle. Assuming I can keep up the same sort of progress, I’m gonna have a look at developing them also.

drumThing performance

Today was our performance of the drumThing. We set it all up at around lunchtime (thanks again Benji for your help) and had enough time for a couple of run thru’s. We had a bit of a scare with the quality of the audio but we found that was due to the weight of the leads pulling on the jack in the socket. Moving the laptop back from the edge of the desk and twisting the adaptor round soon fixed that. We were presenting late in the day mainly coz we stayed in 212 and didn’t realise that there was a running order in the other room until after everyone else had signed up. In the end that was probably something of a result coz with just 5 of us in there, the room was getting pretty hot so with the rest of the guys crowded round, it would have been worse.

The performance itself went well – Jamie has really got the hang of playing the drumThing and I think I managed to add delay and feedback at the right moments as well. Also being a drummer, Stu had a go at it. After some explanation from us on how it works, and me disconnecting the delayStick to make it easier to play, Stu started up. Considering he’d never played the drumThing before, I thought he did well. He took a while to start the recordings off but managed to make some decent noise out of it.

Below is my documentation in pdf format, the drumThing MAX patch plus the text version for downloading (released under the Creative Commons licence as at the bottom of the page) plus 3 Quicktime movies of various performances. Apologies for the file sizes of the movies, this was to ensure the audio was of a high quality.

Image of the drumThing patch

Photo of us performing today

Another photo of us performing

Photo of Stu playing the drums and the drumThing

Download documentation

Download the MAX/MSP drumThing patch

Download source text file

Quicktime movie of us playing the drumThing 33.3MB

Quicktime movie of us performing today 23.2MB

Quicktime movie of Stu playing the drumThing 12.4MB

It chants!!

You might just be able to read it but the image below is the “away” script with its chant and the response from the “home” code. In case your eye-sight can’t make it out, the away script chants “green army” and the home script responds with “who are ya”. So not to flood my network, I’ve got it running whenever I click the mouse. If only all crowds were like that :) I managed to get round my problem of yesterday by exporting the home script to run in a browser so that I could run the away script to allow me to print debug statements.

Screen dump of away code

Talking to each other some more

I’ve had some success getting the “away” script to talk to the “home” script. Home receives the message and prints it but I can’t get the away to do the same and I can’t see why. I’m getting a response back saying that the message has been delivered so it must be getting there. Unfortunately what isn’t helping is that I can’t run them both via the development environment to print debug statements as Processing will only let you open 1 at a time which is a bit of a pain to say the least.

Que sera sera…

…whatever will be will be
We’re going to Wem-ber-lee
Que sera sera

Flying high up in the sky…

…we’ll keep the green flag flying high
Set a course for Wem-ber-lee
We’ll keep the green flag flying high

Wem-ber-lee, Wem-ber-lee…

…we’re the famous Plymouth Argyle and we’re going to Wem-ber-lee

The drumThing

So, we’ve got a name now and it’s Drum Thing, although I like it as drumThing. And, if that’s not enough, we’ve also decided that we want to do a performance on the day and not just show a video. We will still submit a video from the other day but after chatting about it, we reckon people will get a better feel for it if they see and hear it in action.