Flower Artist

Every flower should be able to design its own vase

Similar projects worth following
This project allows to read analog data from sensors and convert it in STL file

The challange is to create an interface to allow interaction from phisical object to virtual 3D model.

I'm passionate of 3D printing and I'm spending time to investigate new types of materials like paste extruding.

Especially in clay, 3d print is very important being able to design to avoid hoverhanging problems, so I've tried to develop an interface that automatically avoid some type of problems and create a 3D files which is the result of a very unique situation.

This project gives the possibility to create shapes without knowing the 3D software so that it could be used for educational purposes.

Using some sensors connected to an Arduino, I've trasformed the data in a 3D shape like a vase which can be later 3d printed with classical materials or in Clay.

All the files are in my GitHub repo

All the project is released under

Attribution - Share Alike

Creative Commons licence

x-zip-compressed - 17.68 MB - 05/27/2016 at 20:08


  • 1 × Arduino/Genuino UNOI
  • 2 × light sensor
  • 1 × Humidity sensor
  • 1 × Liquid level sensor
  • 2 × linear sliders

View all 6 components

View all 7 project logs

  • 1
    Step 1

    To be able to read the data from sensor I need an Arduino/Genuino board Firefly FIRMATA firmware uploaded.

    this firmware allows to interface the board with some software like Processing or Grasshopper

    Here the FIREFLY Firmata website

    Here the standard Firmata website

    It is a library for Arduino IDE and it is very easy to load the firmware

    A lot of details about Firmata are here:

    The desctiption of the pin used in Firefly Firmata in my case with Arduino UNO board

     /*****ON STANDARD BOARDS (ie. Uno, Diecimila, Duemilanove, Lillypad, Mini, etc.)*****
     ANALOG IN pins 0-5 are set to return values (from 0 to 1023) for analog sensors
     DIGITAL IN pins 2,4,7 will return 0's or 1's; for 3 potential digital sensors (buttons, switches, on/off, true/false, etc.)
     DIGITAL/ANALOG OUT pins 3,5,6,11 (marked with a ~) can be used to digitalWrite, analogWrite, or Servo.write depending on the input status of that Firefly pin
     DIGITAL OUT pins 8,9,10,12,13 can be used to digitalWrite, Servo.write, or analogWrite depending on the input status of that Firefly pin
  • 2
    Step 2
    • In Grasshopper I had to create a line as a Zaxis subdivided in a number of parts editables with a sliderthen, I've created a series of hexagons to obtain a shape like a Low poly geometry, each hexagon is connected to a section of the vertical line, and it is possible to choose the number of the sides of the hexagons.I've added the Arduino control with a port reader and the component UNO Read, to listen the analog pins of the board. With the timer component, I can choose the refresh speedFrom each analog pin it is possible to read a value that shifts between 0-1023, I've then converted this value in a range which was more compatible with the project, and scaled it to a range between 20-60. All the values are converted automatically in millimeters and used to modify the diameter of the hexagons and so, the shape of the vase.Finally I've made another controller that reads the Analog pin Value and with the resulting values, I was able to modify the height of some boxes just to have a graphic interface like this one
  • 3
    Step 3

    preparing the electronic board

    I made a simple circuit on a protoboard directy connected like a shield on the arduino board

View all 3 instructions

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates