OpenShower: One Place for Sensations & Sophistication

by blanyaShowers in Workshop > Energy

765 Views, 5 Favorites, 0 Comments

OpenShower: One Place for Sensations & Sophistication

Instructables Thumbnail (2).png
Profile-Based Pressure Automation.gif
sensoryShower.gif

Hi, Ernesto here. What is OpenShower?

OpenShower is a fully open, modular shower system designed to save water and energy — focused on delivering the best shower experience without the need to spend thousands of dollars or modify your bathroom installation. Thanks to its all-in-one, ready-to-use design, you can build it, customize it, and repair it yourself — driven by the vision that owning a premium shower should be as simple as buying a coffee machine.

What began as a hobby gradually took over more of my time, as I spent countless hours designing every component to be modular, multifunctional, and repairable. Every detail is crafted to deliver a unique, immersive experience through parts that work seamlessly together and are built from accessible, widely available materials.

This project has taken a lot of effort and dedication — first to develop it, then to present it clearly and concisely. That’s why I put together a GitHub repository, this Instructable, and a YouTube video to show the full build process. I tried to document 100% of the steps.

Once you dive into OpenShower, you’ll discover a project with many layers — shapes, materials, code, and concepts still waiting to be explored. It’s not just a water container. It’s also a container for code, art, creativity, and new ways to rethink our shower experience.

With this combination of ideas and resources, I want to show you what’s been possible so far — in a way that’s as transparent as the shower itself. (Check Step 19)

If you’d like to support the next-gen version — with features never seen before — I invite you to check out the Kickstarter campaign. (Launching soon)

Supplies

pieces.png

BOM FILE:

https://github.com/blanyaShowers/OpenShower/blob/main/hardware/billOfMaterials/BOM.xlsx

Each component has its own tab in the Excel file, where you can find the part and its image.

Review the 3D Model and Available Resources

3D.png
OpenShower: 18 Steps to Build the Shower of the Future
Yellow Modern Important Announcement Instagram Post.png

The YouTube video walks through the 18 steps to build the model, showing in detail how parts are handled, which tools are used, and extra insights only visible through video.

YouTube Video:

https://youtu.be/CI9o5aMDqA0

The 3D model includes only the 3D-printed parts and their placement to help you identify each shower component. Acrylic pipes are included in the model for reference but are not printable parts.

Fusion 360 Colored:

https://mymy18804.autodesk360.com/g/shares/SH30dd5QT870c25f12fc106a6cc78a09e97c

Fusion 360 Black:

https://mymy18804.autodesk360.com/g/shares/SH30dd5QT870c25f12fcdd294b2c0f4d469b

Colored and Dark are the same — only one has colored parts for easier identification.

GitHub:

https://github.com/blanyaShowers/OpenShower/

Kickstarter: (Pre-Launch Phase)

https://docs.google.com/forms/d/e/1FAIpQLSfKWdLuAyNjzHTUnqhW8uvac0YEJOeuyi3Ia_oSF2ROR9ZhWQ/viewform?usp=dialog

Web:

https://blanya.com/

GitHub Issues:

https://github.com/blanyaShowers/OpenShower/issues

Print Test Fit Parts for Adjustment

2.1.png
2.2.png

Although all 6" (Acrylic Pipe OD152.4 mm - 3.0 mm wall thickness) may look similar, they often have slight diameter variations and are not perfectly circular.

For this reason, it's important to test different O-ring sizes and adapter pieces to find the best fit.

Use O-rings with a 3.0 mm cross-section in various sizes to find the best fit. The O-ring fills small gaps between the adapter and the pipe, helping to prevent glue leaks.

Recommended sizes:

OD 110mm / ID 104mm

OD 135mm / ID 129mm

OD 125mm / ID 119mm

Use the one that fits the pipe best.

Print All 3D Parts and Get the PCB

3.2.png
3.png

Print the 3D parts from the repository and use the 3D model as a reference:

https://github.com/blanyaShowers/OpenShower/tree/main/hardware/3dPieces

For components that come into contact with water, use SLA (resin) 3D printing technology.

White resin tends to yellow over time with use, while black resin shows minimal discoloration.

Printed Circuit Board (PCB):

https://github.com/blanyaShowers/OpenShower/blob/main/hardware/electronics/Last_Tested_PCB%20v50_2025-05-11.zip

3D-printed parts and PCBs manufactured by JLCPCB

Prepare the Pipes for Assembly

4.png

Clean the pipes and sand the edges to improve glue adhesion.

Acrylic Pipe OD 152.4 mm x L16 cm (3.0 mm wall thickness) - Electronics

Acrylic Pipe OD 152.4 mm x L90 cm (3.0 mm wall thickness) - Water Pipe

Attach Adapters to the Electronics Pipe

5.png
5.1.png
GlueSpace.png

Try out different O-ring sizes to find the best fit. The adapter should fit tightly to help prevent glue leaks

Before applying glue, you can apply water test to check for any leaks. It's a good idea to practice with this piece before applying glue to the main water pipe.

Use Loctite 401 a cyanoacrylate-based glue. You can use an accelerator to keep it from staining the acrylic and to save time — just make sure to apply only a small amount.


