Super Weather Station Hanging Basket

by t3chflicks in Circuits > Microcontrollers

5816 Views, 44 Favorites, 0 Comments

Super Weather Station Hanging Basket

Smart Hanging Basket

Hi everyone! In this T3chFlicks blog post, we’ll be showing you how we made a smart hanging basket.

Plants are a fresh and wholesome addition to any home, but can quickly become tiresome - particularly if you only ever remember to water them when you’re tucked up in bed.

With our smart hanging basket, you can be lazy and still have beautiful blooms! With just the touch of a button on your Arduino Dashboard, you can water your plants from wherever you are. What’s more, the hanging basket is packed with other cool sensors - view things like weather and light intensity on your dashboard so you can check up on your plant’s environment and get local measurements to help you plan your day (or outfit).

This project was super fun and we’re excited to share what we learnt with you all. But before we jump in and show you how we did it, let’s take you through some of our initial thinking for the project…

Supplies

Background - Design

akx00006_extra.jpg
akx00006_front.jpg
asx00011_front.jpg

When we embarked on this planty project, we knew we wanted to make a smart hanging basket but we weren’t entirely sure where to begin. We had a couple of 'must-haves' for our smart hanging basket, namely:

  • It has to be able to hold the weight of a damp soil/flower-filled basket
  • It must house the electronics for the LEDs, sensors and water valve
  • It needs to have wired power because a solar solution can't provide enough energy during the winter months (thanks, England)
  • It must have an easy-to-access connection with a hose pipe.

Despite best intentions, our first attempt at a design was a pretty hideous block, but after going back to the drawing board, we produced a refined version which (we think) looks quite good!

For the electronics, the Arduino MKR IoT bundle saved the day - the kit contains lots of sensors which were ideally suited to our purpose.

The Arduino environment shield

The environment shield on the Arduino kit has sensors for: luminescence, temperature air pressure, humidity and UV (broken down into UVA, UVB and UV index).

These sensors can act like a mini weather station for our hanging basket, giving the user access to accurate, live, local information about weather conditions.

The Arduino relay board

The relay board contained within the kit means we can easily control higher power devices. We decided we could use this to control water flow to the hanging basket using a 12V solenoid valve and also decided a powerful light - made one using some 12V LED strips - would be a helpful addition.

We also decided to try out the Arduino cloud platform for this project. In a previous project, we made an app for displaying real time data, but honestly, the cloud platform was a much more straightforward way to control our Arduino project and was super user-friendly.

3D Printed Parts

3d_printeD_pieces.png
image2.jpg
more_warped_print.png
cracks.png

There are seven main parts:

  1. Main Bracket
  2. Body
  3. Top (lid)
  4. Bracket for valve
  5. Connectors for the hose nozzle
  6. Light support
  7. Light cover

We designed these parts ourselves - you can find the files for them here. We decided to print in PETG filament for improved strength, durability and longevity.

Sadly, the print wasn’t perfect so we used a heat gun to try and heal some of the layer gaps (does anyone know how we can get it to print nicely rather than attack the finished print with pyrotechnics?). We left a slot in the top for a window so the sensors can still see and added some embossed effects on the side to try and make it look a bit prettier.

Prepping the Water Valve

image5.jpg
image6.jpg
image7.jpg
image8.jpg
image10.jpg
valve_complete.png
putting_hook_over_valve.png
screwing_in_hook.png

a. Take the solenoid valve. Screw the wires into terminal on top - one for positive and one for ground - it doesn’t matter which way round they go.

b. Make a hole in the plastic lid which covers the wiring for the solenoid valve. Pass the positive and ground wires through this hole.

c. The solenoid valve case has a hole where wires would ordinarily come out. As we’ve made the hole in the lid and put the wires through this, we no longer need this. Fill this hole with hot glue (an elegant solution, right?!) so water can’t get in. OPTIONAL: spray paint everything black for a smooth-looking finish.

d. Screw the hook for the hanging basket into place at the end of the bracket.

Arduino Stack

image9.jpg
image11.jpg

a. Put the 5V power regulator in the perfboard section of the bottom board (i.e. the relay board). Either side on the relevant pins, put headers that will turn 12V-> 5V for the Arduino.

b. Make a stack of Arduinos, putting the sensor board into the mkr1010 (Arduino), and the mkr1010 into the relay board.

