Kits: Customize
Hardware
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.
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.
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:
- EthernetDHCP A library to automatically request an IP address:
http://gkaindl.com/software/arduino-ethernet - EthernetDNS A library to look up server hostnames:
http://gkaindl.com/software/arduino-ethernet - Twitter A library to interact with Twitter’s API: http://www.arduino.cc/playground/Code/TwitterLibrary
- TrueRandom A library for better randomization functions: http://code.google.com/p/tinkerit/wiki/TrueRandom
Libraries go into the main Arduino document folder. Here’s some instructions from the Arduino site “To 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 http://arduino-tweet.appspot.com 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 http://arduino-tweet.appspot.com (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 (http://twitter.com/yourusername) 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
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
- #define DRY 350
- #define SOAKED 600
- #define WATERING_CRITERIA 100
Online & Mobile Updates from Your Plant and Other Plants
Twitter
To see your plants “tweets” or messages online go to: http://www.twitter.com/yourplantsID
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 http://twitter.com/yourplantsID, 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