Steffest Digitale Pulptuur

Je hebt gezocht op: "barcamp".
Bekijk terug alle berichten.

Airwave Pong Style!

Wave you hands in the air and pong it like you just don't care!

I like old stuff: it has a story, it is used. it has flaws.
And exactly those imperfections are interesting. Waba-Sabi you know?

That's why I ditched all my CD's and moved back to Vinyl,
and that's also why In my opinion most "pre-computer music" sounds better.

When you take a basic step sequencer or midi program, it's a robot: all notes are aligned on a fixed grid and it usually takes some effort to get a "human feel" to your music.


Now what if you could ease it up a bit in a fun way?
Let's take the graphical representation of a "beat" in most common step sequencers.
and let's take this thought one step further: the graphical representation defines the music, right?
So what if we alter the graphics, would the music change too?
For example, if we want to add a fade, we can just as well use photoshop to add some blur, right?

And if we want to loosen up that fixed grid, why not use a graphical filter to make it more "wobbly"

This way we can use graphical tools to mold your music into a more organic shape.

And more!
What if we could "read" any image in a musical way?
An image consists of lot's of coloured dots, each dot has some info we can use. on a computer screen, this is for example the amount of red, green and blue and the transparency.
We can sample that info from an image and use it for something musical.
An example: move you mouse over this image of a jungle, to explore it in an audio-way. (Well ... after you click on it to open the demo, right?)


To pour that into something musical, we can use "the bouncing ball" effect: a ball bouncing around in a rectangular box has 2 rhythms that are both fixed but as the sides of the box are not equal, the rhythms are constantly shifting.
It has the predicable structure of a beat box, but also the unpredictability of 2 patterns intermingling: Exactly the interesting effect we are looking for.
Try it out for yourselves!

(Seriously: leave it running on chrome or safari for a few hours: it's very relaxing!)


Of course we don't have to use a static image, we can use a video or ... a camera!
That is when things really get interesting: when you connect a camera as your graphical/musical input source, you can interact with your musical model live, in front of your camera.
Add a little motion-tracking and color-tracking, and you get a pretty accurate way of triggering musical events using your webcam.
To go all the way back to music software, we can even add some MIDI to trigger midi events using your webcam, and to record everything you do in your midi sequencer to take it further along towards a full musical production.

Wham! Before you know it, you got yourself a playful musical instrument.

Of course, it's a bit hard to control. It's probably wise to limit yourself with some quantization or some predefined chord schematics to get the sound you want.

Fiddling around with all my prototype toys, I created this demo song - I call it "Airwave pong" (You now: Wave you hands in the air in front of your webcam - combined with pong)

To be honest, I had to do a lot of post-processing on the midi data ... my motion tracking routines are somewhat crude and fly all over the place.

If you want to try it out for yourself, come find me a Barcamp Antwerp 7 this saturday, where I will be doing a live demo and will release all the tools I used.

Yes indeed: barcamp STILL is one of the most inspiring events EVER.
The concept is simple: short and open talks about anything you're passionate about. The presentations won't be perfect, but they will be real and honest, which makes them far more valuable then about 90% of al other talks on "professional" events.
So if you happen to be in the vicinity of Antwerp, do yourself a favour and drop by #BCA7
I can't wait !

Foto door Simon Schoeters

Tags: Graphics, in English, Music, Programming, Tinkering, VideoGeef je reactie (1)
 

My Little DrummerBot

Yay! finally took the time to finish a little Arduino project.
It's a another bot, more specific: a web controlled drummerbot!

Yes yes, the same old trick: web interfaces to physical objects: Me LUVS them.
Give me an Arduino and a browser and I'll build you your rainbow

Hey, I feel a song comming up!

 



Tap the drum pattern on your phone and this little bot will rock it!

drummerbot 



You control it like most drum computers: you draw the beats on a pattern of sixteen dots, perfectly suited for generic 4/4 rhythms.
There a 8 lines, each controlling 1 servo motor.

Most of the servo's have a percussion item both on the left and the right, that's why the pattern buttons have 3 states: off, left, right.
 That makes 14 distinct percussion sounds for the drummerbot.

The pattern in the webbrowser is packed into a string, which get send to the Arduino via HTTP.
You can use a wifi module and a http server on the Arduino, or you can use another device attached to the Arduino through a comm port.
The Arduino receives the string, unpacks it back to a pattern and simple loops over the steps controlling each servo.


drummerbot_grid


the "DrummerBot Step Seqeuncer V 0.01 very-much-alpha" page is here

You can also download the Arduino code here.

I must admit: the drums sound a bit dry without amplification though.
I recorded everything into Ableton Live and did the final mix there. (Shocking, right? The videoclip is actually NOT a live performance :-) )

