We were initially going to do plant monitoring system that would provide feedback to the user about their plant status.We then incorporated the idea of a Tamagotchi , and realised it's a perfect fit for a smart watch (such as a Pebble).
What it does
It is a plant monitoring system which uses a Tamagotchi interface to present your plant's status on a Pebble smart watch. The Tamagotchi pet alerts the user of actions that should be taken to maintain a healthy environment for the plant, such as watering or moving the plant to a warmer environment.
How I built it
We have used a project that allows a computer to directly interact with the ports of an Arduino (through USB), so we don't have to write any code for Arduino directly. Instead, the bulk of our application is written in node, with a smaller contingent in Pebble.js. We use WebSockets to communicate between the Pebble and the server, in a manner reminiscent of publish-subscribe services. The bulk of the processing is done on the server, with the client being rather thin.
Challenges I ran into
The number one challenge we ran into involved expecting the Pebble to be able to render an invalid PNG. Fail. That particular issue sucked multiple hours, although we eventually fixed it by running the PNGs through an image editor and multiple formats. We also were initially going to use a Google Cloud API for publish-subscribe, although we quickly realised it wouldn’t run in the Pebble, so we went with the lower-tech WebSockets.
Accomplishments that I'm proud of
In no particular order:
- Getting anything to run on the Pebble was an accomplishment. None of us have ever done anything on it before, and now we was doing at a hackathon where the project depends on it.
- Getting the Arduino to communicate all the way through to the Pebble; there are a lot of steps in the chain.
- The icons to represent the pet are really quite nice...
What I learned
- At the beginning, we had many feature proposals that were overly complicated. By the end, we'd decided that many were simply unnecessary and trimmed down to only the features that add value.
What's next for Bonsai
Right now, we have hardcoded recommended values for the tempurature, humidiy and luminance. In the future, we could do statistical analysis on how our users keep their plants, and then update our recommendations accordingly.