Windows GUI/Controller for MySensors
-
@tekka See below it reboot the first time when I try it the seconde time it did
not it just say rebootHere is my routing Tabel:
-
Anyone who owns a Vera controller, and perhaps was able to connect this nice MYSController to the mySensors serial-gateway hooked into Vera USB?
The serial port is exposed in TCP/IP by Vera via ser2net, however I wasn't successful by setting MYSController to <my-vera-ip>:3482 (3482 is the port displayed in Vera -> APPS -> Develop Apps -> Serial port config ) .
(maybe the Vera MYSensor plugin opens the serial connection to GW in 'exclusive' mode or something like that? )
If I remove the GW from Vera USB and plug in my computer, MYSController works fine.
Anyone? Am I wanting too much?
-
I'm new to MySensors and playing around with this implementation since some weeks. I implemented an interface from serial to MQTT per python and everything is running fine so far. The last days I spend some time with the bootloader (it is a great feature!!!). I created also a python mqtt client that will take care on that.
I got really crazy the last 2 days with the CRC calculation. I always got a different CRC as as the MYSController. Now I found out, that it seems that the last byte within the HEX file is interpreted as 0xFF instead of the real data. I flashed now one sensor with the MYSController and as I can see in the log-file -> the last byte is read from the HEX as wrong value (0xFF instead of 0x14) -> therefore the HEX file is not flashed correctly (last byte is wrong) -> it seems that this is a bug in MYSController. (I'm using version 0.1.2.278)
Can you check that please?
-
I'm new to MySensors and playing around with this implementation since some weeks. I implemented an interface from serial to MQTT per python and everything is running fine so far. The last days I spend some time with the bootloader (it is a great feature!!!). I created also a python mqtt client that will take care on that.
I got really crazy the last 2 days with the CRC calculation. I always got a different CRC as as the MYSController. Now I found out, that it seems that the last byte within the HEX file is interpreted as 0xFF instead of the real data. I flashed now one sensor with the MYSController and as I can see in the log-file -> the last byte is read from the HEX as wrong value (0xFF instead of 0x14) -> therefore the HEX file is not flashed correctly (last byte is wrong) -> it seems that this is a bug in MYSController. (I'm using version 0.1.2.278)
Can you check that please?
-
Hello,
First of all, thanks Tekka for the great MYScontroller!
I want to get started with the MYSbootloader but I can't get it to work. I've followed each step securely but I never "see" my arduino in MYScontroller after flashing the bootloader. Perhaps I misunderstand the theory behind the bootloader? Maybe the fuses are wrong, I don't know.
Perhaps someone can reply to the following;
- Can I just attach a radio module to an Arduino Nano as instructed on the site, clear the eeprom and then burn the bootloader using usbasp? (as instructed in this thread) Or do I need to upload the gateway sketch before burning the bootloader?
- I have a hard time understanding what the bootloader does, I think it enables low level nrf functionality for OTA and Myscontroller instructions like reboot and clear eeprom etc. But when I upload a sketch does that mean the bootloader inits the nrf first and then the uploaded sketch will just re-init the nrf again?
- Is there a way to debug the bootloader?
Have a good laugh if you will at these noob questions, but any help is appreciated :)
-
Hello,
First of all, thanks Tekka for the great MYScontroller!
I want to get started with the MYSbootloader but I can't get it to work. I've followed each step securely but I never "see" my arduino in MYScontroller after flashing the bootloader. Perhaps I misunderstand the theory behind the bootloader? Maybe the fuses are wrong, I don't know.
Perhaps someone can reply to the following;
- Can I just attach a radio module to an Arduino Nano as instructed on the site, clear the eeprom and then burn the bootloader using usbasp? (as instructed in this thread) Or do I need to upload the gateway sketch before burning the bootloader?
- I have a hard time understanding what the bootloader does, I think it enables low level nrf functionality for OTA and Myscontroller instructions like reboot and clear eeprom etc. But when I upload a sketch does that mean the bootloader inits the nrf first and then the uploaded sketch will just re-init the nrf again?
- Is there a way to debug the bootloader?
Have a good laugh if you will at these noob questions, but any help is appreciated :)
@cdr said:
- Can I just attach a radio module to an Arduino Nano as instructed on the site, clear the eeprom and then burn the bootloader using usbasp? (as instructed in this thread) Or do I need to upload the gateway sketch before burning the bootloader?
Yes, simply attach the radio and burn the bootloader with the correct fuse settings (see the fuses.txt file in the bootloader directory). If you intend to use MYSController, set AutoID to automatically assign IDs to the nodes.
- I have a hard time understanding what the bootloader does, I think it enables low level nrf functionality for OTA and Myscontroller instructions like reboot and clear eeprom etc. But when I upload a sketch does that mean the bootloader inits the nrf first and then the uploaded sketch will just re-init the nrf again?
Yes, that's correct. The bootloader is a small piece of code located at the end of the flash area that is (if the fuses are set accordingly) executed first upon rebooting and allows for low-level OTA updates.
- Is there a way to debug the bootloader?
Yes, there are several ways (e.g. visual with LED, serial output, or AVR DebugWire)...you may want to google these topics for further information..
Have a good laugh if you will at these noob questions, but any help is appreciated :)
no problem :)
-
Hi tekka,
Thanks for the response and clarification. I think I need more knowledge about fuses and bootloaders, it could be that the arduino clones are giving me sh&t.
Looking forward to my success and MYSloader 2.0 ofcourse!
Thanks again for all your work.
-
Hello, how to verify right bootloader is uploaded to arduino?
I'm using two Arduino Pro Mini 328 5.0V 16Mhz, one as ArduinoISP programmer and one as sensor node to upload bootloader and firmware.
I followed manual (http://forum.mysensors.org/topic/838/windows-gui-controller-for-mysensors/76) step by step.
I have tried MYSBootloader.hex coming from latest MYSController 0.1.2.280 and MYSBootloader.hex (1.1) from github with same results.
Upload log is here:
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM10 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0x06:m -Uhfuse:w:0xDA:m -Ulfuse:w:0xF7:m avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf" Using Port : COM10 Using Programmer : stk500v1 Overriding Baud Rate : 19200 AVR Part : ATmega328P Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PC2 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer Type : STK500 Description : Atmel STK500 Version 1.x firmware Hardware Version: 2 Firmware Version: 1.18 Topcard : Unknown Vtarget : 0.0 V Varef : 0.0 V Oscillator : Off SCK period : 0.1 us avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.05s avrdude: Device signature = 0x1e950f avrdude: erasing chip avrdude: reading input file "0x3F" avrdude: writing lock (1 bytes): Writing | ################################################## | 100% 0.03s avrdude: 1 bytes of lock written avrdude: verifying lock memory against 0x3F: avrdude: load data lock data from input file 0x3F: avrdude: input file 0x3F contains 1 bytes avrdude: reading on-chip lock data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 1 bytes of lock verified avrdude: reading input file "0x06" avrdude: writing efuse (1 bytes): Writing | ################################################## | 100% 0.02s avrdude: 1 bytes of efuse written avrdude: verifying efuse memory against 0x06: avrdude: load data efuse data from input file 0x06: avrdude: input file 0x06 contains 1 bytes avrdude: reading on-chip efuse data: Reading | ################################################## | 100% 0.01s avrdude: verifying ... avrdude: 1 bytes of efuse verified avrdude: reading input file "0xDA" avrdude: writing hfuse (1 bytes): Writing | ################################################## | 100% 0.03s avrdude: 1 bytes of hfuse written avrdude: verifying hfuse memory against 0xDA: avrdude: load data hfuse data from input file 0xDA: avrdude: input file 0xDA contains 1 bytes avrdude: reading on-chip hfuse data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 1 bytes of hfuse verified avrdude: reading input file "0xF7" avrdude: writing lfuse (1 bytes): C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM10 -b19200 -Uflash:w:C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex:i -Ulock:w:0x0F:m avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Writing | ################################################## | 100% 0.02s avrdude: 1 bytes of lfuse written avrdude: verifying lfuse memory against 0xF7: avrdude: load data lfuse data from input file 0xF7: avrdude: input file 0xF7 contains 1 bytes avrdude: reading on-chip lfuse data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 1 bytes of lfuse verified avrdude done. Thank you. Wunsch System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf" Using Port : COM10 Using Programmer : stk500v1 Overriding Baud Rate : 19200 AVR Part : ATmega328P Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PC2 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer Type : STK500 Description : Atmel STK500 Version 1.x firmware Hardware Version: 2 Firmware Version: 1.18 Topcard : Unknown Vtarget : 0.0 V Varef : 0.0 V Oscillator : Off SCK period : 0.1 us avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.06s avrdude: Device signature = 0x1e950f avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed To disable this feature, specify the -D option. avrdude: erasing chip avrdude: reading input file "C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex" avrdude: writing flash (32722 bytes): Writing | ################################################## | 100% -0.00s avrdude: 32722 bytes of flash written avrdude: verifying flash memory against C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex: avrdude: load data flash data from input file C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex: avrdude: input file C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex contains 32722 bytes avrdude: reading on-chip flash data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 32722 bytes of flash verified avrdude: reading input file "0x0F" avrdude: writing lock (1 bytes): Writing | ################################################## | 100% 0.05s avrdude: 1 bytes of lock written avrdude: verifying lock memory against 0x0F: avrdude: load data lock data from input file 0x0F: avrdude: input file 0x0F contains 1 bytes avrdude: reading on-chip lock data: Reading | ################################################## | 100% 0.01s avrdude: verifying ... avrdude: 1 bytes of lock verified avrdude done. Thank you.Fuses looks like right:
avrdude: Device signature = 0x1e950f avrdude: safemode: lfuse reads as F7 avrdude: safemode: hfuse reads as DA avrdude: safemode: efuse reads as 6MYSController log after node with new bootloader start:
14.06.2015 10:14:46 STARTUP Initialize message logging 14.06.2015 10:14:46 STARTUP MYSController 0.1.2.280 14.06.2015 10:14:46 STARTUP FPC 2.6.4 / Lazarus 1.4 14.06.2015 10:14:46 STARTUP still under development :) tekka 2015 14.06.2015 10:14:46 STARTUP Load INI file... 14.06.2015 10:14:46 STARTUP INI version 0.1.2.280 14.06.2015 10:14:46 INFO *** Logging START *** 14.06.2015 10:14:46 VERSION MYSController 0.1.2.280 14.06.2015 10:14:46 STARTUP INI file loaded 14.06.2015 10:14:46 STARTUP Loading FW repository... 14.06.2015 10:14:46 REPO FW "Blink" loaded. t=10, v=1, blocks=72, crc=0xD098 14.06.2015 10:14:46 REPO FW "TimeReporter" loaded. t=20, v=1, blocks=840, crc=0x4AC5 14.06.2015 10:14:46 REPO FW repository loaded. Items=2 14.06.2015 10:14:46 STARTUP Initialize message types 14.06.2015 10:14:46 NODE New node discovered, node id=0 14.06.2015 10:14:46 NODE New node discovered, node id=255 14.06.2015 10:14:49 INFO Connected to 192.168.0.1:12345 14.06.2015 10:14:59 UPDATE 4295098648 14.06.2015 10:21:26 CHILD New child discovered, node id=0, child id=0 14.06.2015 10:21:26 RX 0;0;3;0;9;read: 255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0: 14.06.2015 10:21:26 RX 0;0;3;0;9;send: 0-0-255-255 s=255,c=3,t=8,pt=1,l=1,sg=0,st=bc:0 14.06.2015 10:21:28 RX 0;0;3;0;9;read: 3-3-255 s=255,c=3,t=7,pt=0,l=0,sg=0: 14.06.2015 10:21:28 RX 0;0;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=ok:0 14.06.2015 10:21:30 RX 0;0;3;0;9;read: 3-3-0 s=255,c=3,t=6,pt=1,l=1,sg=0:0 14.06.2015 10:21:30 NODE New node discovered, node id=3 14.06.2015 10:21:30 CHILD New child discovered, node id=3, child id=internal 14.06.2015 10:21:30 TX 3;255;3;0;6;M 14.06.2015 10:21:30 RX 3;255;3;0;6;0 14.06.2015 10:21:30 RX 0;0;3;0;9;send: 0-0-3-3 s=255,c=3,t=6,pt=0,l=1,sg=0,st=ok:M 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=255,c=3,t=11,pt=0,l=7,sg=0:Balcony 14.06.2015 10:21:32 RX 3;255;3;0;11;Balcony 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=255,c=3,t=12,pt=0,l=3,sg=0:1.0 14.06.2015 10:21:32 RX 3;255;3;0;12;1.0 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=1,c=0,t=16,pt=0,l=20,sg=0:Photoconductive Cel 14.06.2015 10:21:32 CHILD New child discovered, node id=3, child id=1 14.06.2015 10:21:32 DEBUG Update child id=1, type=LIGHT_LEVEL 14.06.2015 10:21:32 RX 3;1;0;0;16;Photoconductive Cell 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=2,c=0,t=6,pt=0,l=3,sg=0:ds0 14.06.2015 10:21:32 CHILD New child discovered, node id=3, child id=2 14.06.2015 10:21:32 DEBUG Update child id=2, type=TEMP 14.06.2015 10:21:32 RX 3;2;0;0;6;ds0 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=3,c=0,t=6,pt=0,l=3,sg=0:ds1 14.06.2015 10:21:32 CHILD New child discovered, node id=3, child id=3 14.06.2015 10:21:32 DEBUG Update child id=3, type=TEMP 14.06.2015 10:21:32 RX 3;3;0;0;6;ds1 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=4,c=0,t=6,pt=0,l=3,sg=0:ds2 14.06.2015 10:21:32 CHILD New child discovered, node id=3, child id=4 14.06.2015 10:21:32 DEBUG Update child id=4, type=TEMP 14.06.2015 10:21:32 RX 3;4;0;0;6;ds2 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=5,c=0,t=6,pt=0,l=3,sg=0:ds3 14.06.2015 10:21:32 CHILD New child discovered, node id=3, child id=5 14.06.2015 10:21:32 DEBUG Update child id=5, type=TEMP 14.06.2015 10:21:32 RX 3;5;0;0;6;ds3 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=6,c=0,t=6,pt=0,l=3,sg=0:ds4 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=6 14.06.2015 10:21:33 DEBUG Update child id=6, type=TEMP 14.06.2015 10:21:33 RX 3;6;0;0;6;ds4 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=7,c=0,t=6,pt=0,l=3,sg=0:ds5 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=7 14.06.2015 10:21:33 DEBUG Update child id=7, type=TEMP 14.06.2015 10:21:33 RX 3;7;0;0;6;ds5 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=8,c=0,t=6,pt=0,l=3,sg=0:ds6 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=8 14.06.2015 10:21:33 DEBUG Update child id=8, type=TEMP 14.06.2015 10:21:33 RX 3;8;0;0;6;ds6 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=9,c=0,t=6,pt=0,l=3,sg=0:ds7 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=9 14.06.2015 10:21:33 DEBUG Update child id=9, type=TEMP 14.06.2015 10:21:33 RX 3;9;0;0;6;ds7 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=10,c=0,t=6,pt=0,l=3,sg=0:ds8 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=10 14.06.2015 10:21:33 DEBUG Update child id=10, type=TEMP 14.06.2015 10:21:33 RX 3;10;0;0;6;ds8 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=11,c=0,t=6,pt=0,l=3,sg=0:ds9 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=11 14.06.2015 10:21:33 DEBUG Update child id=11, type=TEMP 14.06.2015 10:21:33 RX 3;11;0;0;6;ds9 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=1,c=1,t=23,pt=2,l=2,sg=0:49 14.06.2015 10:21:33 RX 3;1;1;0;23;49 14.06.2015 10:21:36 RX 0;0;3;0;9;read: 3-3-0 s=3,c=1,t=0,pt=7,l=5,sg=0:26.5625 14.06.2015 10:21:36 RX 3;3;1;0;0;26.5625 14.06.2015 10:21:37 RX 0;0;3;0;9;read: 3-3-0 s=1,c=1,t=23,pt=2,l=2,sg=0:49 14.06.2015 10:21:37 RX 3;1;1;0;23;49Node successfully start and connecting to gateway with new bootloader, but then I issue reboot command in MYSController, node hangs up completely, even reset button isn't working. Only power off, then power on helps. Assign firmware isn't working also (nothing happens).
-
Hello, how to verify right bootloader is uploaded to arduino?
I'm using two Arduino Pro Mini 328 5.0V 16Mhz, one as ArduinoISP programmer and one as sensor node to upload bootloader and firmware.
I followed manual (http://forum.mysensors.org/topic/838/windows-gui-controller-for-mysensors/76) step by step.
I have tried MYSBootloader.hex coming from latest MYSController 0.1.2.280 and MYSBootloader.hex (1.1) from github with same results.
Upload log is here:
C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM10 -b19200 -e -Ulock:w:0x3F:m -Uefuse:w:0x06:m -Uhfuse:w:0xDA:m -Ulfuse:w:0xF7:m avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Wunsch System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf" Using Port : COM10 Using Programmer : stk500v1 Overriding Baud Rate : 19200 AVR Part : ATmega328P Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PC2 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer Type : STK500 Description : Atmel STK500 Version 1.x firmware Hardware Version: 2 Firmware Version: 1.18 Topcard : Unknown Vtarget : 0.0 V Varef : 0.0 V Oscillator : Off SCK period : 0.1 us avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.05s avrdude: Device signature = 0x1e950f avrdude: erasing chip avrdude: reading input file "0x3F" avrdude: writing lock (1 bytes): Writing | ################################################## | 100% 0.03s avrdude: 1 bytes of lock written avrdude: verifying lock memory against 0x3F: avrdude: load data lock data from input file 0x3F: avrdude: input file 0x3F contains 1 bytes avrdude: reading on-chip lock data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 1 bytes of lock verified avrdude: reading input file "0x06" avrdude: writing efuse (1 bytes): Writing | ################################################## | 100% 0.02s avrdude: 1 bytes of efuse written avrdude: verifying efuse memory against 0x06: avrdude: load data efuse data from input file 0x06: avrdude: input file 0x06 contains 1 bytes avrdude: reading on-chip efuse data: Reading | ################################################## | 100% 0.01s avrdude: verifying ... avrdude: 1 bytes of efuse verified avrdude: reading input file "0xDA" avrdude: writing hfuse (1 bytes): Writing | ################################################## | 100% 0.03s avrdude: 1 bytes of hfuse written avrdude: verifying hfuse memory against 0xDA: avrdude: load data hfuse data from input file 0xDA: avrdude: input file 0xDA contains 1 bytes avrdude: reading on-chip hfuse data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 1 bytes of hfuse verified avrdude: reading input file "0xF7" avrdude: writing lfuse (1 bytes): C:\Program Files (x86)\Arduino\hardware\tools\avr/bin/avrdude -CC:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf -v -patmega328p -cstk500v1 -PCOM10 -b19200 -Uflash:w:C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex:i -Ulock:w:0x0F:m avrdude: Version 6.0.1, compiled on Apr 15 2015 at 19:59:58 Copyright (c) 2000-2005 Brian Dean, http://www.bdmicro.com/ Copyright (c) 2007-2009 Joerg Writing | ################################################## | 100% 0.02s avrdude: 1 bytes of lfuse written avrdude: verifying lfuse memory against 0xF7: avrdude: load data lfuse data from input file 0xF7: avrdude: input file 0xF7 contains 1 bytes avrdude: reading on-chip lfuse data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 1 bytes of lfuse verified avrdude done. Thank you. Wunsch System wide configuration file is "C:\Program Files (x86)\Arduino\hardware\tools\avr/etc/avrdude.conf" Using Port : COM10 Using Programmer : stk500v1 Overriding Baud Rate : 19200 AVR Part : ATmega328P Chip Erase delay : 9000 us PAGEL : PD7 BS2 : PC2 RESET disposition : dedicated RETRY pulse : SCK serial program mode : yes parallel program mode : yes Timeout : 200 StabDelay : 100 CmdexeDelay : 25 SyncLoops : 32 ByteDelay : 0 PollIndex : 3 PollValue : 0x53 Memory Detail : Block Poll Page Polled Memory Type Mode Delay Size Indx Paged Size Size #Pages MinW MaxW ReadBack ----------- ---- ----- ----- ---- ------ ------ ---- ------ ----- ----- --------- eeprom 65 20 4 0 no 1024 4 0 3600 3600 0xff 0xff flash 65 6 128 0 yes 32768 128 256 4500 4500 0xff 0xff lfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 hfuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 efuse 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 lock 0 0 0 0 no 1 0 0 4500 4500 0x00 0x00 calibration 0 0 0 0 no 1 0 0 0 0 0x00 0x00 signature 0 0 0 0 no 3 0 0 0 0 0x00 0x00 Programmer Type : STK500 Description : Atmel STK500 Version 1.x firmware Hardware Version: 2 Firmware Version: 1.18 Topcard : Unknown Vtarget : 0.0 V Varef : 0.0 V Oscillator : Off SCK period : 0.1 us avrdude: AVR device initialized and ready to accept instructions Reading | ################################################## | 100% 0.06s avrdude: Device signature = 0x1e950f avrdude: NOTE: "flash" memory has been specified, an erase cycle will be performed To disable this feature, specify the -D option. avrdude: erasing chip avrdude: reading input file "C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex" avrdude: writing flash (32722 bytes): Writing | ################################################## | 100% -0.00s avrdude: 32722 bytes of flash written avrdude: verifying flash memory against C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex: avrdude: load data flash data from input file C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex: avrdude: input file C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex contains 32722 bytes avrdude: reading on-chip flash data: Reading | ################################################## | 100% 0.02s avrdude: verifying ... avrdude: 32722 bytes of flash verified avrdude: reading input file "0x0F" avrdude: writing lock (1 bytes): Writing | ################################################## | 100% 0.05s avrdude: 1 bytes of lock written avrdude: verifying lock memory against 0x0F: avrdude: load data lock data from input file 0x0F: avrdude: input file 0x0F contains 1 bytes avrdude: reading on-chip lock data: Reading | ################################################## | 100% 0.01s avrdude: verifying ... avrdude: 1 bytes of lock verified avrdude done. Thank you.Fuses looks like right:
avrdude: Device signature = 0x1e950f avrdude: safemode: lfuse reads as F7 avrdude: safemode: hfuse reads as DA avrdude: safemode: efuse reads as 6MYSController log after node with new bootloader start:
14.06.2015 10:14:46 STARTUP Initialize message logging 14.06.2015 10:14:46 STARTUP MYSController 0.1.2.280 14.06.2015 10:14:46 STARTUP FPC 2.6.4 / Lazarus 1.4 14.06.2015 10:14:46 STARTUP still under development :) tekka 2015 14.06.2015 10:14:46 STARTUP Load INI file... 14.06.2015 10:14:46 STARTUP INI version 0.1.2.280 14.06.2015 10:14:46 INFO *** Logging START *** 14.06.2015 10:14:46 VERSION MYSController 0.1.2.280 14.06.2015 10:14:46 STARTUP INI file loaded 14.06.2015 10:14:46 STARTUP Loading FW repository... 14.06.2015 10:14:46 REPO FW "Blink" loaded. t=10, v=1, blocks=72, crc=0xD098 14.06.2015 10:14:46 REPO FW "TimeReporter" loaded. t=20, v=1, blocks=840, crc=0x4AC5 14.06.2015 10:14:46 REPO FW repository loaded. Items=2 14.06.2015 10:14:46 STARTUP Initialize message types 14.06.2015 10:14:46 NODE New node discovered, node id=0 14.06.2015 10:14:46 NODE New node discovered, node id=255 14.06.2015 10:14:49 INFO Connected to 192.168.0.1:12345 14.06.2015 10:14:59 UPDATE 4295098648 14.06.2015 10:21:26 CHILD New child discovered, node id=0, child id=0 14.06.2015 10:21:26 RX 0;0;3;0;9;read: 255-255-255 s=255,c=3,t=7,pt=0,l=0,sg=0: 14.06.2015 10:21:26 RX 0;0;3;0;9;send: 0-0-255-255 s=255,c=3,t=8,pt=1,l=1,sg=0,st=bc:0 14.06.2015 10:21:28 RX 0;0;3;0;9;read: 3-3-255 s=255,c=3,t=7,pt=0,l=0,sg=0: 14.06.2015 10:21:28 RX 0;0;3;0;9;send: 0-0-3-3 s=255,c=3,t=8,pt=1,l=1,sg=0,st=ok:0 14.06.2015 10:21:30 RX 0;0;3;0;9;read: 3-3-0 s=255,c=3,t=6,pt=1,l=1,sg=0:0 14.06.2015 10:21:30 NODE New node discovered, node id=3 14.06.2015 10:21:30 CHILD New child discovered, node id=3, child id=internal 14.06.2015 10:21:30 TX 3;255;3;0;6;M 14.06.2015 10:21:30 RX 3;255;3;0;6;0 14.06.2015 10:21:30 RX 0;0;3;0;9;send: 0-0-3-3 s=255,c=3,t=6,pt=0,l=1,sg=0,st=ok:M 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=255,c=3,t=11,pt=0,l=7,sg=0:Balcony 14.06.2015 10:21:32 RX 3;255;3;0;11;Balcony 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=255,c=3,t=12,pt=0,l=3,sg=0:1.0 14.06.2015 10:21:32 RX 3;255;3;0;12;1.0 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=1,c=0,t=16,pt=0,l=20,sg=0:Photoconductive Cel 14.06.2015 10:21:32 CHILD New child discovered, node id=3, child id=1 14.06.2015 10:21:32 DEBUG Update child id=1, type=LIGHT_LEVEL 14.06.2015 10:21:32 RX 3;1;0;0;16;Photoconductive Cell 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=2,c=0,t=6,pt=0,l=3,sg=0:ds0 14.06.2015 10:21:32 CHILD New child discovered, node id=3, child id=2 14.06.2015 10:21:32 DEBUG Update child id=2, type=TEMP 14.06.2015 10:21:32 RX 3;2;0;0;6;ds0 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=3,c=0,t=6,pt=0,l=3,sg=0:ds1 14.06.2015 10:21:32 CHILD New child discovered, node id=3, child id=3 14.06.2015 10:21:32 DEBUG Update child id=3, type=TEMP 14.06.2015 10:21:32 RX 3;3;0;0;6;ds1 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=4,c=0,t=6,pt=0,l=3,sg=0:ds2 14.06.2015 10:21:32 CHILD New child discovered, node id=3, child id=4 14.06.2015 10:21:32 DEBUG Update child id=4, type=TEMP 14.06.2015 10:21:32 RX 3;4;0;0;6;ds2 14.06.2015 10:21:32 RX 0;0;3;0;9;read: 3-3-0 s=5,c=0,t=6,pt=0,l=3,sg=0:ds3 14.06.2015 10:21:32 CHILD New child discovered, node id=3, child id=5 14.06.2015 10:21:32 DEBUG Update child id=5, type=TEMP 14.06.2015 10:21:32 RX 3;5;0;0;6;ds3 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=6,c=0,t=6,pt=0,l=3,sg=0:ds4 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=6 14.06.2015 10:21:33 DEBUG Update child id=6, type=TEMP 14.06.2015 10:21:33 RX 3;6;0;0;6;ds4 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=7,c=0,t=6,pt=0,l=3,sg=0:ds5 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=7 14.06.2015 10:21:33 DEBUG Update child id=7, type=TEMP 14.06.2015 10:21:33 RX 3;7;0;0;6;ds5 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=8,c=0,t=6,pt=0,l=3,sg=0:ds6 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=8 14.06.2015 10:21:33 DEBUG Update child id=8, type=TEMP 14.06.2015 10:21:33 RX 3;8;0;0;6;ds6 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=9,c=0,t=6,pt=0,l=3,sg=0:ds7 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=9 14.06.2015 10:21:33 DEBUG Update child id=9, type=TEMP 14.06.2015 10:21:33 RX 3;9;0;0;6;ds7 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=10,c=0,t=6,pt=0,l=3,sg=0:ds8 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=10 14.06.2015 10:21:33 DEBUG Update child id=10, type=TEMP 14.06.2015 10:21:33 RX 3;10;0;0;6;ds8 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=11,c=0,t=6,pt=0,l=3,sg=0:ds9 14.06.2015 10:21:33 CHILD New child discovered, node id=3, child id=11 14.06.2015 10:21:33 DEBUG Update child id=11, type=TEMP 14.06.2015 10:21:33 RX 3;11;0;0;6;ds9 14.06.2015 10:21:33 RX 0;0;3;0;9;read: 3-3-0 s=1,c=1,t=23,pt=2,l=2,sg=0:49 14.06.2015 10:21:33 RX 3;1;1;0;23;49 14.06.2015 10:21:36 RX 0;0;3;0;9;read: 3-3-0 s=3,c=1,t=0,pt=7,l=5,sg=0:26.5625 14.06.2015 10:21:36 RX 3;3;1;0;0;26.5625 14.06.2015 10:21:37 RX 0;0;3;0;9;read: 3-3-0 s=1,c=1,t=23,pt=2,l=2,sg=0:49 14.06.2015 10:21:37 RX 3;1;1;0;23;49Node successfully start and connecting to gateway with new bootloader, but then I issue reboot command in MYSController, node hangs up completely, even reset button isn't working. Only power off, then power on helps. Assign firmware isn't working also (nothing happens).
@robosensor said:
The MYSBootloader.hex file you are flashing has a wrong file size (=32722 bytes) in your post:
avrdude: reading input file "C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex"
avrdude: writing flash (32722 bytes):MYSBootloader 1.1 should have ~2kb
From your log I assume, that you flashed the sketch instead of the bootloader.
Please pay attention to steps 3 and 13 from the step-by-step manual.
-
@robosensor said:
The MYSBootloader.hex file you are flashing has a wrong file size (=32722 bytes) in your post:
avrdude: reading input file "C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex"
avrdude: writing flash (32722 bytes):MYSBootloader 1.1 should have ~2kb
From your log I assume, that you flashed the sketch instead of the bootloader.
Please pay attention to steps 3 and 13 from the step-by-step manual.
@tekka I have noticed this, but I thought that this is due to the peculiarities of bootloader upload process (upper end of memory).
Directory of C:\Program Files (x86)\Arduino\hardware\arduino\avr\bootloaders\MySensors 14.06.2015 00:08 <DIR> . 14.06.2015 00:08 <DIR> .. 14.06.2015 09:59 5 548 MYSBootloader.hex 1 File(s) 5 548 bytesFor sketch size is too big (32722 bytes), real sketch size is 19928 bytes.
In any case, thanks for the help, I'll try to figure it out or try to download it manually using avrdude.
-
@robosensor said:
The MYSBootloader.hex file you are flashing has a wrong file size (=32722 bytes) in your post:
avrdude: reading input file "C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex"
avrdude: writing flash (32722 bytes):MYSBootloader 1.1 should have ~2kb
From your log I assume, that you flashed the sketch instead of the bootloader.
Please pay attention to steps 3 and 13 from the step-by-step manual.
@tekka
Hello, could you help me with uploading bootloader. I stuck on Step 5 step-by-step manual and get errorArduino: 1.6.4 (Mac OS X), Плата"ATmega328 16Mhz MYSBootloader" avrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp'I`m using 16Mhz pro mini clone and FTDI232
-
@robosensor said:
The MYSBootloader.hex file you are flashing has a wrong file size (=32722 bytes) in your post:
avrdude: reading input file "C:\Program Files (x86)\Arduino\hardware\arduino\avr/bootloaders/MySensors/MYSBootloader.hex"
avrdude: writing flash (32722 bytes):MYSBootloader 1.1 should have ~2kb
From your log I assume, that you flashed the sketch instead of the bootloader.
Please pay attention to steps 3 and 13 from the step-by-step manual.
@tekka I have googled for [avrdude bootloader "bytes of flash written"] and found many answers about big upload size for bootloader (> 32000 bytes). It seems that big size is the way it should be.
I have solved problem. I must power up node with newly burned bootloader but without sensor node firmware and upload firmware using MYSController
Incorrect way is: burn bootloader, burn sensor node firmware, powerup sensor.
Thank you for great software! :)
-
@tekka
Hello, could you help me with uploading bootloader. I stuck on Step 5 step-by-step manual and get errorArduino: 1.6.4 (Mac OS X), Плата"ATmega328 16Mhz MYSBootloader" avrdude: error: could not find USB device with vid=0x16c0 pid=0x5dc vendor='www.fischl.de' product='USBasp'I`m using 16Mhz pro mini clone and FTDI232
@NewFolk You'll need e.g. USBasp or ArduinoISP to flash a new bootloader. If you have a spare Arduino and FTDI232, follow this tutorial to program a new bootloader using the Arduino IDE.
Good luck! :)
-
@tekka I have googled for [avrdude bootloader "bytes of flash written"] and found many answers about big upload size for bootloader (> 32000 bytes). It seems that big size is the way it should be.
I have solved problem. I must power up node with newly burned bootloader but without sensor node firmware and upload firmware using MYSController
Incorrect way is: burn bootloader, burn sensor node firmware, powerup sensor.
Thank you for great software! :)
-
Hi - I need some clarification.
I have mysensors connected to my vera lite (working)
I bought 3 of the sensebender micro boards and got them talking with the gateway (working)
loaded up myscontroller it's running and see the gateway and all 3 nodes.
yay!
the issue is the sensors are reporting in C instead of F, so i modified the sketch, compiled it, found the hex file (66k)
and moved it to the correct folder per instructions.
when i says "assign FW" nothing happens.
am i understanding correctly that "firmware" is just a compiled sketch?
if i need to make changes to my device, is this the correct way?
modify sketch - > compile -> move hex to myscontroller folder - > edit firmware_config file -> right click assign fw -> pick new firmware
is that correct?
nothing is happening for me when i do that..
please clarify.
thanks!edit: file size says 66k in win7
but in the compiler it says
Sketch uses 23,724 bytes (77%) of program storage space. Maximum is 30,720 bytes.
Global variables use 822 bytes (40%) of dynamic memory, leaving 1,226 bytes for local variables. Maximum is 2,048 bytes.the file i grabbed was SensebenderMicro.cpp.hex
-
Hi - I need some clarification.
I have mysensors connected to my vera lite (working)
I bought 3 of the sensebender micro boards and got them talking with the gateway (working)
loaded up myscontroller it's running and see the gateway and all 3 nodes.
yay!
the issue is the sensors are reporting in C instead of F, so i modified the sketch, compiled it, found the hex file (66k)
and moved it to the correct folder per instructions.
when i says "assign FW" nothing happens.
am i understanding correctly that "firmware" is just a compiled sketch?
if i need to make changes to my device, is this the correct way?
modify sketch - > compile -> move hex to myscontroller folder - > edit firmware_config file -> right click assign fw -> pick new firmware
is that correct?
nothing is happening for me when i do that..
please clarify.
thanks!edit: file size says 66k in win7
but in the compiler it says
Sketch uses 23,724 bytes (77%) of program storage space. Maximum is 30,720 bytes.
Global variables use 822 bytes (40%) of dynamic memory, leaving 1,226 bytes for local variables. Maximum is 2,048 bytes.the file i grabbed was SensebenderMicro.cpp.hex
@mvader said:
when i says "assign FW" nothing happens.
am i understanding correctly that "firmware" is just a compiled sketch?
if i need to make changes to my device, is this the correct way?
modify sketch - > compile -> move hex to myscontroller folder - > edit firmware_config file -> right click assign fw -> pick new firmware
is that correct?
nothing is happening for me when i do that..For OTA updates you need to burn the MYSBootloader (instructions here). Once done, assign FW, reboot node and wait until FW is transferred.
edit: file size says 66k in win7
but in the compiler it says
Sketch uses 23,724 bytes (77%) of program storage space. Maximum is 30,720 bytes.Yup, because the .hex file is not binary but a hex (hence the suffix) format with headers and checksums.