c. Plug the wires from the solenoid wires into the relay board: Red to 12V, Black to Common (C) on Relay normally closed (NC) relay to GND of 12V.

Flood LEDs

image1.jpg
image12.jpg
sliding_in_floodlight.png
main_body_with_slotted.png

a. Cut five strips of six LEDs from a strip. Wire the positives and negatives together as shown and glue them onto the thicker of the 3D printed light covers.

b. Next, wire up the light by connecting the positive wire from the LED grid to the 12V power supply multiconnector. Connect the negative wire from the LED grid to NC (normally closed) of the relay board. Finally, connect a ground wire from Common on the relay board to the Ground of the 12V power supply multiconnector.

c. Cover the light with the thinner rectangular 3D printed part.

Signal LED

heatshrink_led.png
rgbled.png
putting_led_in.png

a. Connect a 220 Ohm resistor to the ground pin of the RGB LED and then plug it into the GND pin on the top of the stack.

b. Connect the R, G, and B positives to pins 3, 4, 5. Heat shrink and cover and push the LED through its hole in the lid.

Connect Power

power.png
connectPower.png

Connect the 12V and Ground multiconnectors to a euro barrel plug male head. Plug in the female euro barrel plug head from the 12V supply.

Arduino Cloud

arduino_cloud_1.png
arduino_cloud_2.png
arduino_cloud_3.png
arduino_cloud_4.png
arduino_cloud_5.png
arduino_cloud_6.png
arduino_cloud_7.png
arduino_cloud8.png
arduino_cloud_9.png

As we mentioned earlier, creating dashboards for your Arduino-based IoT project is made simple by their cloud platform.

a. Go to the Arduino Cloud and create an account.

b. Create a new 'thing' (an Arduino Cloud connected device).

c. Add properties - these will be the variables you are measuring or monitoring. We added the temperature measurement as an example.

d. Open your online sketch editor. You can see that some default connections for updating the variables has been added. These should work fine, but to use the temperature measurement on the ENV shield, you will need to add a bit of code which can be found in the examples on the left hand side of the editor.

e. Enter your WiFi credentials.

f. Upload your code and return to the dashboard where, if you have done everything correctly, you should see a live updating value of the new variable.

g. We then went on to add all the other sensors on the device to the Arduino Cloud: temperature, humidity, illuminance, pressure, UVB, UVA. We also added controls for RGB colour of the LED and floodlight and water control. Checkout our code to see how we did it.

Put Together

image3.jpg
image15.jpg
liding.png
image4.jpg
slotting_on_lid.png
hook.png

a. Glue the Arduino in place inside the case and tidy up the wires.

b. Put the lid on the case and glue on the UV transparent cover.

c. Screw the hose-to-solenoid valve connector onto the solenoid valve at the end nearest the wall. Connect the hose to the valve connector.

d. Screw the nozzle onto the other side of the solenoid valve (i.e. the side nearest the hanging basket hook).

e. Screw the whole bracket into a wall or fence of your choice (do ask the owner of the vertical surface before you do this…).

f. Connect the hose to the tap and turn it on.

g. Plug in the power supply and sit back as your smart hanging basket means you have green fingers without getting your hands dirty!

Use and Admire and Improve

image13.jpg
in_action.png
working_light_on2.png
water_errrywhere.png
instructables_thumbnail.png

You can now use Arduino creator dashboard to control your Smart Hanging Basket. The app lets you control the floodlight and watering as well as monitor all the sensor readings.

There's a web hooks tap on Arduino Dashboard page that says
'Webhooks allow you to send and receive automated messages to other services. For example you could use a webhook to receive a notification when a property of your Thing changes. If you’re new to webhooks, check this sample project.'

They don't seem to have the functionality for 'receiving automated messages from other services' from what we can tell, however this would be awesome because you can link your google calendar to IFTTT and automate your watering! Hopefully they'll see this an implement a solution! But if you're feeling up to challenge of adding it yourself it is done here.

You may have noticed that the lid doesn't sit flush. We fixed this by using some hot glue to fill in the gap (post video) and it works quite well!

Other Uses for the Arduino IoT Bundle?

with_dogs.png

We hope you enjoyed our smart hanging basket tutorial - hopefully it will make your life easier and your plants greener!

Sign Up to Our Mailing List!

Check out T3chFlicks.org for more tech-focused educational content (YouTube, Instagram, Facebook, Twitter).