💬 Roller Shutter Node
-
Hey Scalz, u have forgotten to connect the CSN - Pin in your PCB file for NRF24 ;-) I just solder a bridge between NRF Pin 4 and R14
-
Yah, i know, take it easy this is an minor bug :-)
Your misstake is in the schematic, your wire on the NRF24 CSN-PIN is unnamed.For feature Update, it is advisable to plug an ELKO ~400-500uF near the NRF24 Power, i have reciving problems whith "RF24_PA_HIGH" but i need hight for the distance.
-
But it was named! or the pullup resistor would not be wired, and it was also present on atmel.. and no airwire, weird!
well, i think it happened during converstion to nrf24.
Hopefully the pullup resistor is just near the radio!Is RF24_PA_HIGH available for nrf24 smd, i thought this was for High power nrf. i'm certainly wrong..I've no problem with rfm though.
I don't think i will do more, unfortunately, I mean in this case, it's sort of double job, and i'm using rfm69.
but when i can, i put rfm69 and nrf footprint (i have a pcb not released like this, not a shutter node).Now it's updated :) rev=1.3a for nrf
See you soon -
One question: what are your fuses settings for Optiboot? Dit u use the external 8MHz Clock?
Can you confirm:L: 0xEE
H: 0xDA
E: 0x06 -
But it was named! or the pullup resistor would not be wired, and it was also present on atmel.. and no airwire, weird!
well, i think it happened during converstion to nrf24.
Hopefully the pullup resistor is just near the radio!Is RF24_PA_HIGH available for nrf24 smd, i thought this was for High power nrf. i'm certainly wrong..I've no problem with rfm though.
I don't think i will do more, unfortunately, I mean in this case, it's sort of double job, and i'm using rfm69.
but when i can, i put rfm69 and nrf footprint (i have a pcb not released like this, not a shutter node).Now it's updated :) rev=1.3a for nrf
See you soon -
What the ??
Are you using Eagle 7x ?? I'm still using 6.5..when it works i don't change if no need ;)
but dooo! In my version i see the signal..i think this is sort of very exotic bug case and i got in my face lol

Weird, hein !
no matter thx for reporting, good to know i'll remember or update, we learn from our errors as we say :) -
What the ??
Are you using Eagle 7x ?? I'm still using 6.5..when it works i don't change if no need ;)
but dooo! In my version i see the signal..i think this is sort of very exotic bug case and i got in my face lol

