Grasshopper

algorithmic modeling for Rhino

Information

Firefly

Firefly offers a set of comprehensive software tools dedicated to bridging the gap between Grasshopper, (a free plug-in for Rhino) the Arduino microcontroller and other input/output devices. It allows near real-time data flow between the digital and physical worlds – enabling the possibility to explore virtual and physical prototypes with unprecedented fluidity.

Website: http://www.fireflyexperiments.com/
Location: Cambridge, MA
Members: 628
Latest Activity: Dec 12

Firefly Experiments

As a generative modeling tool, Grasshopper offers a fluid visual interface for creating sophisticated parametric models, but by default, it lacks the ability to communicate with hardware devices such as programmable microcontrollers or haptic interfaces. Firefly fills this void. It is an extension to the Grasshopper’s parametric interface; combining a specialized set of components with a novel communication protocol (called the Firefly Firmata or Firmware) which together enable real-time communication between hardware devices and the parametric plug-in for Rhino.


Key Features

  • Read / Write to Arduino microcontrollers and other devices
  • Visualize Sensor Data within Firefly / Grasshopper
  • Control LEDS, Lights, Motors, Valves and more
  • Control Stepper Motors (for 3d Printers and end effectors) 
  • Stream Web Cams and connect with Mobile Devices (iOS + Android) using OSC and UDP
  • Connect to Internet Feeds and search XML Feeds 
  • Generate code to upload to an Arduino Board
  • Basic sound input and processing tools
  • Datalogging, counting and playback
  • Machine Vision toolkit including edge detection, color filtering, convolution filtering and much more
  • Kinect toolkit including skeleton tracking


A notable distinction for Firefly is that it is the first visual microcontroller programming environment designed specifically for a 3-D parametric CAD package (such as Rhino). This feature means that real-world data, acquired from various types of sensors or other input devices (video cameras, internet feeds, or mobile phone devices, etc.) can be used to explicitly define parametric relationships within a Grasshopper model. Firefly completes the communication feedback loop by allowing users the ability to send information from Grasshopper back to the microcontroller in order to incite specific actuations (ie. lights, motors, valves, etc). Ultimately, this workflow creates a new way to create interactive prototypes.

Discussion Forum

Writing to SPI/I2C devices through FT232H 2 Replies

Hi all.I'm recently working on a kinetic project involving a number of hobby servo motors controlled by a I2C PWM controller PCA9685. (or some of you refer to the famous Adafruit 16 channel 12-bit PWM/Servo Driver - I2C interface )I realize it would…Continue

Started by Victor Leung. Last reply by KieshaEFrederick Dec 12.

Firefly media types: raw video bitmaps vs ordinary firefly bitmaps. 2 Replies

I have a prerecorded video clip that I'd like to run through the 'optical flow' component to generate an extra layer for my video.using the 'video player' as the input for the 'optical flow' component makes the outcome appear bumpy because the video…Continue

Tags: mediatypes, rawvideobitmap, opticalflow, framerate

Started by Johanna Jõekalda. Last reply by yogamaja Nov 25.

How to Sync with ABB robot controller? 3 Replies

Hey There. A quick question: is there any way to synch Arduino/Firefly with HAL?I have a tool attached to my robot arm and I kinda manually control it through Arduino. I need to use Firefly to parametrically and maybe in almost real time (if…Continue

Tags: IRC5, Arduino, ABB, Firefly, Robot

Started by Mehdi FarahBakhsh. Last reply by GabrielaSullivan Mar 21.

Serial read problem in Firefly 7 Replies

Hi guys,I'm communicating with a 3D printer via Grasshopper / Firefly (and eventually) Silkworm.So far, I can quite happily send G-Code move commands to the printer  - which is a Leapfrog Creatr, based on Arduino Mega / RAMPS electronics - via the…Continue

Tags: GCode, Read, Serial, Firefly

Started by fergal.coulter. Last reply by Aaron Porterfield May 16, 2022.

News

Comment Wall

Comment

You need to be a member of Firefly to add comments!

Comment by EliseElsacker on October 4, 2011 at 11:10am
Comment by Andy Payne on August 22, 2011 at 12:24pm

HI Giya,

Thanks for the suggestions. I have to admit that I'm not an expert in vvvv and as such I don't exactly know how the TogEdge and FlipFlop components work.  If you could describe how they work (and how they might be applied in a normal setting) I could definitely look into adding this functionality into Firefly.  Also, if possible, I'd like to move this discussion over to the Firefly forum so it can be tracked more closely: http://www.fireflyexperiments.com/discussions/post/1579096?lastPage...

Thanks again for your input.

Cheers,

Andy

Comment by Gia Djahaia on August 22, 2011 at 6:55am

Thank you. Btw we were lacking of some features in firefly while developing speedometer based on two proximity sensors and arduino.

We had to rewrite the bang (TogEdge) component and FlipFlop component like they are in vvvv to grasshopper in order to perform needed boolean operations. And grasshopper timers are awful. We need normal flexible counters!

So my "wishlist" for next firefly release is about adding this features. I will appreciate if you implement these things.

Cheers.

-Giya.

Comment by Andy Payne on August 22, 2011 at 6:40am

Hi Giya,

Great videos... Very fun.  I really like the dance floor visualization. Congrats!

-Andy

Comment by Gia Djahaia on August 22, 2011 at 1:10am

Branchpoint Interaction Workshop on Strelka 2011.
Interactive cluster workflow.

Comment by Gia Djahaia on August 22, 2011 at 1:08am
Presentation of «Branchpoint: Interaction» Workshop on Strelka School 2011 student project of Interactive cluster.
Arduino+2 Infrared Proximity Sensors, Firefly(Grasshopper), Kinect, vvvv.

Students:
Aleksandr Stepanov
Maksim Pesov
Anna Misharina
Nelly Kareva
Ekaterina Kapatun

Mentors:
Eduard Haiman
Vadim Smakhtin
Giya Djahaya

Branchpoint.ru
Comment by claudemit on July 21, 2011 at 3:38pm

hi andy,

Thanks for your reply.I think we can download the date of some existing buildings from pachube,and then make some simulation and different optimizations in grasshopper or Physical models.It will be funny to show the comparison diagrams on pachube.well,it's just some random thoughts about the "demand".

Comment by Andy Payne on July 12, 2011 at 8:36am

Hi claudemit,

At the moment, there is no way (with Firefly) to post data to Pachube.  Its been on my list of something to consider implementing into the tool set, I just didn't know if there was a lot of demand for it.  But, I can take a look at it.  It will likely be a little more complicated as it requires more information to create a feed (than just downloading the current values).  I'll try to take a stab at it, but I don't know when I'll have a time-frame on the next release.  Sorry that I don't have a better solution at the moment, but thank you for your feedback.

Cheers,

Andy

Comment by claudemit on July 12, 2011 at 7:47am
hi,could I upload some data to pachube directly with firefly without processing? I receive some data from sensors through arduino,make some deal with them and want to send some of the data to pachube .It's a little trouble that doing the same thing in two software.
Comment by hassan.orion on March 25, 2011 at 3:26am
ok. thanks, i ll be waiting
 

Members (628)

 
 
 

About

Translate

Search

© 2024   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service