Attach Adapters to the Water Pipe

6.png
6.2.png
6.1.png
alignment.png

Test different O-ring sizes for the best fit.

Align the top and bottom parts using tape as a reference. Make sure to match any screw holes from the top with those on the bottom. Proper adapter alignment is essential for smooth assembly. You can practice aligning the parts before applying the glue.

Apply Loctite 401 glue in the same gap area as used in the Electronics Pipe to securely bond the parts.

Prepare the Main Module Base

7.png
7.2.png
7.1.png

This is an important part — it holds the heating element, two sensors, air inlet and outlet, and the main power cable.

Don’t overtighten the sensors; you could break the part. Each component should slide in with light pressure — no forcing.

Sensor threads are not included in the part. You'll need to use 1/4", 1/8", M6 and PG7 tap threads for those.

The main heating element shown in the video is 1000W 120V to ensure broad compatibility with most electrical networks. Using the 1650W or 2000W version is still viable, but it may cause outlet overheating if your electrical system isn’t prepared for that load. Make sure your setup can handle it before upgrading.

Make sure the piece Tank-Window.stl is printed in translucent or transparent material to allow light to pass through.

Prepare the Display and Arm Support

8.png
8.1.png

This piece includes the pipe that goes inside the tube for water input and output, the screen mount, and the air outlet for pressure regulation.

Make sure the pipe isn’t positioned too close to the base — leaving at least 1 cm of space helps prevent water flow restriction.

Assemble the Core System Structure

9.png
sylicon.png
9.2.png
9.1.png

Apply a silicone gasket to ensure a watertight seal. Allow the silicone to dry for 24 hours before filling the tank with water.

Use screws to attach the top and bottom parts to the water pipe.

Prepare the Shower Arm

10.png
10.2.png
10.1.png

This component controls the water inlet and outlet.

Adjust the height as needed, and you can even swap out different shower arms for different experiences.

It includes a check valve, a mini water filter, and the shower head.

Prepare the Magnetic Bottom Base

11.1.png
11.png
Screenshot 2025-05-21 145029.png

The base is secured with three neodymium magnets, providing extra support by increasing the contact surface and helping to stabilize the shower.

Another way to stabilize the shower is through the top part, which has small grips that make it easier to tie the tank down and prevent any falls.

Prepare the Power Source Cable

12.png
12.1.png

Cut the 12 AWG cable at your preferred length. It's usually best to place the connector away from the water tank — in my case, about 2.5 meters away.

Leak Issue in IP68 PG7 Cable Gland #5

Power Plug Male Adapter Cable – Improve Water Isolation #8

Present the Fully Assembled Frame

13.png
13.1.png

Most of the parts are now assembled, and the shower closely resembles the final product in both look and feel.

Assemble the Electronic Components

14.2.png
14.1.png
14.3.png
14.png

Refer to the BOM.xlsx file for details and images of each electronic component.

Solder all electronic components and connectors to the PCB. Then plug in the ESP32, PWM module, and other components into their corresponding connectors. Once everything is in place, test all connections to ensure proper functionality.

Load the Control Software

15.2.png
15.png
1.png
Add a subheading.png

Using the Arduino IDE and the code from the repository, upload the firmware to the ESP32.

Also, upload the .JSON files that contain the shower profiles.

https://github.com/blanyaShowers/OpenShower/tree/main/software/firmware-ESP32

At this point, it's expected that the battery readings may show up to 120% with some erratic variations (Battery Level Readings Inaccurate #4).

Screen References:

  1. Water Temperature: Displays the current water temperature in Celsius.
  2. Shower Profile: This icon changes based on the selected profile.
  3. P.Bott: Measures water level before and pressure during the shower.
  4. Start/Pause: Displays “Start” before and “Pause” during the shower.
  5. Battery: Indicates the current battery level charge status.
  6. Bluetooth: Gray means not connected; yellow indicates a successful connection.
  7. Desired Temp: The target temperature for your shower.

Profiles:

With thousands of possible combinations, Profiles are your personal memory presets. They coordinate water pressure, and even light intensity and color — giving you full control with zero effort during your shower.

You can set the temperature from the app. It might also work through profile.json, but I'm still figuring out which one makes more sense.

Integrate the Electronics Into the Frame

16.1.png
16.2.png
16.png

The electronics in the top and bottom sections are connected using an FCC cable.

Verify that all hoses are properly seated in the pneumatic fittings, as inadequate connections frequently result in air or fluid leakage.

Leak and Interference in FCC Cable #6

Run Leak and Connection Tests

17.png
2.png
1.png
3.png

Fill the tank with a small amount of water to check for any leaks. This step also helps verify basic functionality.

You can check the current water temperature, set your desired temperature, and choose a shower profile using your phone. Just install the nRF Connect app — a widely used tool for connecting to BLE devices.

Search for the BLE device named "Blanya OS V1.0" and connect.

Set Temperature

  1. Open the characteristic with UUID: beb7aaedc10b
  2. Valid values: 1 to 45
  3. Success: You will hear a confirmation sound or see the updated value on the screen.
  4. Max allowed temperature: 45 °C

