Synchronizing Fireflies NG


[Alex] from Tinkerlog has revisited an old project with Synchronizing Fireflies NG. Fascinated by how fireflies blink at same rate and synchronize with each other, he built a digital version. Each board has an RGB LED and a phototransistor or photoresistor. A ping-pong ball is used as a diffuser. The blink rate is controlled by an ATtiny13v. The board power can be daisy chained, but each firefly mote operates independently of the others. The microcontroller has a fixed flash rate and monitors for other flashes. It attempts to sync by flashing earlier. The color of the LED expresses how satisfied the firefly is with its current sync. You can see a video of eight fireflies attempting to self organize embedded below.

Comments

  1. TheBlunderbuss says:

    There’s something about this hack that is really appealing to me.

  2. Inkwina says:

    This is a beautiful hack, both aesthetically and technically. I wonder whether this technology can be used to make the battery powered warning lights at roadworks flash if a running lights sort of fashion rather than disturbing random patterns

  3. Bill says:

    Or you could skip lights altogether and use radio in a wireless sensor mesh type application, leave the radios off most of the time, power them on in unison once in a while to talk, using this to synchronize it.

  4. Edward Nardella says:

    This could also make for some interesting lighting setups, perhaps instead of trying to sync they are all always on between 50%-100% changing color, trying to get to each others color, I can imagine about 320 on a ceiling, no only responding to the color and intensity of nearby units but to the sounds being made in the room. I can imagine clapping could have a very rapid ripple like effect in bigger rooms, and if people get angry and start shouting then everything goes bright red.

    Dude sometimes I wish I had the skills and patience to implement something like that.

  5. andre says:

    this is pretty neat. btw you can get ldr’s from broken road light pcbs :)

    if you can’t get the correct diodes its possible to make a tripad arrangement with RGB 3mm LED’s, and it should still work.

    i like the ldr-under-led trick, its pretty ingenious.

    -A

  6. dandin1 says:

    @bill But wouldn’t the radios need to be always listening to be able to tell when the other radios went on/how “satisfied” they are at the synch?

  7. Ian Calvert says:

    I like, but I’m unsure as to the biological plausibility of the setup. Making the firefly flash *sooner* seems quite tricky since afaik they just flash as soon as they have built up enough *insert what they build up here*.

    Sorry it’s been a while since I studied them :)

    I have coded a few and the biological idea we based them on was that when a firefly sees a lot of light it resets its cycle without flashing. This works extremely well, though causes some interesting interactions.

    @bill it is used to synchronize amorphous collections of clocks on small distributed systems.

    @dandin1 you could leave them listening in for just the power of broadcast at any one time, that should only take a very low powered circuit.

  8. Lenny says:

    I like this hack. my girlfriend says…
    “Its kind of romantic..when the two fireflies are together there synchronized and when there apart its like there lost”

  9. great work! very similar with a old project of mine tested in 2005, used only white light and only built three functioning individuals… would be great to see a really large flock in action :)

    please se link for more details..http://skjelvik.com/portefolie/experimental1.1.html

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s

Follow

Get every new post delivered to your Inbox.

Join 97,581 other followers