I'm specifically fond of the "Horns"
They are 2 little fans with a servo pushing a piece of plastic against the blades.
A hell of a noise but when you add heaps of fuzz, chorus and overdrive effects they are pretty convincing.
I call them F*CK-YEAH-HORNS

If you want to jam along yourself: hop over this saturday to Barcamp Antwerpen, where I'll be giving a presentation with/about the bot.

Let's play!

Tags: Arduino, in English, Music, Programming, TinkeringGeef je reactie (4)
 

Barcamp Antwerpen 5

Dat ik barcamp een fantastisch concept vind, dat mag geweten zijn.

Zaterdag was de vijfde "Antwerpen" editie alweer.
Fijn te zien dat zo'n los gegeven zichzelf ook vernieuwt: ook al was het de 5de editie in Antwerpen en de tigste in Vlaanderen, toch bereikte het veel nieuwe mensen wat resulteert in veel nieuwe invalshoeken die (gelukkig) niet altijd geeky/techy zijn.

Fijn: nog steeds gepassioneerde mensen die iets uit het hart komen vertellen. Dat werkt.

Zoals steeds moet je meer sessies missen dan dat je kunt volgen. Gelukkig werden alle presentaties opgenomen (waarvoor Nokia een paar N8's leverde - naais) en zullen via http://www.barcamp.be/bca5 beschikbaar worden gesteld.

Goed zo, want al zag ik interessante en amusante presentaties zoals de trip in online memory lane van @mvissers en de analoge fotografie passie van @bunker - ik hoop achteraf toch nog een paar sessies in te kunnen halen op video.

264570953Voor mezelf is zo'n dag altijd een goede "deadline" om iets in elkaar te knutselen.
Meestal moet dat de avond ervoor dan nog gebeuren en deze keer was geen uitzondering.
Ik maakte een dinkie dat ik grootmoedig "robopet" noemde ter illustratie wat voor leuke kruisbestuivingen je kunt krijgen als je webinterfaces aan hardware koppelt.
Ook al had ik alle losse componenten afzonderlijk al wel eens gemaakt, het blijft toch altijd spannend of de theorie op zo'n korte tijd ook naar een praktische demo omgezet kan worden.
Wat klungelige wifi problemen buiten beschouwing gelaten, werkte het gelukkige wel: Ik had een "robotpet"-ding dat kan rijden en je op allerlei manier kon besturen (zoals via een wiimote) , dat video streaming doet, dat zelf zijn weg een beetje zoekt en dat wat media toeters en bellen heeft zoals text-to-speech.
Leuke demo - ik denk dat ik het robotje nog even in elkaar geplakt houd. Met al die RFID tags die hier in huis onder matten en vloeren zijn verstopt kan het ding al redelijk goed zijn weg vinden.
Mijn hoofdprobleem momenteel is de batterijduur. Ingenieus meesterbrein @kodel vertelde me dat ik Lipo batterijen nodig had, dus die moet ik eens in huis halen.
Dat robot-verhaal dat zou wel eens een blijver kunnen worden!

En als ik anderen kan overtuigen dat het belangrijk is om niet alles altijd even serieus te nemen dan is mijn missie al geslaagd :-)

Kzalt videooke posten als het er is. De foto hierboven is van Davy
 
Tom merkte op dat ik eigenlijk altijd over hetzelfde spreek op zo'n barcamp: leuke dingen doen met http interfaces, en dat klopt : -)
Http is immers de perfecte command line interface voor mij, een soort digitale ducttape - als het ware. Misschien moet ik dat Relocally ding ook eens wat meer vorm geven, want dat was ook hier weer bij de robot 1 van de basistenen.

Ja ja, Het was een goeike, diene #BCA5
@topanga doet dat goed hè ... er steekt veel werk in en ze was aan het twijfelen of ze wel aan een #bca6 ging beginnen. Hopelijk geven de vele positieve reacties haar een duwtje in de rug.

Met dank aan de sponsers, want het ontbrak aan niets.
Burooz voor de locatie, Stad Antwerpen voor de broodkes en co, Medemerkers voor de (eigengemaakte) soep, Krimson voor het drinken, @cverbelen voor de GingerLoveTea, ...
vergeet ik er een paar? Verschoning

Tech45 was ter plaatse om hun (zeer aan te raden) wekelijks podcast op te nemen. Ik werd ook even voor de micro geduwd - linkje volgt.

 

Tags: in 't Nederlands, Lifelog, TinkeringGeef je reactie (0)
 

Snuffelen aan je ipad apps

Deze week was ik te gast bij de Tech45 podcast - als je wil herbeluisteren kan dat hier .

Het was naar aanleiding van deze blogpost en Jan's reactie erop.