Set Shower Profile

  1. Open the characteristic with UUID: 6412269d6f42
  2. Valid values: 0 to 3
  3. Success: The system will restart and profile icon will change.

Note: Both values must be sent as text (UTF-8 encoded).

Perform the Final Test in the Bathroom

18.5.png
18.png
18.3.png
18.4.png

Thank you for following the steps!

At this stage, you should be able to take a shower using OpenShower.

If you built your unit yourself, you likely encountered some assembly challenges or identified areas for improvement. I would greatly appreciate hearing about the issues you faced, as your feedback will help improve and update this guide.

If you received a fully assembled OpenShower, this was the process we followed to deliver a fully functional unit to you.

Blanya OS: Key Points

2.png

What is it?

An innovative, portable shower system that works with a 19-liter (5-gallon) water tank. It's completely self-contained - you don't need to modify your bathroom or touch existing plumbing.


Key Features

Water Saving

  1. Fixed 19-liter tank that naturally limits consumption
  2. Pre-heated water that comes out hot immediately
  3. Profile system that optimizes usage based on your routine
  4. Transparent design lets you see exactly how much water you're using

Easy to Use

  1. Plug-and-play: ready to use straight from the box
  2. Customizable profiles (temperature, pressure, lights)
  3. LCD screen showing temperature, water level, and battery status
  4. Bluetooth control from your phone via ESP32
  5. One-button operation

Safety

  1. Only connects to power for heating water
  2. Runs on dual 18650 batteries during shower (disconnected from power)
  3. Built-in temperature sensor with real-time monitoring
  4. Electronics completely isolated from water
  5. Touch the tank to feel water temperature
  6. Operating pressure: 1 psi

Open Source & Community

  1. All code, 3D models, and documentation available on GitHub
  2. Right to Repair philosophy - print your own replacement parts
  3. Community-driven development and improvements
  4. Full transparency in design and list of materials
  5. Fusion 360 models publicly accessible

How It Works

  1. Fill the tank with water (hose or funnel)
  2. Connect to power to heat water
  3. Wait until desired temperature is reached
  4. Disconnect from power for safety
  5. Press the button to start showering

Benefits

  1. Eco-Friendly
  2. Significantly less water and energy consumed
  3. Visualize exactly how much water you use
  4. Encourages more conscious habits
  5. Heat only what you need, when you need it

Economical

  1. No professional installation required (Assembled Version)
  2. No hidden costs
  3. Energy bills
  4. Replaceable/upgradeable modular components
  5. Most parts are 3D-printable
  6. Standard, universally available non-printed parts

Unique Experience

  1. Illuminated bubbles with colored LEDs creating ambient lighting
  2. Transparent tank to see water quality and usage
  3. Relaxing bubble sounds for spa-like atmosphere
  4. Customizable profiles
  5. Light colors could change with pressure stages
  6. Sensory Shower

Technical Specifications

  1. Tank Capacity: 19 liters (5 gallons)
  2. Batteries: 2x 18650 (automatically charge when connected to main power).
  3. Heating Power: 1000-2000W - 120V
  4. Connectivity: ESP32 Bluetooth with app support
  5. Display: 1.28-inch round LCD (watch-style)
  6. Sensors: Pressure and temperature sensors (expandable)
  7. Shower Arm: Standard 82cm (customizable)
  8. Weight: ~5 kg with packaging
  9. Materials: Mostly 3D-printed
  10. Working Principle: Pressurization
  11. Water flow range: 1.3–1.8 L/min

Display Information

  1. The LCD shows real-time data:
  2. Current water temperature
  3. Selected shower profile
  4. Water level/pressure readings
  5. Start/Pause status
  6. Battery charge level
  7. Bluetooth connection status
  8. Target temperature


Availability & Support

Current Options:

  1. DIY Kit: For makers (requires soldering, gluing, assembly)
  2. Full Assembly: For early adopters (prototype stage)

Important Notes:

  1. Status: Prototype
  2. Ships from Mexico
  3. Independent project
  4. Focused on makers and early adopters
  5. Community support through GitHub

Open Resources

  1. GitHub: Code, bill of materials, profiles, issues
  2. Fusion 360: 3D models (colored and black versions)
  3. Instructables: Build guides
  4. YouTube: 18-step build walkthrough with detailed instructions

Bottom Line

Blanya OpenShower is an open-source, portable, smart shower that revolutionizes water usage through transparency, customization, and community-driven innovation. It offers a complete shower experience anywhere without installation, while promoting water conservation and providing a spa-like, personalized experience through profiles, ambient lighting, and real-time monitoring.

Perfect for: Makers, early tech adopters, eco-conscious users, and anyone wanting shower independence without bathroom modifications.

Alternative Names: Personal Shower, Single Shot Shower, QuickShot Shower

Conclusion

+10 Prototypes.png

Soon, you’ll realize that bathing with a product you can build and shape yourself is a great experience — and that your best ideas for improving it will come while you're using it. Your shower becomes your new creative space.

There are still a few details to refine, but the system is fully functional and ready for real-world testing.

My goal is simple: to create the best shower experience possible.

Because the best ideas come in the shower.

— Ernesto