# No-Code Rain Sensing Smart Desktop Umbrella Stand

## Overview

![](https://cdn-learn.adafruit.com/assets/assets/000/138/009/medium800/weather_IMG_5153_%281%29.jpg?1751042545)

This guide will help you&nbsp; **create a compact sized umbrella stand that will warn you of incoming rain**. This project explores how to combine WipperSnapper firmware with Adafruit IO Actions and the IO+ Weather Power-Up to change the colors of a NeoPixel strip based on forecasted (and current) weather conditions.

Warning: This project relies on Adafruit IO+, which is a paid upgrade from the free Adafruit IO service. You'll need an active IO+ subscription to unlock the Weather Power-up used to forecast the weather.


# What is WipperSnapper?

WipperSnapper is a firmware designed to turn any WiFi-capable board into an Internet-of-Things device without programming a single line of code. WipperSnapper connects to&nbsp;[Adafruit IO](https://io.adafruit.com/), a web&nbsp;platform designed ([by Adafruit!](https://www.adafruit.com/about)) to&nbsp;_display_,&nbsp;_respond_, and&nbsp;_interact_&nbsp;with your project's data.

Simply load the WipperSnapper firmware onto your board, add credentials, and plug it into power. Your board will automatically register itself with your Adafruit IO account.

From there, you can add&nbsp;_components_&nbsp;to your board such as buttons, switches, potentiometers, sensors, and more! Components are&nbsp;_dynamically&nbsp;_added to hardware, so you can&nbsp;immediately start interacting, logging, and streaming the data your projects produce without writing code.

# Parts
### Adafruit Sparkle Motion Stick + Enclosure Kit

[Adafruit Sparkle Motion Stick + Enclosure Kit](https://www.adafruit.com/product/6333)
The **Adafruit Sparkle Motion Stick** is part of our&nbsp;series of "Sparkle Motion" boards, which are our attempt to make the&nbsp;best small&nbsp;WLED-friendly smart LED driving board in the whole world. Our resident mermaid, <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/6333)
[Related Guides to the Product](https://learn.adafruit.com/products/6333/guides)
![Angled shot of stick PCB in three-piece enclosure.](https://cdn-shop.adafruit.com/640x480/6333-04.jpg)

Info: You can use any Sparkle Motion board with this project. [Sparkle Motion](https://www.adafruit.com/product/6100) and [Mini Sparkle Motion](https://www.adafruit.com/product/6160)

### Adafruit NeoPixel LED Strip with 3-pin JST PH 2mm Connector

[Adafruit NeoPixel LED Strip with 3-pin JST PH 2mm Connector](https://www.adafruit.com/product/3919)
Plug in and glow, this **Adafruit NeoPixel LED Strip with JST PH Connector** has **30 total LEDs** in a **"60 LED per meter" spacing** , and is 0.5 meters long, in classy Adafruit Black. Its not too long, but has lots of glowing action.<a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/3919)
[Related Guides to the Product](https://learn.adafruit.com/products/3919/guides)
![Adafruit NeoPixel LED Strip with 3-pin JST PH Connector lit up rainbow](https://cdn-shop.adafruit.com/640x480/3919-01.jpg)

### Silicone Cover Stranded-Core Ribbon Cable - 4 Wires 1 Meter Long

[Silicone Cover Stranded-Core Ribbon Cable - 4 Wires 1 Meter Long](https://www.adafruit.com/product/3892)
For those who are fans of our silicone-covered wires, but are always looking to _up their wiring game_. We now have **Silicone Cover Ribbon cables!** These may look _a lot_ like <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/3892)
[Related Guides to the Product](https://learn.adafruit.com/products/3892/guides)
![Coiled bundle of black, silicone covered, stranded-core ribbon cable.](https://cdn-shop.adafruit.com/640x480/3892-01.jpg)

### Adafruit IO+ Subscription Pass – One Year

[Adafruit IO+ Subscription Pass – One Year](https://www.adafruit.com/product/3792)
The all-in-one Internet of Things service from Adafruit you know and love is now _even better_ with IO+. The 'plus' stands for MORE STUFF! More feeds, dashboards, storage, speed. Power up your [Adafruit IO](https://io.adafruit.com/) with the $99 pass for 1 year of the...

In Stock
[Buy Now](https://www.adafruit.com/product/3792)
[Related Guides to the Product](https://learn.adafruit.com/products/3792/guides)
![Text image that reads "IO+"](https://cdn-shop.adafruit.com/640x480/3792-01.jpg)

# No-Code Rain Sensing Smart Desktop Umbrella Stand

## Wiring

First thing you will need to do is wire everything up so you can connect to Adafruit IO, install the WipperSnapper firmware, and test everything out. This project is as easy as hooking up 3 wires to the Sparkle Motion. This wiring uses the Sparkle Motion Stick and pin 21.

To get started, you can snip off the JST connector from the NeoPixel strip and connect up to the Sparkle Motion as shown below. Later a longer wire will be soldered to allow installation of the NeoPixels inside of a 3D print.

![](https://cdn-learn.adafruit.com/assets/assets/000/138/008/medium800/weather_image_%2810%29.png?1751042010)

- Connect the black NeoPixel Ground wire to the Sparkle Motion GND screw terminal
- Connect the green NeoPixel Signal wire to the Sparkle Motion 21 screw terminal
- Connect the red NeoPixel power wire to the Sparkle Motion 5V screw terminal.

# No-Code Rain Sensing Smart Desktop Umbrella Stand

## WipperSnapper Setup

Warning: 

## What is WipperSnapper

WipperSnapper is a firmware designed to turn any WiFi-capable board into an Internet-of-Things device without programming a single line of code. WipperSnapper connects to [Adafruit IO](https://io.adafruit.com/), a web&nbsp;platform designed ([by Adafruit!](https://www.adafruit.com/about)) to&nbsp;_display_,&nbsp;_respond_, and&nbsp;_interact_&nbsp;with your project's data.

Simply load the WipperSnapper firmware onto your board, add credentials, and plug it into power. Your board will automatically register itself with your Adafruit IO account.

From there, you can add&nbsp;_components_&nbsp;to your board such as buttons, switches, potentiometers, sensors, and more! Components are&nbsp;_dynamically&nbsp;_added to hardware, so you can&nbsp;immediately start interacting, logging, and streaming the data your projects produce without writing code.

## Sign up for Adafruit.io

You will need an Adafruit IO account to use WipperSnapper on your board. If you do not already have one, head over to [io.adafruit.com](https://io.adafruit.com/) to create a&nbsp;_free_ account.

## Add a New Device to Adafruit IO

Log into your [Adafruit IO](https://io.adafruit.com/) account. Click the _New Device_ button at the top of the page.

![](https://cdn-learn.adafruit.com/assets/assets/000/112/548/medium800/wippersnapper_setup__board_selector__web__new_device_1.png?1655919766)

After clicking New Device, you should be on the _board selector_ page. This page displays every board that is compatible with the WipperSnapper firmware.

![](https://cdn-learn.adafruit.com/assets/assets/000/112/550/medium800/wippersnapper_setup__board_selector__web__selector_maion.png?1655920178)

In the board selector page's search bar, search for the&nbsp;_Feather ESP32 V2.&nbsp;_Once you've located the board you'd like to install WipperSnapper on,_&nbsp;_click the&nbsp;_Choose Board_&nbsp;button to bring you to the self-guided installation wizard.

![](https://cdn-learn.adafruit.com/assets/assets/000/112/890/medium800/adafruit_products_v2_new_board.png?1657137703)

Follow the step-by-step instructions on the page to install Wippersnapper on your device and connect it to Adafruit IO.

![](https://cdn-learn.adafruit.com/assets/assets/000/120/544/medium800/adafruit_products_feather_esp32_v2_ss.png?1682710725)

If the installation was successful, a popover should appear displaying that your board has successfully been detected by Adafruit IO.

Give your board a name and click "Continue to Device Page".

![](https://cdn-learn.adafruit.com/assets/assets/000/112/921/medium800/adafruit_products_io_device_detected_v2.png?1657212598)

You should be brought to your board's device page.

![](https://cdn-learn.adafruit.com/assets/assets/000/112/922/medium800/adafruit_products_io_device_page_v2.png?1657212608)

## Feedback

Adafruit.io WipperSnapper is in **beta** and you can help improve it!

If you have&nbsp; suggestions or general feedback about the installation process - visit [https://io.adafruit.com/support](https://io.adafruit.com/support), click _"Contact Adafruit IO Support"_ and select _"I have feedback or suggestions for the WipperSnapper Beta"._

## Troubleshooting

If you encountered an issue during installation, please try the steps below first.

If you're still unable to resolve the issue, or if your issue is not listed below, get in touch with us directly at [https://io.adafruit.com/support](https://io.adafruit.com/support "https://io.adafruit.com/support"). Make sure to click&nbsp; _"Contact Adafruit IO Support"_ and select "_There is an issue with WipperSnapper. Something is broken!"_

### 

First, make sure that you selected the correct board on the board selector.

Next, please make sure that you entered your WiFi credentials properly, there are no spaces/special characters in either your network name (SSID) or password, and that you are connected to a 2.4GHz wireless network.

If you're still unable to connect your board to WiFi, please [make a new post on the WipperSnapper technical support forum with the error you're experiencing, the LED colors which are blinking, and the board you're using.](https://forums.adafruit.com/viewforum.php?f=66)

### 

Try hard-resetting your board by unplugging it from USB power and plugging it back in.

If the error is still occurring, please&nbsp;[make a new post on the WipperSnapper technical support forum with information about what you're experiencing, the LED colors which are blinking (if applicable), and the board you're using.](https://forums.adafruit.com/viewforum.php?f=66)

## "Uninstalling" WipperSnapper&nbsp;

WipperSnapper firmware is an application that is loaded onto your board. There is nothing to "uninstall". However, you may want to "move" your board from running WipperSnapper to running Arduino or CircuitPython. You also may need to restore your board to the state it was shipped to you from the Adafruit factory.&nbsp;

### Moving from WipperSnapper to CircuitPython

Follow the steps on the [Installing CircuitPython page](https://learn.adafruit.com/welcome-to-circuitpython/installing-circuitpython) to install CircuitPython on your board running WipperSnapper.

- If you are unable to double-tap the RST button to enter the UF2 bootloader, follow the _"Factory Resetting a WipperSnapper Board"_ instructions below.

Uploading this sketch will overwrite WipperSnapper. If you want to re-install WipperSnapper, follow the instructions at the top of this page.

### Moving from WipperSnapper to Arduino

If you want to use your board with Arduino, you will use the Arduino IDE to load&nbsp;_any_ sketch onto your board.

First, follow the page below to set up your Arduino IDE environment for use with your board.

[Setup Arduino IDE](https://learn.adafruit.com/adafruit-esp32-feather-v2/arduino-ide-setup)
Then, follow the page below to upload the "Arduino Blink" sketch to your board.

[Upload Arduino "Blink" Sketch](https://learn.adafruit.com/adafruit-esp32-feather-v2/blink)
Uploading this sketch will overwrite WipperSnapper. If you want to re-install WipperSnapper, follow the instructions at the top of this page.

### Factory Resetting a WipperSnapper Board

Sometimes, hardware gets into a state that requires it to be "restored" to the original state it shipped in. If you'd like to get your board back to its original factory state, follow the guide below.

[Factory Reset your Adafruit Feather HUZZAH ESP32-V2](https://learn.adafruit.com/adafruit-esp32-feather-v2/factory-reset)
# No-Code Rain Sensing Smart Desktop Umbrella Stand

## Adafruit IO Configuration

Assuming you have already gone through the WipperSnapper Setup page and connected your board to WipperSnapper,&nbsp;**[navigate to the WipperSnapper board list](https://io.adafruit.com/wippersnapper).**

On this page,&nbsp; **select the WipperSnapper board you just connected**.

- If you do not see your board listed - go back to the WipperSnapper Setup Page and make sure it registers with Adafruit.io

![](https://cdn-learn.adafruit.com/assets/assets/000/138/010/medium800/weather_Sparkle_Motion.jpg?1751042933)

On the device page, quickly&nbsp; **check that your device is online and is running the latest version of the WipperSnapper firmware**.

The device tile on the left indicates the version number of the firmware running on the connected board.

- **If the firmware version is green with a checkmark -** &nbsp;continue with this guide.
- **If the firmware version is red with an "X" -** &nbsp;[update to the latest WipperSnapper firmware](https://learn.adafruit.com/quickstart-adafruit-io-wippersnapper)&nbsp;on your board before continuing.

## Adding Components

When you are on the new Barometer device page, start by adding the barometric pressure sensor. Click on either the New Component Button, or the big + icon in the middle of the page.

![](https://cdn-learn.adafruit.com/assets/assets/000/138/011/medium800/weather_Umbrella_New_Component.jpg?1751043112)

In the pop-up, search for NeoPixel and click on the NeoPixel option to get to the set-up screen.

![](https://cdn-learn.adafruit.com/assets/assets/000/138/012/medium800/weather_NeoPixel_Component.jpg?1751043268)

On the next page, you will want to choose D21 from the NeoPixel Pin dropdown. Then change the Number of Pixels to 30 (that is how many are on this NeoPixel strip). You can leave the rest of the information set to the default.

![](https://cdn-learn.adafruit.com/assets/assets/000/138/013/medium800/weather_Create_NeoPixel_Component.jpg?1751043346)

Your Devices page should now look like this:

![](https://cdn-learn.adafruit.com/assets/assets/000/138/014/medium800/weather_Devices_Page_2.jpg?1751043411)

The next step will set up the Adafruit IO Actions to get this all to work.

# No-Code Rain Sensing Smart Desktop Umbrella Stand

## Set up Weather Power-Up

Warning: This project relies on Adafruit IO+, which is a paid upgrade from the free Adafruit IO service. You'll need an active IO+ subscription to unlock the Weather Power-up used to forecast the weather.

Before you can use the Weather Power-Up, you need to first add a location to the Power-Up. On the top navigation bar, click the 'Power-Ups' link. Then click on the 'Get Started' button under Weather

![](https://cdn-learn.adafruit.com/assets/assets/000/138/015/medium800/weather_Weather_Power-Up2.jpg?1751045365)

Next, click the blue + Add Location button.

![](https://cdn-learn.adafruit.com/assets/assets/000/138/016/medium800/weather_location_setup.jpg?1751045671)

Enter in the latitude and longitude of your location separated by a comma, then name that location. You can use a website [like this one](https://www.latlong.net/) to help you find your location's latitude and longitude.

Then click the Create button to save your new location. Once you have a location saved, you can move on to the next step.

# No-Code Rain Sensing Smart Desktop Umbrella Stand

## Set up Adafruit IO Action

![](https://cdn-learn.adafruit.com/assets/assets/000/138/017/medium800/weather_Actions.jpg?1751046013)

In the top navigation click on the Actions link, then on the next page click the 'New Action' button.

![](https://cdn-learn.adafruit.com/assets/assets/000/138/018/medium800/weather_Barometer_New_Action_button.jpg?1751046116)

In the pop-up, name your action Umbrella Project (or whatever you want to call it), and describe what your action will do. In this case 'If it's raining, turn NeoPixels blue'

![](https://cdn-learn.adafruit.com/assets/assets/000/138/019/medium800/weather_Action_Name_Popup.jpg?1751046171)

Here is how you will want to set up your action. Set it up to trigger the action every 5 minutes. Then if there is rain coming in the next hour, turn the NeoPixels a light blue color, and if it is actively raining, turn the NeoPixels a dark blue color. If there is no rain incoming, turn off the NeoPixels.

![](https://cdn-learn.adafruit.com/assets/assets/000/138/020/medium800/weather_Umbrella_Project_Actions.jpg?1751046281)

Info: If you aren't sure how to use Adafruit IO Actions, please check out this guide: https://learn.adafruit.com/how-to-use-blockly-for-actions-on-adafruit-io

Once you have your new Adafruit IO Action set up like above, click the Save and Run button.

![](https://cdn-learn.adafruit.com/assets/assets/000/138/021/medium800/weather_Umbrella_Save_and_Run.jpg?1751046388)

# No-Code Rain Sensing Smart Desktop Umbrella Stand

## 3D Print and Assembly

![](https://cdn-learn.adafruit.com/assets/assets/000/138/022/medium800/weather_IMG_5154.jpg?1751046447)

If you have access to a 3D printer, you can download the files below and print the custom umbrella holder. I would print with a translucent filament (I used a clear PETG filament). You will then want to solder longer wires to the NeoPixel strip wires so you can install the strip in the walls of the print.

[Umbrella_Body.stl](https://cdn-learn.adafruit.com/assets/assets/000/138/023/original/Umbrella_Body.stl?1751046632)
[Umbrella_Top.stl](https://cdn-learn.adafruit.com/assets/assets/000/138/024/original/Umbrella_Top.stl?1751046641)
I used a chopstick to get the wire through the little hole at the bottom and to slide the NeoPixel strip into place, then just pressure fit the top on. That's it! Not the fanciest design, but it works quite well.

![](https://cdn-learn.adafruit.com/assets/assets/000/138/025/medium800/weather_IMG_5153_%281%29.jpg?1751046745)

Plug your Sparkle Motion back in, and the next time it rains, your umbrella stand should light up blue!


## Featured Products

### Adafruit Sparkle Motion Stick + Enclosure Kit

[Adafruit Sparkle Motion Stick + Enclosure Kit](https://www.adafruit.com/product/6333)
The **Adafruit Sparkle Motion Stick** is part of our&nbsp;series of "Sparkle Motion" boards, which are our attempt to make the&nbsp;best small&nbsp;WLED-friendly smart LED driving board in the whole world. Our resident mermaid, <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/6333)
[Related Guides to the Product](https://learn.adafruit.com/products/6333/guides)
### Adafruit Sparkle Motion - All-In-One WLED and xLights Board

[Adafruit Sparkle Motion - All-In-One WLED and xLights Board](https://www.adafruit.com/product/6100)
The&nbsp; **Adafruit Sparkle Motion&nbsp;** is the flagship in&nbsp;our&nbsp;series of "Sparkle Motion" boards, that are our attempt to make the&nbsp;best small&nbsp;WLED-friendly smart LED driving board in the whole world. Our resident mermaid,&nbsp;<a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/6100)
[Related Guides to the Product](https://learn.adafruit.com/products/6100/guides)
### Mini Sparkle Motion - WLED-friendly ESP32 NeoPixel LED Driver

[Mini Sparkle Motion - WLED-friendly ESP32 NeoPixel LED Driver](https://www.adafruit.com/product/6160)
The **Adafruit Sparkle Motion Mini** &nbsp;is part of our&nbsp;series of "Sparkle Motion" boards, that are our attempt to make the&nbsp;best small&nbsp;WLED-friendly smart LED driving board in the whole world. Our resident mermaid, <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/6160)
[Related Guides to the Product](https://learn.adafruit.com/products/6160/guides)
### Adafruit NeoPixel LED Strip with 3-pin JST PH 2mm Connector

[Adafruit NeoPixel LED Strip with 3-pin JST PH 2mm Connector](https://www.adafruit.com/product/3919)
Plug in and glow, this **Adafruit NeoPixel LED Strip with JST PH Connector** has **30 total LEDs** in a **"60 LED per meter" spacing** , and is 0.5 meters long, in classy Adafruit Black. Its not too long, but has lots of glowing action.<a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/3919)
[Related Guides to the Product](https://learn.adafruit.com/products/3919/guides)
### Silicone Cover Stranded-Core Ribbon Cable - 4 Wires 1 Meter Long

[Silicone Cover Stranded-Core Ribbon Cable - 4 Wires 1 Meter Long](https://www.adafruit.com/product/3892)
For those who are fans of our silicone-covered wires, but are always looking to _up their wiring game_. We now have **Silicone Cover Ribbon cables!** These may look _a lot_ like <a...></a...>

In Stock
[Buy Now](https://www.adafruit.com/product/3892)
[Related Guides to the Product](https://learn.adafruit.com/products/3892/guides)
### Adafruit IO+ Subscription Pass – One Year

[Adafruit IO+ Subscription Pass – One Year](https://www.adafruit.com/product/3792)
The all-in-one Internet of Things service from Adafruit you know and love is now _even better_ with IO+. The 'plus' stands for MORE STUFF! More feeds, dashboards, storage, speed. Power up your [Adafruit IO](https://io.adafruit.com/) with the $99 pass for 1 year of the...

In Stock
[Buy Now](https://www.adafruit.com/product/3792)
[Related Guides to the Product](https://learn.adafruit.com/products/3792/guides)

## Related Guides

- [Adafruit Sparkle Motion](https://learn.adafruit.com/adafruit-sparkle-motion.md)
- [Adafruit Sparkle Motion Mini](https://learn.adafruit.com/adafruit-sparkle-motion-mini.md)
- [Adafruit Sparkle Motion Stick](https://learn.adafruit.com/adafruit-sparkle-motion-stick.md)
- [No-Code DS18B20 Temperature Sensor with WipperSnapper](https://learn.adafruit.com/using-ds18b20-temperature-sensor-with-wippersnapper.md)
- [Last-Minute Halloween Accoutrements with HalloWing](https://learn.adafruit.com/last-minute-halloween-accoutrements-with-hallowing.md)
- [Ikea Vindriktning Hack with QT Py ESP32-S3 and Adafruit IO](https://learn.adafruit.com/ikea-vindriktning-hack-with-qt-py-esp32-s3-and-adafruit-io.md)
- [Adafruit QT Py and NeoPixel LEDs](https://learn.adafruit.com/qt-py-and-neopixel-leds.md)
- [Adafruit IO Basics: Feeds](https://learn.adafruit.com/adafruit-io-basics-feeds.md)
- [Wakanda Forever Game](https://learn.adafruit.com/wakanda-forever-game.md)
- [Adafruit PyBadge and PyBadge LC](https://learn.adafruit.com/adafruit-pybadge.md)
- [HalloWing Light Paintstick](https://learn.adafruit.com/hallowing-light-paintstick.md)
- [Integrating Color Sensors with itsaSNAP and HomeKit](https://learn.adafruit.com/integrating-color-sensors-with-itsasnap-and-homekit.md)
- [Wireless LED Juggling Balls with ESP-NOW](https://learn.adafruit.com/wireless-juggling-balls-esp-now.md)
- [PyPortal NeoPixel Color Picker](https://learn.adafruit.com/pyportal-neopixel-color-picker.md)
- [Adafruit IO Basics: Analog Input](https://learn.adafruit.com/adafruit-io-basics-analog-input.md)
- [Holiday Tree with Feather RP2040 Scorpio](https://learn.adafruit.com/holiday-tree-with-scorpio.md)
- [HalloWing M4 Tombstone](https://learn.adafruit.com/hallowing-tombstone.md)
- [Adafruit IO Basics: Color](https://learn.adafruit.com/adafruit-io-basics-color.md)