Mijn achterliggende stelling was dat (ik hoop dat) al die iPad en iPhone en Android en wat-nog-al-niet-apps een tijdelijke hype is.
Begrijp me niet verkeerd, mobile gaat super hard ontploffen, maar qua applicaties zal het gaan zoals op de grote PC's: eerst was alles een lokaal programma, en toen evolueerde het zodat je bijna alles in je browser kan doen.
Natuurlijk zullen er steeds toepassingen blijven die op je PC lokaal moeten staan, zoals tekenprogramma's of games bijvoorbeeld, maar de tendens is wel duidelijk: software is steeds meer online. Hup naar de cloud!
Voor al die mobiele toestellen zoals de iPad en je telefoon zal dat hetzelfde zijn: de "App" zal na verloop van tijd naar "browser" evolueren.
Nu is het nog even super hip om een iPad app te lanceren, maar dat slijt er wel af.
De grote Apple baas blaast dat de App HET opperste goed is voor de gebruiker, maar dat zegt hij natuurlijk vooral omdat hijzelf met zijn hebberige vingers tussen de Appverkoop zit en bij de browser niet.

Vooral "media consumeren", dat is iets waar de browser goed in is: lezen, filmpjes kijken, foto's bekijken ...
Kun je het je inbeelden dat "De Standaard" een Mac applicatie zou lanceren speciaal voor de krant te lezen? natuurlijk niet, daar heb je een website voor.
Kun je het je inbeelden dat Telenet een Windows applicatie zou lanceren speciaal om TV te kijken? natuurlijk niet, ook streaming video loopt veelal via de browser.

Waarom ze dat voor iPad wel doen is me een raadsel (niet echt natuurlijk, vanuit technisch oogpunt)
Die apps zijn niet meer dan veredelde browsers die ingesteld zijn om maar 1 "website" te tonen.

Geen woorden maar daden!
Laat ons bijvoorbeeld de Telenet Yelo applicatie eens bekijken.
yeloapp75-75

Maar eh .. hoe doe je dat eigenlijk?
De iPad is via je wifi netwerk verbonden met het internet.
Alle gegevens passeren naar je wifi router en gaan van daar verder.
Als je precies wil weten wat een applicatie allemaal online gaat zoeken (en terugkrijgt), zou je eigenlijk in je router moeten gaan afluisteren.

Gelukkig bestaat er ook een truukje om die "router" iets gemakkelijker te maken.
Elke PC die zowel een ethernet als wifi heeft, kan ook als wifi router dienst doen.
Erg gemakelijk en een gratis programma zoals Virual Router maakt het in 1 klik waar.
VirtualRouter_09_Screenshot001

Even op de startknop klikken en er is een nieuwe draadloos netwerk in de lucht waar je bijvoorbeeld met je iPad op kan connecteren.
Je PC doet nu dienst als router en geeft alle gegevens dia van je draadloze toestellen komen door.

Fijn, maar hoe doe ik daar nu iets mee.
Daar komt de FANTASTISCHE ONGELOOFLIJKE FENOMENALE tool Wireshark om de hoek kijken.
Wireshark is het lievelingetje van elke computer netwerk mens - het zwitsers zakmes van de netwerken.
Wireshark nestelt zich in je netwerk en bekijkt alles wat er passeert. Met een druk op de "record" knop, begint hij alle gegevens bij te houden zodat je later rustig kunt bekijken wat er gebeurd is op je netwerk.
Elke website die je opent, elke verbinding met het internet die elk programma maakt - ALLES - wordt zo gelogd.
Wireshark biedt bovendien nog veel middelen om later ook nog wijs te worden uit die enorme hoop gegevens.

Mooi!  Laat ons dan eens kijken wat die Telenet Yelo app zo allemaal online gaat zoeken.
wireshark1

Je ziet hier dat de App eerst http://oldtv.maghar.telenet-esp.be/ gaat opzoeken en daar naar http://oldtv.maghar.telenet-esp.be/api/mobile/channel/groups gaat kijken.
Ha! een API ... dat is altijd leuk.
Helaas krijg je een loginscherm voorgeschoteld als je op bovenstaande link klikt.
Maar die applicatie geraakt er wel op, dus nog even verder kijken.

wireshark2 

Wireshark laat ook de inhoud van elk verzoek zien, en hier zien we dat de login gevens als "Basic Authorization" worden verstuurd.
Dit wil zeggen dat login en paswoord als leesbare tekst worden verstuurd en inderdaad: we kunnen dat hier lezen.
voor de : staat de login, erachter het paswoord.
de login is "androme" en het paswoord ... heb ik even vaag gemaakt, dat zul je zelf even moeten opzoeken.

Dat werkt.
We kunnen nu via de browser zelf opvragen wat de Yelo app achter de schermen doet.
En wij krijgen zaken te zien als

telenetAPI1
Schone propere XML waarvan een developer blij wordt. Daar kunnen we mee aan de slag.

