commit 81bf9c23a033aea4192b0a984ddd4ee9a9c8bd07 Author: zlaxy Date: Fri Oct 25 17:32:22 2019 +0300 init diff --git a/LICENSE b/LICENSE new file mode 100644 index 0000000..ed09b19 --- /dev/null +++ b/LICENSE @@ -0,0 +1,27 @@ +This code is released under the DWTW license + +This program is free software; you can redistribute it and/or modify it under the terms of the Do What Thou Wilt License. + +Boundless Public License +DO WHAT THOU WILT +TO PUBLIC LICENSE + +Version 2.55 + +Everyone is permitted to copy and distribute verbatim or modified copies of this license document, and changing it in full or in part is allowed without any restrictions. + +TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + +0. Do what thou wilt shall be the whole of the Law. + +DWTWL – a license with a single requirement: DO WHAT THOU WILT + +The license provides more freedom than any other one (such as GPL or BSD) and does not require saving the license text on copying. + +DWTWL – an accomplished and eligible license for free text, code and any other symbols (including the software, documentation and artwork). + +The license does not contain a "no warranty" clause. DWTWL can be used in countries that do not legally acknowledge the transition to public domain. + +Summary: + +An author-creator gives their source code to the world for free, without becoming distracted by worldly thinking regarding how and why the others will use it. diff --git a/README.md b/README.md new file mode 100644 index 0000000..7708020 --- /dev/null +++ b/README.md @@ -0,0 +1,4 @@ +Arduino nano, Motion sensor and Relay with transformerless power supply +====== + +![motionsensorrelay](https://dev.ussr.win/microcontrollers/motionsensorrelay/raw/branch/master/motionsensorrelay_bb.jpg) diff --git a/motionsensorrelay.fzz b/motionsensorrelay.fzz new file mode 100644 index 0000000..662b8d2 Binary files /dev/null and b/motionsensorrelay.fzz differ diff --git a/motionsensorrelay.ino b/motionsensorrelay.ino new file mode 100644 index 0000000..52202b1 --- /dev/null +++ b/motionsensorrelay.ino @@ -0,0 +1,24 @@ +const int lightDelay = 90000; +const byte movePin = 3; +const byte relayPin = 4; +long lastmoveMillis = 0; + +void setup() { + pinMode(movePin, INPUT); + pinMode(relayPin, OUTPUT); + digitalWrite(relayPin, HIGH); +} + +void loop(){ + if (digitalRead(movePin) == 1) lastmoveMillis = millis(); + delay(100); + if (lastmoveMillis > 0) activateRelay(); +} + +void activateRelay() { + if ((millis() - lastmoveMillis) < lightDelay) digitalWrite(relayPin, LOW); + if ((millis() - lastmoveMillis) > lightDelay) { + digitalWrite(relayPin, HIGH); + lastmoveMillis = 0; + } +} diff --git a/motionsensorrelay_bb.jpg b/motionsensorrelay_bb.jpg new file mode 100644 index 0000000..5a04ad1 Binary files /dev/null and b/motionsensorrelay_bb.jpg differ