ESP32-C3 based Smart Door/Window sensor | DEEP SLEEP 30nA? | Long battery life 5/10 years

แชร์
ฝัง
  • เผยแพร่เมื่อ 6 พ.ค. 2023
  • This project is sponsored by PCBWay, order your PCBs now for only $5: www.pcbway.com/orderonline.aspx
    The goal of this project is to design a smart door/window sensor reducing power consumption(in deep sleep/standby) with a custom power latch. Optimizing the deep sleep power consumption of battery-powered smart devices ensures a long battery life cycle.
    Github repo: github.com/salvatoreraccardi/...
    The current was measured with Nordic's power profiler kit, knowing that the current measured is less than the measurement range of this power profiler. I did several tests to verify the accuracy of the data. In any case the accuracy of the data, the consumption would be less than 200nA and this is a very good result considering that a similar device at a power consumption of 6-8uA.
    Do you like the projects I develop? Also visit: objexlabs.com/
    Interesting projects about the topic:
    esp8266-server.de/Reedkontakt...
    • ESP8266 as Window Sens...
    github.com/MakerMeik/Window-S...
    Topics/projects covered in this video:
    Power latch: www.mosaic-industries.com/embe...
    TPL5110: www.adafruit.com/product/3435
    Magnetic sensor: www.ablic.com/en/doc/datashee...
    Reed switch: en.wikipedia.org/wiki/Reed_sw...
    IoT power consumption:
    www.codemotion.com/magazine/a...
    www.thalesgroup.com/en/worldw...
    Links:
    • Shop: www.tindie.com/stores/objex/
    • Instagram: / salvatore.raccardi
    • Linkedin: / salvatore-raccardi-b36...
    • Twitter: / salvoraccardi
    • Github: github.com/salvatoreraccardi
    🎶 Tracks:
    "Punch Deck - Neon Underworld" is under a Creative Commons (CC BY 3.0) license.
    creativecommons.org/licenses/...
    @punchdeck
  • วิทยาศาสตร์และเทคโนโลยี