Weird, hein !
no matter thx for reporting, good to know i'll remember or update, we learn from our errors as we say :) -
easy to solve when you've eagle 7.5 ahah
For fuse&bootloader, you can use OTA howto, that's the same : https://www.mysensors.org/about/ota
-
easy to solve when you've eagle 7.5 ahah
For fuse&bootloader, you can use OTA howto, that's the same : https://www.mysensors.org/about/ota
@scalz Are you sure about the Fuses? 0xE2 is normal for int. clock?! Or i am wrong?
http://eleccelerator.com/fusecalc/fusecalc.php?chip=atmega328p&LOW=E2&HIGH=DA&EXTENDED=06&LOCKBIT=FF
-
yes this ok, i'm using this for most of my nodes.
And your link shows that it sets internal rc. -
Ok, Thanks
-
Hey Scalz,
my prototype of your RollerShutter works well right now. I have add an Capacitor (470uF) near the NRF (it is realy needed! otherwise OTA CRC Fail, lost packages)
I have a litte bit trouble with the Current Sensor or the calculation of this.
I Used 2 60W Bulbs, if i PressDown or UP the Power Value increase up to 350W and need a loooooooonng time to decrease. round about 1W per sec.Is this normal? In my opinion not but maybe my ASC is defective? I use a modification of your pre-alpha Sketch
-
hmm. i didn't have 1w/sec.. perhaps acs.. i've already got a few defective. i'll check a bit when i'll have more time, too much cooking.
In case you can set default define duration, and this works well then.
But looks you got it! Great to hear it though :) -
Yaah dont hurry :D
here is the log:
[2016-11-01 10:49:04.702 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:465 [2016-11-01 10:49:04.727 Info] RX 50;6;1;0;17;465 [2016-11-01 10:49:04.728 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:466 [2016-11-01 10:49:04.728 Info] RX 50;6;1;0;17;466 [2016-11-01 10:49:14.731 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 10:49:28.130 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:445 [2016-11-01 10:49:28.137 Info] RX 50;6;1;0;17;445 [2016-11-01 10:49:28.265 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:446 [2016-11-01 10:49:28.267 Info] RX 50;6;1;0;17;446 [2016-11-01 10:49:54.722 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:425 [2016-11-01 10:49:54.727 Info] RX 50;6;1;0;17;425 [2016-11-01 10:49:54.787 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:426 [2016-11-01 10:49:54.788 Info] RX 50;6;1;0;17;426 [2016-11-01 10:50:14.760 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 10:50:23.029 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:405 [2016-11-01 10:50:23.032 Info] RX 50;6;1;0;17;405 [2016-11-01 10:50:23.054 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:406 [2016-11-01 10:50:23.055 Info] RX 50;6;1;0;17;406 [2016-11-01 10:50:53.223 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:385 [2016-11-01 10:50:53.226 Info] RX 50;6;1;0;17;385 [2016-11-01 10:50:53.261 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:386 [2016-11-01 10:50:53.262 Info] RX 50;6;1;0;17;386 [2016-11-01 10:51:14.788 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 10:51:25.712 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:365 [2016-11-01 10:51:25.718 Info] RX 50;6;1;0;17;365 [2016-11-01 10:51:25.725 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:366 [2016-11-01 10:51:25.732 Info] RX 50;6;1;0;17;366 [2016-11-01 10:51:59.985 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:345 [2016-11-01 10:51:59.989 Info] RX 50;6;1;0;17;345 [2016-11-01 10:52:00.013 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:346 [2016-11-01 10:52:00.014 Info] RX 50;6;1;0;17;346 [2016-11-01 10:52:14.818 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 10:52:36.088 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:325 [2016-11-01 10:52:36.091 Info] RX 50;6;1;0;17;325 [2016-11-01 10:52:36.117 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:326 [2016-11-01 10:52:36.119 Info] RX 50;6;1;0;17;326 [2016-11-01 10:53:14.248 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:305 [2016-11-01 10:53:14.251 Info] RX 50;6;1;0;17;305 [2016-11-01 10:53:14.278 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:306 [2016-11-01 10:53:14.279 Info] RX 50;6;1;0;17;306 [2016-11-01 10:53:14.848 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 10:53:54.586 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:285 [2016-11-01 10:53:54.590 Info] RX 50;6;1;0;17;285 [2016-11-01 10:53:54.613 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:286 [2016-11-01 10:53:54.614 Info] RX 50;6;1;0;17;286 [2016-11-01 10:54:14.876 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 10:54:36.813 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:265 [2016-11-01 10:54:36.817 Info] RX 50;6;1;0;17;265 [2016-11-01 10:54:36.843 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:266 [2016-11-01 10:54:36.845 Info] RX 50;6;1;0;17;266 [2016-11-01 10:55:14.904 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 10:55:21.198 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:245 [2016-11-01 10:55:21.202 Info] RX 50;6;1;0;17;245 [2016-11-01 10:55:21.223 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:246 [2016-11-01 10:55:21.224 Info] RX 50;6;1;0;17;246 [2016-11-01 10:56:08.275 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:225 [2016-11-01 10:56:08.278 Info] RX 50;6;1;0;17;225 [2016-11-01 10:56:08.304 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:226 [2016-11-01 10:56:08.306 Info] RX 50;6;1;0;17;226 [2016-11-01 10:56:14.934 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 10:56:58.403 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:205 [2016-11-01 10:56:58.406 Info] RX 50;6;1;0;17;205 [2016-11-01 10:56:58.432 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:206 [2016-11-01 10:56:58.434 Info] RX 50;6;1;0;17;206 [2016-11-01 10:57:14.963 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 10:57:51.378 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:185 [2016-11-01 10:57:51.381 Info] RX 50;6;1;0;17;185 [2016-11-01 10:57:51.403 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:186 [2016-11-01 10:57:51.404 Info] RX 50;6;1;0;17;186 [2016-11-01 10:58:14.991 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 10:58:47.254 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:165 [2016-11-01 10:58:47.280 Info] RX 50;6;1;0;17;165 [2016-11-01 10:58:47.281 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:166 [2016-11-01 10:58:47.282 Info] RX 50;6;1;0;17;166 [2016-11-01 10:59:15.019 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 10:59:46.972 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:145 [2016-11-01 10:59:46.977 Info] RX 50;6;1;0;17;145 [2016-11-01 10:59:47.040 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:146 [2016-11-01 10:59:47.041 Info] RX 50;6;1;0;17;146 [2016-11-01 11:00:15.047 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 11:00:52.176 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:125 [2016-11-01 11:00:52.181 Info] RX 50;6;1;0;17;125 [2016-11-01 11:00:52.244 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:126 [2016-11-01 11:00:52.245 Info] RX 50;6;1;0;17;126 [2016-11-01 11:01:15.076 Info] RX 0;255;3;0;9;TSP:SANCHK:OK [2016-11-01 11:02:08.445 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:105 [2016-11-01 11:02:08.449 Info] RX 50;6;1;0;17;105 [2016-11-01 11:02:08.505 Info] RX 0;255;3;0;9;TSP:MSG:READ 50-50-0 s=6,c=1,t=17,pt=3,l=2,sg=0:106 [2016-11-01 11:02:08.506 Info] RX 50;6;1;0;17;106Bootup Log:
57 01.11.2016 12:34:04 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 62 59 01.11.2016 12:34:05 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 63 61 01.11.2016 12:34:05 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 64 63 01.11.2016 12:34:06 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 65 65 01.11.2016 12:34:07 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 66 67 01.11.2016 12:34:08 TX 50 50 0 3 C_SET V_TEMP BYTE 1 NO 25 69 01.11.2016 12:34:08 TX 0 0 50 50 3 C_SET V_TEMP BYTE 1 NO ok 25 71 01.11.2016 12:34:08 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 67 73 01.11.2016 12:34:09 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 68 75 01.11.2016 12:34:10 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 69 77 01.11.2016 12:34:11 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 70 79 01.11.2016 12:34:12 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 71 81 01.11.2016 12:34:14 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 72 83 01.11.2016 12:34:15 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 73 85 01.11.2016 12:34:17 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 74 87 01.11.2016 12:34:19 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 75 89 01.11.2016 12:34:21 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 76 91 01.11.2016 12:34:24 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 77 93 01.11.2016 12:34:26 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 78 95 01.11.2016 12:34:30 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 79 97 01.11.2016 12:34:33 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 80 99 01.11.2016 12:34:38 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 81 101 01.11.2016 12:34:43 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 82 103 01.11.2016 12:34:50 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 83 106 01.11.2016 12:34:59 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 84 108 01.11.2016 12:35:10 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 85 110 01.11.2016 12:35:23 TX 50 50 0 6 C_SET V_WATT UINT16 2 NO 86 -
It is possible that you dont use the asc for the autocalibration yet? I cant find it in your Code .... I found only the read process.
Corect me if i am wrong. :-)
-
acs read can set an endstop bool = "event" which trig the shutter state machine. you should see it ;)
in case you have some trouble, then you can set few default define in sketch to set your travel time. perhaps a cleareeprom needed, then shutter should be ready. -
acs read can set an endstop bool = "event" which trig the shutter state machine. you should see it ;)
in case you have some trouble, then you can set few default define in sketch to set your travel time. perhaps a cleareeprom needed, then shutter should be ready.Yes, i work on it . . . still my ACS wont work well. At the moment i init the node with the Endstop Bool, that works fine.
I work also on an delay between the UP/DOWN States, i don't like it if the shutter change the direktion directly. But . . . not find the right way yet :-)
EDIT: ACS works right now!!! :+1: I think my IC was defective :-1:
-
Dont know why but while autocali. they stop messurement of current . . .
If i start the process the first is go UP, my messurment of power is: 30W
if i Power of the attached Bulb the value stays on 30W, so it is normal he cant detect anythinkIn your loop:
// Read current sensor, endstop uint16_t acsread = 0; acsread = readAdcWithFilter(ACS712_SENSOR, PS_64); if (acsread < ACS712_LEVELDETECT) { // Endstop detected if (getCalibrationState() > 0) setEndStopState(true); else {}; }I modified for debug like this:
// Read current sensor, endstop uint16_t acsread = 0; acsread = readAdcWithFilter(ACS712_SENSOR, PS_64); Serial.print(F("ACS712: READ DEBUG: ")); Serial.println(acsread); if (acsread < ACS712_LEVELDETECT) { // Endstop detected if (getCalibrationState() > 0) setEndStopState(true); else {}; }It never change the value of acsread after the init process is started. . .
LOG:
TSP:MSG:READ 0-0-50 s=2,c=1,t=2,pt=0,l=1,sg=1:1 CMD: Autocalibration ACS712: READ DEBUG: 7 ACS712: READ DEBUG: 29 ACS712: READ: 29 TSP:MSG:SEND 50-50-0-0 s=6,c=1,t=17,pt=3,l=2,sg=0,ft=0,st=ok:29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 29 ACS712: READ DEBUG: 2929 will stay until timout stop. . . between this i power of the attached test bulb (20W)
-
Level detection work right now . . .
my modifications:
// send % progression for controller widgets NOT TESTED static uint8_t oldpos = getPosition(); if (oldpos != getPosition() && getCalibrationState()==0) { send(msgShutterPosition.set(getPosition())); send(msgPercent.set(getPosition())); oldpos = getPosition(); }