Wat verder snuffelend leren we dat hun API blijkbaar "ELVIS" heet, de meeste aanvragen gaan naar

http://api.elvis.telenet.be/livechannels/ en zo van die dingen.

Dit zijn allemaal "publieke" gegevens die voor iedereen hetzelfde zijn: de TV-gids, de info van elke programma, welke kanalen in welke categorie zitten ...

de Telenet Yelo app kan echter ook je eigen opnames instellen, en daarvoor heeft het je login nodig, die de applicatie ook naar de telenet servers zal moeten sturen.

Oeps! Wat zien we daar! 
wireshark3
De applicatie gaat aankloppen bij  http://mobilepvr.telenet.be/ws/authenticate

en verstuurd mijn login en wachtwoord niet eens als "basic authentication" maar gewoon hopla in de URL ...
Dat is wel niet zo netjes hé Telenet.
Draadloze netwerken stoppen niet bij de buitenmuur van je huis. Dan maar hopen dat je buurman geen al te grote GEEK is en aan het meeluisteren is ...

Ik poste dit ook op twitter en ik moet zeggen dat Telenet goed luistert en supersnel was met hun reactie.
Dit gaat in de volgende versie opgelost zijn. Blijkbaar was Telenet wat gehaast om deze app uit te brengen hebben ze hier en daar wat hoekjes afgesneden.

Update: Plots staat er vandaag een artikel over in de standaard:
Ze vermelden "Een Twitter-gebruiker signaleerde onze redactie dat de login-gegevens in de Yelo-app niet beveiligd zijn"
Ik hoop eigenlijk niet dat ik die twittergebruiker was :-)
de Standaard maakt er hier een opgeklopt verhaal van.
Je wil eigenlijk niet weten hoeveel applicaties en websites de logingegevens op soortgelijke manier onversleuteld versturen en ach ... zooooooo'n groot probleem is dat nu ook weer niet, het is gewoon een beetje slordig van Telenet, meer niet, en ze zullen dat wel rechtzetten ... geen reden tot paniek ... nothing to see, move along.

en along moven doen we door te komen waar we willen zijn:

wireshark5  

We komen bij de URL's waar de livestreams van hun TV kanalen opstaan.
Het zijn .m3u8 bestanden, wat eigenlijk een soort playlists zijn van allemaal hele korte video bestandjes die door de player naadeloos aan elkaar worden geplakt.
"HTTP live streaming" noemen ze dat bij Apple - en jawel - eigenlijk is dat best een goede uitvinding.

Als je deze URL neemt en je plakt die in een browser (op iPhone of iPad) , opent de standaard mediaplayer zich en speelt de video af.

Voor de films die je kunt huren is dat hetzelfde.

Alles wat je in de Yelo applicatie ziet, past prima binnen een browser.
Maar ja, "TV kijken op je iPad" klinkt nu eenmaal veel cooler dan "TV kijken in je browser" en is het ingegeven door  hippe marketing om nu te kiezen voor de App.
Het lijkt me echter niet meer dan logisch dat Telenet op den duur deze functionaliteit mee in hun online www.tv.be en m.tv.be aanbod stopt zodat het ineens overal en op elk toestel werkt.
Voor Android en andere toestellen gaan ze enkel een ander formaat videostream aan moeten bieden, maar dat is geen struikelblok.
En als Telenet dat niet doet ... tja, dan zullen we het zelf moeten maken, natuurlijk :-)

Mocht je morgen naar Barcamp VRT Brussel komen, dan zal ik je graag mijn eerste opzet daarvan laten zien.

 

 

Tags: in 't Nederlands, Programming, ScriptingGeef je reactie (6)
 

iMinds - and why I was wrong about Inca

Last year I entered not less then 3 projects for the INCA awards.
This year I didn't participate, citing the usual wrong reasons: no time, no good ideas, no time ...

The main reason I didn't participate perhaps was i couldn't really place the main concept of "inclusive society".
After all, i like to do little creative webprojects just for fun, not for commercial reasons, not for strategic reasons and certainly not to help "save the world".
With all due respect to their creators, lots of "inclusive society" project seem to miss the mark completely, forgetting to ask the question whether an internet-centeric approach is the right one for a society related problem.

One example: "I could Use"
It's a social platform for neighbours, even if you don't now any of them. So if you need something, e.g. borrow a shovel or something, you can post a message on the platform and your neighbours can respond.

With all respect for Kai Aras, the creator, if you want to get to know your neighbours, or get them to borrow you something, maybe sitting behind your computer posting messages on the internet is not most effective, nor the most social approach.

Get out of your house! talk to people! there's a whole world out there where the web is completely irrelevant!
(Again, I have nothing but respect for Kai, Check out his website for some really cool projects)

Thinking about the "inclusive society" I got the feeling I had nothing to offer that would address some "real" problem.

I was wrong - i often am.

