algorithmic modeling for Rhino


I have developed a microcontroller board with PIC16F877A.

Can it be used to communicate with Firefly?

It allows serial connection with PC, and upon correct programming (of microcontroller, yet to be done), it should send the data to the PC. 

Views: 438

Replies to This Discussion

Hi Chintan,

I haven't used that specific microcontroller... but if it can send/receive serial communication, then I'm pretty sure it can work with Firefly.  In fact, here's an old demo I made almost 2 years ago of a custom board I made with an ATMega Tiny44 microcontroller and a light sensor (really simple board):  But, it worked quite well.

There's a couple of things to remember.  First, when sending data from your board to Grasshopper, you need to make sure that you add a carriage return and new line feed characters to the end of your print statement.  Normally, when using the Arduino IDE, this is handled by simply using a Serial.println(); function... which automatically adds those two characters onto the end of the line.  You need these two characters, because Grasshopper needs some way to determine where the 'end of the line' that you're sending is.  If you add those two characters onto your string, then you can read that data in to Grasshopper using the Generic Serial Read component.  You can parse up the string (depending on how you format it) using the built in Grasshopper string components (or write your own script if you prefer).

Sending data from Grasshopper to your board is pretty simple (actually, it's already done if you use the Generic Serial Write) assuming your device shows up as a COM port on your computer (and you open that port before writing the data).  However, you'll likely need some code to translate the incoming string into some meaningful information to send to whatever pins on your microcontroller.  This is basically what the Firefly Firmata is for.  But, this is built specifically for the Arduino pin configuration... so it likely wouldn't work here.  But, you may be able to translate some of the same functionality from the firmata into your code.

Hopefully this helps get you started.



Hi Andy, 

Do you have anymore information on linking an attiny44 to firefly? I realized the arduino firmata won't work for me!








  • Add Photos
  • View All


  • Add Videos
  • View All

© 2021   Created by Scott Davidson.   Powered by

Badges  |  Report an Issue  |  Terms of Service