ความคิดเห็น • 89

  • @geekmystique
    @geekmystique 5 หลายเดือนก่อน +12

    Super impressive; this is a rare example where DiY is better than any commercially available product.

  • @hudsonreynolds4349
    @hudsonreynolds4349 5 หลายเดือนก่อน +1

    Love this project, super impressive and inspiring. I am creating a fitibit with an esp32c3 and have been diving deeper and deeper into power consumption research. Keep it up!

  • @WinterCircuits
    @WinterCircuits 11 หลายเดือนก่อน +2

    Very well thought out project! Nice one

  • @gripperrod
    @gripperrod 9 หลายเดือนก่อน +1

    Excellent piece of work.

  • @shakhizatnurgaliyev9355
    @shakhizatnurgaliyev9355 ปีที่แล้ว +2

    Well done, man!

  • @IshanKarve
    @IshanKarve 11 หลายเดือนก่อน +1

    Very nicely designed. Helpful for smart homes. Cheers

  • @boim9312
    @boim9312 ปีที่แล้ว +1

    So Genius 🎉
    Amazing project

  • @tuiastro
    @tuiastro 8 หลายเดือนก่อน +1

    Thanks for sharing. It's very inspiring. ❤

  • @robmc3338
    @robmc3338 หลายเดือนก่อน +1

    At 30nA, a Supercap and tiny solar panel will give infinite runtime in a tiny package 👍

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  หลายเดือนก่อน

      Right, theoretically it is possible.

  • @Sir-Dexter
    @Sir-Dexter 4 หลายเดือนก่อน

    nice work

  • @mmenjic
    @mmenjic 6 หลายเดือนก่อน +1

    9:28 you could, if you wanted, to make that part of the plastic behind the battery terminals separatable from the rest of the plastic which supports the board so you can remove everything if needed. It is not much more complex if at all and it should be sturdy enough because all goes into bigger case which would hold it together.

  • @wjn777
    @wjn777 11 หลายเดือนก่อน

    Very nice, thanks for sharing. I was struggling with the same idea on remembering the previous state. Interested to see your github

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  11 หลายเดือนก่อน

      I think the solution I developed is great for several applications!

  • @brijeshkhokhar
    @brijeshkhokhar 11 หลายเดือนก่อน

    I will try to implement this. looks good

  • @Fixaj
    @Fixaj 2 หลายเดือนก่อน +2

    nice video thanks

  • @akauppi2
    @akauppi2 4 หลายเดือนก่อน

    Subscribed!

  • @PA8HRX
    @PA8HRX 11 หลายเดือนก่อน +1

    Very nice done. I like it that you grab yourself the target and keep on improving it. It’s a nice combination of mechanical and electric engineering, like the details on the battery bay and the lid. Details.
    Although I also very much like the versatile and addictive ESP-32, could you imagine using a more power friendly chip?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  11 หลายเดือนก่อน +1

      Thank you! The next step is to use the nRF52840 and try ESP32-C6.

  • @chasemartin4450
    @chasemartin4450 4 หลายเดือนก่อน +1

    Impressive! The ESP32 isn't exactly known for being particularly energy efficient (especially when compared to alternatives like nRF52) but its low cost and wide availability make it tempting to implement in smart devices.

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  4 หลายเดือนก่อน +2

      Next week I will upload a very interesting video about it(power consumption and ESP32), I suggest you stay tuned :)

  • @dartfrogdk
    @dartfrogdk 6 หลายเดือนก่อน

    Very Very Nice

  • @xThirdOpsx
    @xThirdOpsx ปีที่แล้ว +2

    Good engineering, well done. I like all the simulations and research you did before diving into the PCB design. That circuit is complex though, are you trying to simplify it or are you ok with it?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  11 หลายเดือนก่อน +1

      It can be simplified, depending a lot on the result you want to achieve.

  • @ToTo-od9wz
    @ToTo-od9wz 3 หลายเดือนก่อน

    Batteries Salvatore!

  • @gsge
    @gsge 5 หลายเดือนก่อน

    Thank you for your efforts searching for low power solutions. I have gone through this few years ago. But after all my experiments, I have a Window/door sensor and water level sensor which is lot simpler. It does not require reed switch or any special power circuit.It just power down the whole esp32 when door is closed.When door is open it wakes up and send message to gateway.

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  5 หลายเดือนก่อน

      The reed switch/ hall effect sensor is present in all door and window sensors, it is not an extra element but essential. My circuit is not complex, I use very simple and inexpensive components, you only need to take an engineering class to understand the simplicity of the design.

    • @gsge
      @gsge 5 หลายเดือนก่อน

      @@SalvatoreRaccardi I am glad I am not engineer. Engineers tends to over engineer things. I wanted to show you simplest door/window sensor which requires only bare ESP8266 module, few metal short wires and a battery supplying 3 to 3.6 volts with special software and it can do everything you do with your circuit here but with better energy efficiency. And it will be 1/3rd in cost and size of your design here. But I will do it when you come out of your engineer mindset. I have spent 40 years tearing apart electronics to understand them.

    • @deslomeslager
      @deslomeslager 4 หลายเดือนก่อน

      @@gsgeSometimes a door is not closed properly, and wind pushes it open. So you push harder to close it. But oops. The read switch has woken up the circuit, but misses the closing of the door. Your version, using wires, will always see the current state. No need to remember the previous state, either your gateway does this, or you can make the circuit smarter. I know 40 years of experience still can beat smart designs. KISS. On the other hand, Salvatore is making a very nice project of this, and if he uses out of the box materials (not PCB way stuff or 3D stuff), it would be for more people. However he has his own subscribers which seem to like his approach. Note: I just came here because YT promoted this video and can say Salvatore is on the right track. But (all) our tracks do not need to be the same.

  • @MR_Rabeel
    @MR_Rabeel ปีที่แล้ว +1

    That so cool 👍 Can we have a video from you explaining how to design pcb for low power device because you are so good at it

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  11 หลายเดือนก่อน

      I'll, I want to look into this topic because in my opinion it is fundamental to the development of many iot devices👍

    • @MR_Rabeel
      @MR_Rabeel 11 หลายเดือนก่อน +2

      @@SalvatoreRaccardi yeah sure! Thanks

  • @jeffking3693
    @jeffking3693 หลายเดือนก่อน

    This is very professional and I enjoyed your video.
    May I ask about your tool set? The ecad/pcb and 3D design tools you are using?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  หลายเดือนก่อน

      Thank you for your comment. I use KiCad and Altium for PCBs design. For 3D part design I use Fusion360.

  • @the_rafa0398
    @the_rafa0398 11 หลายเดือนก่อน

    Very nice project, i like it. I see is not so easy to reflash once the module is assembled. Have you thought using the over the air reflashing? Well to implement that may help you, but it will also depend how often you think you need reflashing the modules

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  11 หลายเดือนก่อน

      Good point, with the power latch I developed you could use OTA but under the condition that you trigger the sensor first. I'll add this feature to the Todo list for the next version.

  • @freman
    @freman 11 หลายเดือนก่อน +1

    how sexy are those 0.8mm boards! I love them in my projects.
    Man, how much simpler would home automation be if you could just project an rf field around a house and tap that for energy? I'm working on weight sensors for my gas storage to detect leaks and warn me when one of the two bottles gets low... it's got a pair of 16550's and a solar panel...

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  11 หลายเดือนก่อน

      Thank you for your comment. Very interesting your project!

  • @amirzendehdel8876
    @amirzendehdel8876 11 หลายเดือนก่อน +1

    👏👏👏👏👏

  • @_adamalfath
    @_adamalfath 8 หลายเดือนก่อน

    Impressive result
    If I understand correctly, the RC delay (R10, C8, C12) is basically the time for MCU to respond and latch on the main MOSFET to prevent the circuit from switching off again?
    Toggling AUTO_TURN_OFF must be the first operation after the MCU wakes up?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  8 หลายเดือนก่อน +1

      exactly

    • @_adamalfath
      @_adamalfath 8 หลายเดือนก่อน

      @SalvatoreRaccardi any potential issue when using a "fresh" assembled module? Since the module has no program to keep to toggle the IO at the first time. Or when reprogramming and forgot to add that line of code

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  8 หลายเดือนก่อน

      No there is a procedure for programming the board to bypass the power latch.

  • @yazanajaj3389
    @yazanajaj3389 11 หลายเดือนก่อน

    You are a creative man..always waiting for videos of your beautiful projects...how much will you set a suitable price for them??

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  11 หลายเดือนก่อน +1

      Thanks! My intention is to sell a set of IoT devices for the home and beyond. Maybe sell a few units of this device.

  • @marcuscps
    @marcuscps 3 หลายเดือนก่อน

    Why not using a ultra low power microcontroller to offload simpler tasks from the main system?
    You could do a lot more, including smarter pin monitoring, use wake up interruptions on pin edges, timer, etc. This is possible using the sleep mode that would bring power consumption down to around 100nA.
    I know that's more power than your circuit is draining, but it does a lot more. It is an interesting tradeoff.

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  3 หลายเดือนก่อน +1

      Your point is right, but the goal was to develop as simple a solution as possible with the ESP32C3. I also developed a version with a microcontroller that does the supervisor work, but from my point of view it is a solution(supervisor microcontroller + ESP32C3) not suitable for mass production.
      Surely ,it would make sense to use an Ultra low power micrcontroller + RF(BLE/zigbee etc).
      When developing a product you have to simplify the design as much as possible, in my point of view.

    • @marcuscps
      @marcuscps 3 หลายเดือนก่อน +1

      @@SalvatoreRaccardi I understand your angle. IMHO the supervisor is superior, especially because it is a general and flexible solution, extensible for other applications, and you can even update the supervisor firmware from the ESP.
      In the end the scale could make it worth the extra complexity. Some microcontroller are less than 50p.

  • @aaronmathewson5522
    @aaronmathewson5522 4 หลายเดือนก่อน

    What off the shelf components could I buy to get close to this? I don’t have the machines or experience to put this together. It’s a great project and would love to be able to buy an add on module to use an existing ESP32 board…

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  4 หลายเดือนก่อน +1

      Hi! Next week I will upload a video where I show a new project of mine, which does just what you describe. I suggest you stay tuned :)

  • @adfjasjhf
    @adfjasjhf 4 หลายเดือนก่อน

    Could it be flashed with ESPHome for example? Having compatibility with home assistant would be perfect

  • @NicksStuff
    @NicksStuff 3 หลายเดือนก่อน +1

    Sadly I didn't understand.
    Here's what I thought you would do: Use a normally closed reed switch (that will be open when the window is closed) directly on the power line. When the window is opened, the ESP32 is powered up and the first thing it does, is turn on a transistor that's in parallel with the switch, sends its state to the MQTT broker or whatever and goes to deep sleep. When the windows is closed, the bounce of the reed switch means the ESP32 will be woken up, turn on that same transistor, sends its new state to the MQTT broker and turn off the transistor, so cutting all power. Could you explain why my solution isn't good and how yours work in greater details?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  หลายเดือนก่อน

      First of all thank you for your comment, I am just seeing it now. I explain in detail how the circuit works from minute 4:10.
      I don't really understand your idea, I would need a schematic to understand better. In any case, have you tested your solution?

    • @NicksStuff
      @NicksStuff หลายเดือนก่อน

      @@SalvatoreRaccardi I didn't understand your idea, you don't understand mine....maybe it's not worth the hassle. Thanks for sharing, anyway!

  • @mashish88
    @mashish88 9 หลายเดือนก่อน +1

    Salvator, Can you pls post link to buy Frogo pins programmer?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  9 หลายเดือนก่อน

      it.aliexpress.com/item/1005004258921308.html?spm=a2g0o.order_list.order_list_main.72.2daa3696PLp6vQ&gatewayAdapt=glo2ita

  • @ToTo-od9wz
    @ToTo-od9wz 3 หลายเดือนก่อน

    You can fool the sensor with any magnet. Is it possible to use something coded, specific to each sensor?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  3 หลายเดือนก่อน

      All smart door sensors are designed in this way. It is possible to make this device more secure by making the unit containing the magnet smarter.

  • @alenninan5524
    @alenninan5524 14 วันที่ผ่านมา

    Hi have you worked with esp32C3 and mpu6050 . Can you tell me how you could connect the esp32 c3 with mpu6050 pins if you had done it ?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  14 วันที่ผ่านมา

      Via I2C?

    • @alenninan5524
      @alenninan5524 13 วันที่ผ่านมา

      @@SalvatoreRaccardi I solved the issue . I need to know the max current and voltage that esp32c3 normally consumes . I saw it consumes 40 mA for esp32c6(active state) . So wt will be the same with esp32c3 ? Secondly , my device might be in active state for 12 hrs(max) , so just to calculate the maH of the battery .So which battery is preferable .The size of the device would be 25 mm*35*20 mm . are there such batteries available ?

  • @begonamarkina9658
    @begonamarkina9658 11 หลายเดือนก่อน +1

    Would it be possible to do this with an accelerometer interrupt instead of reed sensor?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  11 หลายเดือนก่อน

      Yes sure.

    • @begonamarkina9658
      @begonamarkina9658 11 หลายเดือนก่อน

      @@SalvatoreRaccardi How should I connect the accelerometer?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  11 หลายเดือนก่อน

      @@begonamarkina9658 It all depends on the sensor model and project specifications.

  • @TecSanento
    @TecSanento 4 หลายเดือนก่อน

    Could you share it as a public project on easy eda? Because them Users Can directly order it :)?

  • @Techn0man1ac
    @Techn0man1ac 5 หลายเดือนก่อน +1

    Link to simulator, please

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  5 หลายเดือนก่อน

      www.falstad.com/circuit/circuitjs.html

  • @superbikeengineer
    @superbikeengineer 10 หลายเดือนก่อน +1

    I tried makermeik project and the logic circuit to enable ldo does not work as desired. On one pcb it worked i dont know how but on all others it failed

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  10 หลายเดือนก่อน

      The design I developed works very well, I have done several tests, and so far I have not found any issues with the design.

    • @superbikeengineer
      @superbikeengineer 10 หลายเดือนก่อน

      @@SalvatoreRaccardi will u make the code n ckt public?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  10 หลายเดือนก่อน

      @@superbikeengineer The basic code is public

    • @superbikeengineer
      @superbikeengineer 10 หลายเดือนก่อน

      @@SalvatoreRaccardi and hardware project is complete?

  • @AG34273
    @AG34273 4 หลายเดือนก่อน

    Great video, two questions for you. 1. If you only transmit when the sensor state changes, how does the controller know if this sensor is "online" if the sensor state hasn't changed for days? (like ring, zwave, etc controllers know that their sensors are "online"). 2. If you changed to wake up from deep sleep and transmit the state every 5 seconds, how long do you think the batteries will last?

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  4 หลายเดือนก่อน

      Note that all WiFi smart sensors have the following problem, which can be solved by scheduling wake-up every hour. Every 5 seconds is inefficient. In some applications it is not necessary to know whether the sensors are online. If they are sensors for apartment security, yes, but if they are for turning on a light or making a simple measurement, it is not necessary to know if the sensor is online. It all depends on the application.

  • @santopino756
    @santopino756 11 หลายเดือนก่อน +1

    Bravo, anche per il video editing.
    l'inglese é un po' da migliorare.

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  11 หลายเดือนก่อน

      Grazie per il commento, sono consapevole che l'inglese è da migliorare. Infatti sto lavorando molto per migliorare la pronuncia e non solo.

    • @PA8HRX
      @PA8HRX 11 หลายเดือนก่อน +2

      It is very understandable and the Italian accent constantly reminds me of the beautiful language, nice wines and food -> positive 😄🇮🇹

  • @sm94126
    @sm94126 8 หลายเดือนก่อน +1

    Buongiorno Salvatore, anche io mi sto cimentando con un progetto come questo e ti faccio i complimenti, mi sembra molto interessante. Un paio di domande. Ma questo progetto e' un hardware open source? E' possibile avere lo schema elettronico per capire come modificarlo? Grazie per l'attenzione . Ti segnalo inoltre questo link da dove ho preso alcuni spunti che potrebbero essere utili: th-cam.com/video/-oMSD9I4RSo/w-d-xo.html

    • @SalvatoreRaccardi
      @SalvatoreRaccardi  8 หลายเดือนก่อน

      Buongiorno, il progetto è open source (puoi trovare lo schema elettrico su github). Conosco il progetto "trigboard", purtroppo ha dei consumi molto alti in "deep sleep" ~1.5uA, io per adesso sono arriviato fino a ~20nA. Attualmente sto lavorando a una board (devkit) per sviluppare nodi IoT extreme low power.

    • @sm94126
      @sm94126 8 หลายเดือนก่อน

      @@SalvatoreRaccardi Grazie per la risposta. Conto di seguire il canale per vedere le novità che stai sviluppando. Complimenti e Buon lavoro

  • @JeanPhilippeEncausse
    @JeanPhilippeEncausse หลายเดือนก่อน

    Too bad it's not on Tindies I would bought some