Last week on Tedx it was Rik Torfs that brillantly managed to capture all the presentations in one sentence:
"The ideas that will save the world are rooted in profound lightness, not in empty seriousness"

Exactly: maybe the best projects that will change the world and really help society don't aim to be too serious.
Maybe it's a good aim to "do a cool project" and the part about saving the world will be a nice side effect.

Like Sebastian Thrun, with his driverless cars.
What would have been the driving idea behind this?
"Let's solve the traffic problem, next question: how?" or "let's build a cool robotic car!
Probably the latter, no ?

That's why I was wrong about skipping Inca this year.

Still, the most interesting projects are the ones that form a bridge between the web and the physical world.
Yes, yes, The internet of things is still here.


image
The Inca awards will be presented on iMinds, a part of the Future Internet conference week and guess what the keynote speech of iMinds will be about? Indeed: the internet of things.

I'm totally going - hoping to talk to some Inca participants. I'm especially interested in the Immersive Experiences presentations like the "immersive walk through Brussels" from Philippe Bekaert (and others)

Another event from the Future internet week that I'm looking forward to is the übercool TRONcafé.
Free entrance! What more do you want?
image

Anyway, stuff like this and "innovative" (un)conferences in general are a great way for developers like me to get a boost.

Let me repeat myself, this time for all developers, no matter what your day job is:
Get out of the office sometimes, go talk to people, go visit and participate in conferences, barcamps, usergroups - it's brainporn and you'll love it.

Tags: in English, LifelogGeef je reactie (0)
 

The Zen of Hardware Hacking

The 4th Barcamp in Antwerp - And a great one it was.
I gave a talk about "The Zen of hardware-hacking" , indicating that there's a noticeable shift in my attitude towards hardware and software - I still want high-tech everywhere around me, but at the same time it has to be as invisible as possible, completely out of the way if you don't need or want it.

As a hardware demo - to make it a bit more concrete - I made the fantastic KWISKWAT-O-MATIC ! :-)
The technical part is an Arduino with a wifi shield that holds a little webserver.
The beauty is that - once programmed - it runs completely on it's own with VERY low power consummation.
When you access the webserver you can send little commands to control the physical object (the arduino) - in this case toggling some coloured lights.
Physical devices become a part of the web that way and are easy to connect to any webservice out there.
The KWISKWAT-O-MATIC is connected to the Telenet tv.be API I made some time ago: Whenever a new episode of Kwiskwat is aired (and recorded by the Telenet digicorder), the light turns green, if no new unseen episode is available, the light is red.
image image image

Here's the Arduino script - it runs a very (VERY) limited webserver, which is perfect for controlling little hardware devices.

#include

#define WIRELESS_MODE_INFRA    1
#define WIRELESS_MODE_ADHOC    2

unsigned char local_ip[] = {192,168,1,120};    // IP address of WiShield
unsigned char gateway_ip[] = {192,168,1,1};    // router or gateway IP address
unsigned char subnet_mask[] = {255,255,255,0};    // subnet mask for the local network
//const prog_char ssid[] PROGMEM = {"Wireless"};        // max 32 bytes
const prog_char ssid[] PROGMEM = {"HTC network"};        // max 32 bytes

unsigned char security_type = 0;    // 0 - open; 1 - WEP; 2 - WPA; 3 - WPA2

// WPA/WPA2 passphrase
const prog_char security_passphrase[] PROGMEM = {"12345678"};    // max 64 characters

// WEP 128-bit keys
// sample HEX keys
prog_uchar wep_keys[] PROGMEM = {    0x01, 0x02, 0x03, 0x04, 0x05, 0x06, 0x07, 0x08, 0x09, 0x0a, 0x0b, 0x0c, 0x0d,    // Key 0
                                    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,    0x00,    // Key 1
                                    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,    0x00,    // Key 2
                                    0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,    0x00    // Key 3
                                };

unsigned char wireless_mode = WIRELESS_MODE_INFRA;
unsigned char ssid_len;
unsigned char security_passphrase_len;

int ledPin =  14;

void setup()
{
        pinMode(14, OUTPUT); 
        pinMode(15, OUTPUT); 
        pinMode(16, OUTPUT);
        digitalWrite(14, 1);
        digitalWrite(15, 1);
        digitalWrite(16, 1); 
    WiFi.init();
}

// This is the webpage that is served up by the webserver
const prog_char webpage[] PROGMEM = {"HTTP/1.1 200 OK\r\nContent-Type: text/html\r\n\r\n"};

void loop()
{
    WiFi.run();
}

-------------------------------------------

/******************************************************************************

  Filename:        webserver.h

******************************************************************************

  Based on the TCP/IP stack and driver for the WiShield 1.0 wireless devices by Async Labs Inc.

*****************************************************************************/

#include "uip.h"
#include
#include "webserver.h"
#include "config.h"

