Kits: Customize


The Botanicalls leaf-shaped printed circuit board is designed so that it’s attractive, simple, and easy to use. We keep the setup pretty basic so that we can keep the price (relatively) low, but we understand that you may want to customize your hardware. If you’d like to see the innards of how the circuit board works, you can download the Eagle files here.

Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License.

Software: Changing and Updating Code

The Botanicalls code is written in Arduino. To make adjustments to the code, download the Arduino environment (Windows, Mac OS X, Linux) for your computer system from the Arduino site. Arduino is a free, cross-platform and open-source electronics prototyping system created and maintained by a worldwide network of physical computing enthusiasts.


Basic Code Update

UNPLUG THE POWER SUPPLY FROM THE BOARD, then hook up an FTDI programming cable or Sparkfun FTDI Basic Breakout to the six-pin header. For the FTDI cable, attach the black jumper onto the three pin header so it connectes the VIN and center pins together. Attach the cable, matching the black wire to “blk” and the green wire to “grn” on the board. If you use the Sparkfun FTDI Basic Breakout that supplies 3.3V DC, the jumper can be repositioned so that it connects the 3.3V and center pins together.

Download the most recent Botanicalls code and unzip the archive.

Creative Commons License
This work is licensed under a Creative Commons Attribution-Noncommercial-Share Alike 3.0 United States License.

Botanicalls v3.01 (and up) is now compatible with all current versions of Arduino!

The unzipped Botanicalls Twitter folder should be put in the Arduino documents directory (MyDocuments\Arduino on Windows or  Documents:Arduino on the Mac). It will now appear when you select Sketchbook from the File menu in Arduino.

You will also need the following libraries:

Libraries go into the main Arduino document folder. Here’s some instructions from the Arduino siteTo install third-party libraries, create a directory called libraries within your sketchbook directory. Then unzip the library there. For example, to install the Twitter library, its files should be in the/libraries/Twitter sub-folder of your sketchbook folder.

Assign a new Twitter account

To change to using your own Twitter feed you’ll need to set up the account at Twitter, then get a secret “token” at that your Botanicalls will use to authenticate and pass messages to that account.

Open the BotanicallsTwitter sketch in Arduino. Update the line that begins with #define TOKEN with the  token for your Twitter account that you received at (By the way if you need to go back to it, the @botanicallstest account token is “14052394-9gYsPnSXTyw0RFVNKMFU14GwNY9RiJXw6Xt3moTkQ”).

When you are ready to upload the updated code, select the correct serial port and Duemilanove ATmega328 board type on the Tools menu, then press the reset button on the board and select Upload to I/O Board from the File menu.

Once the code is uploaded, your system is ready to go. You can monitor the system with the Serial Monitor in Arduino at 9600 baud.

When you power up the system you should see a message “Botanicalls” with the version number. Next you will see a series of moisture readings, interspersed occasionally with a watering detection reading. By touching the probes together, or bridging them with any conductive metal, you can simulate a high level of soil moisture. By moving them apart, you will simulate a high level of dryness. Use this procedure to test the sensor system.

Press the “TEST” button to manually send a tweet with the current moisture level. Check the plant’s Twitter feed ( to make sure that the tweet has gone through successfully. If a Twitter message does not appear within a few minutes, recheck your power and Ethernet connections.

When the Botanicalls Kit has a message to send, you will see a series of Twitter connection messages in the Serial Monitor. A final message will let you know if the twitter message was sent successfully or not. Check your Twitter account to see if the message arrived properly. If it did, feel free to do a little happy dance–you’ve customized Botanicalls!

Customize Twitter messages

The plant’s Twitter messages are defined in the first few lines of the program. The Arduino has very limited RAM memory for text strings, so keep these messages short. If they get too long you’ll overflow the memory stack and the system will begin to behave erratically.

Customize thresholds

The Botanicalls system operates based on a variety of moisture thresholds. These will vary by plant, soil composition and even your own personal horticultural style. Start with the default values, and adjust until you are happy with the system’s behaviors:

This line defines the value between 0 and 1023 below which the plant is in need of water:

  • #define MOIST 450
This line defines the value between 0 and 1023 that defines an urgent state of dryness:
  • #define DRY 350
This line defines the moisture value between 0 and 1023 that represents a proper watering.
  • #define SOAKED 600
Finally, this line defines the positive change in moisture level that indicates a watering event has occurred.
  • #define WATERING_CRITERIA 100

Online & Mobile Updates from Your Plant and Other Plants

To see your plants “tweets” or messages online go to:
You can customize your plants photo, profile information, etc by logging in with your plants ID and password. Once you’ve done this you can log out and become a follower of your Botanicalls plant.

Get Updates on Your Botanicalls Plant

In order to follow your plant via Twitter updates on your mobile phone or online, all you need to do it set a personal Twitter account and “follow” your Botanicalls plant. To do this:

  • Go to Twitter and log in to your existing account (or create a new one)
  • Type in, on your plant’s Twitter page click the Follow button under the profile picture.

You can also follow other Botanicalls plants online. You can find other Botanicalls plants by using Twitter’s Who to Follow function.

Get Updates from Your Botanicalls Plant on Your Mobile Phone

Once you’ve created your personal Twitter account go to Settings (make sure to set your correct time zone). You can associate your mobile phone with your Twitter account by clicking on the Devices tab. Enter your mobile phone number; you can customize/restrict the time of day that you will get alerts here. Just follow the instructions and now, when your plant has something to say, it will text you. (Like the site says, standard message rates apply to text messages from Twitter, whether it’s your plants or your friends.)

You can find out other specific info about Twitter on their Help Page

<< back

New kits are here!


Pothos Plant Tweets

    Flickr Feed
    More photos or video tagged with botanicalls on Flickr