Deluxe smart curtain

A relatively cheap curtain that can display bitmap pictures or animations (videos in the "file" section)

Public Chat
Similar projects worth following
Can be done in half a day if you have the materials. Quite easy.

This projects allows you:

   - to build a 20 x 60 (or bigger if you want) smart curtain able to display images 

   - to use a mobile phone to select pictures, animation or speed


Sprite seen from 30 meters by night

MPEG-4 Video - 7.64 MB - 01/08/2023 at 08:35



Pacman animation

MPEG-4 Video - 30.00 MB - 01/08/2023 at 08:34



Sprite mode

MPEG-4 Video - 16.78 MB - 01/08/2023 at 08:33



Blinking stars animation

MPEG-4 Video - 33.33 MB - 01/08/2023 at 08:07



This is the bitmap of the image. You can add your own - each image is a 20x 60 bitmap, each pixel represented by 3 bytes (R,G,B).

h - 148.74 kB - 01/08/2023 at 08:01


View all 7 files

  • 1 × a M5stack atom ESP32 device (8 $ on M5stack site)
  • 1 × some wires
  • 1 × A 2 meters piece of plastic or wood to suspend the leds
  • 1 × Usual tools & materials (glues, double sided tape to stick leds to the piece of plastic, soldering iron,..)
  • 1 × A good 5v power supply : for 1200 leds (20x60) you'll need 360 watts. Cost 30$ aliexpress

  • 1
    How to make it ?

    1 - Hardware part

      a - Leds

         Assemble leds as shown in the picture. In my example, the "screen" is 2 meter high (the size of each led roll) x 111 centimeters wide for 20 led rolls, so you need to space each roll by 111/19=5.8 centimeters. For this you can use a strong double side adhesive tape (i taped the wire connected to the leds, instead of the leds themselved because the silicon covering makes them hard to glue).

       You need to plug the led rolls on to the other, as shown on the picture. Which means that order of the leds increases when you go down for rolls 1,3,5.... and decreases for rolls 2,4,... But do not worry, the driver corrects this to display bitmap pictures !

    To ensure each led line stays straight with a constant spacing (and to avoid a mess when you store the curtain), you can add a second piece a plastic on the bottom (see picture) which will act as a weight. Fix it with wire or elastics.

      b - Power supply

      You need to connect the 5 V supply to ALL led rolls - they have 2 wires (white & red) with no data line for this. the reason is the voltage drop along the long line (1200 leds heres) : by connecting all rolls you avoid this. If you dont do it the leds probably wont light after the 3rd roll.

      c - M5Stack

      Connect the M5Stack to the first led roll (ie on the bottom left of the curtain : if you put it elsewhere the order of the leds will change) - for this you need to connect the led rolls data line to pin 26, the GND pin to the led roll's GND, same for the +5v.

    2 - Software part

      a - The .php file

    This file allows you to control the curtain with your mobile. If you do not use it, you can still control the curtain with M5stack's button to change the curtain animations. 

    If you want to use it, follow the instructions given in the "files" section.

       b - The .ino and .h files

    You will need an arduino installation, including M5Stack and Neopixel libraries. There are many tutorials on the internet for that. Please follow the instructions given in the "files" section.

    if you do not use the mobile update possibility, you can remove the wifi part in the code (anything related to http & wifi) and use M5stack's button to control the curtain

  • 2
    Buy me a coffee

    If you find this project useful & want to buy me a coffee, please do it. You can send me a personnal message through this forum.

View all instructions

Enjoy this project?



Similar Projects

Does this project spark your interest?

Become a member to follow this project and never miss any updates