static int handle_connection(struct webserver_state *s);

void webserver_init(void)
{
    uip_listen(HTONS(80));
}

void webserver_appcall(void)
{
    struct webserver_state *s = &(uip_conn->appstate);

    if(uip_connected()) {
        PSOCK_INIT(&s->p, s->inputbuf, sizeof(s->inputbuf));
    }

    handle_connection(s);
}

#define ISO_nl      0x0a
#define ISO_space   0x20
#define ISO_slash   0x2f

#define ISO_R   0x52
#define ISO_G   0x47
#define ISO_B   0x42

#define ISO_O   0x4f

unsigned char ch;

const char http_get[5] = {0x47, 0x45, 0x54, 0x20, };    /* "GET " */

unsigned short fill_buf(void* blk)
{
    unsigned short webpage_len;

    webpage_len = (strlen_P(webpage)>uip_mss())?uip_mss():strlen_P(webpage);

    memcpy_P(uip_appdata, webpage, webpage_len);
    return webpage_len;
}

static int handle_connection(struct webserver_state *s)
{
    PSOCK_BEGIN(&s->p);

    // read incoming data until we read a space character
    PSOCK_READTO(&s->p, ISO_space);

    // parse the data to determine if it was a GET request
    if(strncmp(s->inputbuf, http_get, 4) != 0) {
        PSOCK_CLOSE_EXIT(&s->p);
    }

    // continue reading until the next space character
    PSOCK_READTO(&s->p, ISO_space);

    if(s->inputbuf[0] != ISO_slash) {
        PSOCK_CLOSE_EXIT(&s->p);
    }else{
        if(s->inputbuf[1] != ISO_space) {
                if (s->inputbuf[1] == ISO_R){
                   digitalWrite(14, 0);
                   digitalWrite(15, 1);
                   digitalWrite(16, 1);
                }
                if (s->inputbuf[1] == ISO_G){
                   digitalWrite(14, 1);
                   digitalWrite(15, 1);
                   digitalWrite(16, 0); 
                }
                if (s->inputbuf[1] == ISO_B){
                   digitalWrite(14, 1);
                   digitalWrite(15, 0);
                   digitalWrite(16, 1); 
                }
                if (s->inputbuf[1] == ISO_O){
                   digitalWrite(14, 1);
                   digitalWrite(15, 1);
                   digitalWrite(16, 1); 
                }
        }

    PSOCK_GENERATOR_SEND(&s->p, fill_buf, 0);
          }
        PSOCK_CLOSE(&s->p);
    PSOCK_END(&s->p);
}


The slides of my presentation can be found at http://www.stef.be/barcamp/bca4.html  (click for the next slide)
They are not very usefull without the talk, but still ...

 The Tech45 podcast was also present and made a special Barcamp Antwerp4 edition (with a little interview with yours truely, hopefully online soon)
Marco Frissen made some nice pictures
web_BCA4-0026
More here

 


Thanks @cubus and @ichoosr for a very nice Barcamp, and thanks to the sponsors GVA, Sw�rl, Stad Antwerpen, Krimson, Just-Eat, Digiti, Belgian Cowboys, iChoosr

Tags: Arduino, in English, TinkeringGeef je reactie (2)
 

Webgang

a picture called 88317678_4eb20fc058_z.jpg (click to enlarge)

This thursday I was happy to be invited by  the Webgang team of the wonderfully weird independent radio station Radio Centraal to talk about my contraptions and "The internet of things" in general.
I mostly know Radio Centraal as the perfect audio companion for pulling an all-nighter, helping you to achieve that trance-like mood with their superweird audio collages that helps you get through the night.
During daytime, the air is filled with a broad range of alternative programs, all shouldered by volunteers.
Very pleasant talk!  I plugged the upcoming barcamp a bit too.
I completely forgot to record the audio stream but if you want to know what it was about: get your ass to Antwerp, Saturday september 11th for barcamp, where I'll demo and explain my latest tinker-concepts.

(The picture above is by croki

Tags: in English, LifelogGeef je reactie (1)
 

Barcamp Antwerpen podcast

4416623267_2bbff4e938_o

 

4416623377_e9e39d078e_o De TECH45 podcast was te gast op Barcamp Antwerpen. Ze namen een hele reeks interviews af tijdens de dag wat een erg interessante impressie opleverde.
Ik mocht de spits afbijten in een informele babbel over mijn presentatie met Maarten Handrickx en Stefaan Lesage.
De podcast kun je hier beluisteren - of door hieronder op de play knop te klikken.
De foto's zijn van Marco Frissen

Of download de .mp3 hier)

 

Anne - de organisater van de barcamp is ondertussen druk bezig geweest een reeks kleine barcamp videoreportages online te plaatsen. 

 
Je kunt ze allemaal bekijken via http://www.barcampantwerpen.org/


