generative modeling for Rhino
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: 316
Latest Activity: on Monday
Firefly offers a set of comprehensive software tools dedicated to bridging the gap between Grasshopper (a free plug-in for Rhino) and the Arduino micro-controller. 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.
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.
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.
Hi Everyone.I am using a rotary switch with firefly that sends values to a stream gate. I want to remember the last set of data sent via the stream after switching. Can VB scripting do this? In the image below stream 1 is reading data but stream 2…Continue
Tags: gate, stream, switching, firefly
Started by Scott Mayson. Last reply by Andy Payne May 14.
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 fergal.coulter May 10.
I am as much of a novice to Firefly and Arduino as one can get. I have 12 servos and an Arduino Uno board... is it possible to connect them all to a single board and control their rotation values in Firefly...? I'm investigating myself as of writing…Continue
Started by Adam Roark. Last reply by Andy Payne Apr 23.
Hi I'm trying to actuate the pleated skin shown in this model. I am planning on using servos to move the pleated skin in the form of a sin wave. I have a series of structural columns in the model that would be the base for the servos, but I was…Continue
Tags: pavilion, firefly, pleats
Started by Nicholas Murao Apr 9.
Using Grasshopper's visual programming interface, Firefly gives you the ability to create interactive programs and devices by manipulating elements graphically rather than by specifying them textually. It attempts to bridge the gap between the digital and physical worlds by simplifying the prototyping process for interactive objects. It combines a specialized set of components with a novel communication protocol (called the Firefly Firmata, or Firmware) which together enable real-time
feedback between hardware devices such as the well-known Arduino microcontroller and the Rhino / Grasshopper modeling environment. All this happens instantly - so there's no compiling. Your program runs as you build it, making development and prototyping an extremely rapid process.
Leveraging Grasshopper's visual programming interface, Firefly gives you the ability to quickly mock-up and prototype ideas for interactive objects and devices. It achieves this mostly by sending data back and forth over the serial port really quickly. But, what if you want your device to stand-alone... meaning you don't want to be tethered to your computer by a pesky USB cable. In order to do this, the microcontroller must be programmed, typically using some C++ or Arduino code.
Fortunately, Firefly has an advanced Code Generation feature which translate the spatial representation of your Grasshopper code directly into Arduino compatible code. And it does this all on the fly. Now, you don't need to worry about writing all of that code yourself. Simply, prototype your design as you normally would, and the Code Generator will work in the background writing all of the code necessary to make your design come to life!
Firefly alleviates the hastle of interfacing with external hardware. The Firefly toolset has pre-built components that allow you to connect to many of the most popular hardware devices including data acquisition devices, mobile phones, cameras, game controllers (like the Wii Nunchuck and Microsoft Kinect) and audio interfaces to name but a few.
Firefly has an extensive suite of computer vision, analysis, and effects tools. Integrate video feeds (now with multiple camera support), load individual images (.jpg, .tif, .png, .bmp, etc.), play video files and more. Firefly also includes several filtering, graphic effects, and compositing tools to manipulate live image data. In addition, you can create your own custom filters using convolution kernels. You can also take advantage of computer vision algorithms such as optical flow, gradient vectors, contour vectors, and color analysis to make your next interactive project a visual success.
Comment
Comment by claudemit on December 9, 2011 at 2:58pm hi,I meet a problem,when i send some data to grasshopper with the serial read,the UNO read shows error:solution exception:conversion from string "23.20" to type 'integer' is not valid. How can i solve this problem?
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
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 Added by David Stasiuk 8 Comments 22 Likes
Added by stefano 5 Comments 7 Likes
© 2013 Created by Scott Davidson.
Powered by
You need to be a member of Firefly to add comments!