Jammer dat je - zoals altijd - niet alle presentaties kunt volgen omdat er meerdere tegelijkertijd doorgaan.
Persoonlijk vond ik de talk van Jan Seurinck over "Verlichte piraten" en de voorstelling van "The Mine Project" van Mathias Baert de 2 interessantste - denk ik.
Het zijn alleszins de 2 die me na een week het meest zijn bijgebleven.

The Mine Project is echt een interessant concept, het sluit goed aan bij het Relocally project: je eigen data verzamelen en zelf bepalen hoe en met wie je dat deelt.
Dat komt vroeg of laat nog wel eens terug in 1 of andere vorm.

Ach - interessante dingen - ze zijn met veel en ze staan steeds te dringen om een paar streepjes aandacht.
Het is haast ondoenbaar om die allemaal in toom te houden :-)

 

Tags: in 't Nederlands, VideoGeef je reactie (0)
 

Barcamp Antwerpen 2010 - Het Masterplan

Barcamps - nog steeds mijn favoriete (un)conferentievorm: Iedereen kan iets komen vertellen over een onderwerp naar keuze en iedereen werkt mee om de dag te laten slagen - en supergeslaagd dat was ie! Meer daarover in een aparte post.

Barcamp voor mij is synoniem aan een extra stimulans om eindelijk eens mijn Vage Visies in een concreet project te gieten. Meestal resulteert dat in een slapeloze nacht ervoor om alles "presentabel" te krijgen.

Mijn presentatie op Barcamp Antwerpen 2010 ging deze keer over "Het masterplan" - een overkoepelend project om al je apparaten aan een gezamenlijke webinterface te koppelen zodat je alles vanaf eender waar kunt bedienen.
Dat project is binnenkort op www.relocally.com terug te vinden.
Het is nog een beetje abstract en om het wat te visualiseren toonde ik de stand van zaken van mijn "tweetshirt V2 in wording".
1 van de concepten van relocally is het "remote screen" : Er zijn een hoop schermen in je huis en relocally wil een soort hub vormen zodat je al die schermen ook kunt aansturen vanop 1 punt. Een video naar je TV, een reeks foto's naar je picture frame, een recept naar het scherm in de keuken of ... een beeld naar je T-shirt - meer bepaald je tweetshirt.
Versie 2 zou een tamelijk groot e-textile scherm moeten worden bestaande uit 256 kleuren leds - Momenteel heb ik 1 paneeltje van 64 leds klaar.
Hieronder een kort  videootje van hoe het eruit ziet.

Hieronder vind je nog de slides van mijn presentatie - zoals gewoonlijk zeggen ze niet veel zonder de uitleg.
Klikken om verder te gaan, in de linker onderhoek klikken om terug te gaan.



Update: Nog wat foto's.

4413435522_27cb7a4b4c_o
Natuurlijk kwam Murphy weer langs en werkte het display amper tijdens de presentatie - snel wat on-the-fly herstellingswerken om het te fixen.
De foto is van Marco Frissen


me_tweetshirt125
Hier ben ik het vurig aan het uitleggen en zie je hoe het shirt er in daglicht uitziet.
De foto is van SaraVDV

Tags: Arduino, in 't Nederlands, Tinkering, TweetshirtGeef je reactie (0)
 

World domination by phone


Dit is de video van mijn barcamp presentatie op 19 december.
Met dank aan @StefaanLesage van Devia voor het filmen.

Tips aan mezelf voor de volgende keer

  • Spreek eens wat minder dialect zeg!
  • Niet zo wiebelen
  • Maak de demo's iets langer op voorhand dan de nacht ervoor zodat ze tenminste werken
  • vooral: probeer geen 60 minuten in 20 minuten spreektijd te proppen
Tags: in 't Nederlands, Tinkering, Video, Web 2.0Geef je reactie (0)
 

Barcamp Gent 3

a picture called barcampgentgroupshot.jpg (click to enlarge)

Jaaaaaaaaaaaaaaa!

Dit weekend was het weer Barcamp.
In Gent deze keer.
Topdagen - echt waar: verbazend hoeveel interessante informatie (en mensen) je in 1 dag kunt proppen.
Het is zoals TED, maar dan zonder de pretentie.
Fijn deze editie dat er zoveel non-Geek onderwerpen aan bod kwamen.
Een overzicht van veel sessies vind je op hier op de twikilist.
de groepsfoto hierboven is gemaakt door @bunker van Pitslamp

Het meest genoten heb ik van de presentatie van @karen18 Zij vertelde over een Chinees dorp/stad van 12.000 kunstenaars die niets anders doen dan kunst kopieren.
Ze nam de Mona Lisa als voorbeeld en kaderde het "kopieren van kunst" in het groter geheel van de kunstvormen, vergeleek ze doorheen de tijd en paste het toe op moderne media als het web.
Een interessante invalshoek en ik was er door verrast.
Verder luisterde ik naar @elisehuard die haar sleutels kwijt was en een oplosing zocht, @emich over Android Development, @sasvangent over Copywriting, @berttimmermans over "Going the extra mile" , @thomasjoos over mobile, @sart68 over hoe de fotoredactie van de Standaard werkt.
Jammer dat ik zoveel anderen moest missen.
De perfecte afsluiter kwam van @studiomuscle - hij vertelde over zijn leven met procrastinatie.
Deze biecht van Hendrik was pijnlijk herkenbaar en  waarlijk grappig :-)


Ikzelf gaf een presentatie over 1 van mijn hobbyprojectjes: "hacking your house"
Wat er  mis is met hoe je vandaag de dag je muziek, tv en films bedient en - als oplossing - hoe je heel je muziek, videoarchief, tv en domotica thuis in een webapplicatie giet, zodat je dat van eender waar met eender welk device kunt bedienen en bekijken.
Het was geen goede presentatie - vond ik zelf. Ik wilde er weer veeeeeeeeel te veel inproppen, en vermits een barcamp presentatie maar 20 minuten mocht duren moest ik veel stappen overslaan zodat mijn verhaal (en demo) niet echt uit de verf kwam. Ik denk dat ik het beter kan spreiden over een paar blogposts.
Het is wel op video opgenomen - ik ben benieuwd.
In ieder geval: Hieronder mijn "slides" en een paar screenshots van de demo - Als zeggen ze niet veel zonder de uitleg.

(Klikken om verder te gaan, in de linker onderhoek klikken om terug te gaan)

 Een paar screenshots van de demo
Barcamp Gent 3 demo

Tags: in 't Nederlands, Media center, Mobile, Tinkering, Web 2.0Geef je reactie (0)
 

TEDx Brussels

a picture called logo_TEDxBrussels2.gif (click to enlarge)

Yesterday I attended TEDx Brussels.
TED stands for Technology, Entertainment en Design - The x stands for "independently organized"
It's a series of conferences for "free spirits" to spread ideas worth spreading and to inspire you with insights that are not necessarily inside your normal area of expertise.
The theme in Brussels was "Burn the Box" meaning it's not enough the think outside the box, you have to be willing to burn it if necessary.

Hmm ...
Mixed feelings about the conference.
Yes, there were some really good talks like "open everything" by Michel Bauwens about the need for open information, open standards and product hacking , the great talk about information visualisation by David McCandless and the super wacko talk of R.U. Sirius.
And yes, most of the speakers are undoubtedly experts in their field (although some of them clearly wondered why on earth they were invited to speak)
But there's something eery about a group of smart and established people shouting "Burn the box" or "we're so cool because we dare to think different" and most of them were soooooooo full of themselves.

example: During a coffee break I asked a theoretical physicist what he was working on and he replied "you wouldn't understand" ....
owkeeey bye!

If you have a good idea, just talk about it and leave out the attitude.
Attitudes like Nicholas Negroponte who talked (of course) about his OLPC project : no doubt he's a man with a vision and he achieved some amazing things but his talk was full of bloat and cheap shots at Microsoft. Don't devalue your competitor (or even your enemy), the only thing you achieve is devaluating your own message.

Attitudes like Conrad Wolfram who talked about how ridiculous it is that students still have to do math calculations on paper when there's something like a PC (with Wolfram Alpha) these days.
I completely disagreed with him. It's like saying to an artist he's stupid for still trying to achieve a impressionist style with oil-paint and a brush when we have photoshop filters for that now ...
Of course you should use a PC for mundane calculations but I am very glad I had to do so many math on paper without a computer in high school: it really showed me the beauty of math, how one can approach a problem from so many different angles and how one can translate a chaos like concept into comprehensible structured steps.
Wolfram Alpha is pretty cool, but it's little more then a multi-trick pony that you have to give the correct and narrow input to get the results you want.

Or attitudes like the way TEDx Brussels had set up their communication (you can't just register, you have to be invited) or the pumped up writing in their tweets like this one (yes, Djamal Laroussi can play the guitar, and yes there was some cheering - but going wild? It was more like Antony Bosschem said: it's like a dad who wants to act cool for his son)

To repeat myself: if you have something worthwhile to say: just say it to whoever wants to listen and leave out the bloat.
I find I get more insight and brain tickles spending some time following the various links and comments that float by on twitter then a full day at TEDx.
That's why i like the barcamp concept so much: it's like TED, without the attitude. Presentations there a more "burning the box" then the ones i heard yesterday.
So if you really want to get your mind be blown away, get your ass to Gent on december 19 for the next barcamp - you won't be disappointed.

Tags: in EnglishGeef je reactie (4)