💬 FOTA (Wireless Programming)
-
i don't see any problem if you connect correctly the spi bus. it depends what's a jmodule??
in case i did this, perhaps smaller..
https://www.openhardware.io/view/18/OTA-and-Authentication-Evaluation-Board -
There is an ambiguity in documetation of MYSBootloader:
- On https://www.mysensors.org/download/sensor_api_20#configuration there is a Note: "You can still have OTA FW updates without external flash but it requires the MYSBootloader and disabled MY_OTA_FIRMWARE_FEATURE"
- Above on https://www.mysensors.org/about/ota#enabling-ota-in-your-sketch there is written: "To enable OTA in your sketch, you need to add #define MY_OTA_FIRMWARE_FEATURE"
So, in the case of MYSBootloader (no external flash), what is correct (I suppose 2)?
Two additional questions:
Where is located MYSBootloader for MySensors 2.0?
Is it usable with 8MHz internal clock config?Thanks for answer(s)
-
There is an ambiguity in documetation of MYSBootloader:
- On https://www.mysensors.org/download/sensor_api_20#configuration there is a Note: "You can still have OTA FW updates without external flash but it requires the MYSBootloader and disabled MY_OTA_FIRMWARE_FEATURE"
- Above on https://www.mysensors.org/about/ota#enabling-ota-in-your-sketch there is written: "To enable OTA in your sketch, you need to add #define MY_OTA_FIRMWARE_FEATURE"
So, in the case of MYSBootloader (no external flash), what is correct (I suppose 2)?
Two additional questions:
Where is located MYSBootloader for MySensors 2.0?
Is it usable with 8MHz internal clock config?Thanks for answer(s)
@tlustoch You need to enable MY_OTA_FIRMWARE_FEATURE only if you use DualOptiBoot.
With MYSBootloader, you don't need ;)I use MYSBootloader 1.3 pre-release with mysensors 2.0. You can find it here : https://forum.mysensors.org/topic/3453/mysbootloader-1-3-pre-release-myscontroller-1-0-0beta
And yes it usable with 8 MHZ internal clock config if you burn the bootloader with 8Mhz internal clock setting.
-
Short question from me: my mysensors network is set up with domoticz as a controller on a raspberry pi. I need to upgrade all my nodes to Version 2 of mysensors soon and want to enable wireless programming while I am at it. As far as I understand I do need to use MYSController to update a node, which seems to be a windows only program. Any way I can still use that with my linux based (raspi) network?
-
For OTA Update under Rpi i used this: http://www.virtualhere.com/
- just install it on the Pi, stop the controler software
wget http://www.virtualhere.com/sites/default/files/usbserver/vhusbdarmpi2vhusbdarmpi2 -> for Pi2 only (see homepage for other platforms)
sudo chmod +x ./vhusbdarmpi2- start the virtualhere server
sudo ./vhusbdarmpi2- install the client on your Windows System
- Mount the Com-Port
- start MYSControler
- do what you want to do
- stop client
now you have to reboot your rpi, stop virtualhere server its not enoth, cant mount device again. After restart everythinks works well.
Greetings
-
I can't figure out this step:
Go to Arduino Ide, in Board Manager, choose SensebenderMicro if you want to use DualOptiboot bootloader OTA. Or choose Arduino Mini pro MYSBootloader
I cant find any sensbender board when searching the boards manager, I also tried downloading the 2.0 directly but cant find any boards there either. How should I do this? -
I can't figure out this step:
Go to Arduino Ide, in Board Manager, choose SensebenderMicro if you want to use DualOptiboot bootloader OTA. Or choose Arduino Mini pro MYSBootloader
I cant find any sensbender board when searching the boards manager, I also tried downloading the 2.0 directly but cant find any boards there either. How should I do this? -
Thanks, but now I get this error in Arduino IDE when burning the bootloader:
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
***failed;
avrdude: WARNING: invalid value for unused bits in fuse "efuse", should be set to 1 according to datasheet
This behaviour is deprecated and will result in an error in future version
You probably want to use 0xfe instead of 0x06 (double check with your datasheet first).
avrdude: warning: cannot set sck period. please check for usbasp firmware update.
avrdude: warning: cannot set sck period. please check for usbasp firmware update.Is this still ok?
-
And this happens when I try to upoad a sketch to the board:
Sketch uses 16,796 bytes (54%) of program storage space. Maximum is 30,720 bytes.
Global variables use 739 bytes (36%) of dynamic memory, leaving 1,309 bytes for local variables. Maximum is 2,048 bytes.avrdude: stk500_paged_load(): (a) protocol error, expect=0x10, resp=0x90
avrdude: stk500_cmd(): protocol error
avr_read(): error reading address 0x0137
read operation not supported for memory "flash"
avrdude: failed to read all of flash memory, rc=-2
the selected serial port avrdude: failed to read all of flash memory, rc=-2
does not exist or your board is not connected -
Fellows, let me ask you about the procedure of switching controllers during OTA.
My sensors are connected to a serial gateway, which is operated by a controller.
In my case the controller is Domoticz server hosted by Raspberry Pi2.So if I want to initiate updating one of my nodes over the air then I need to... stop my current controller on my Raspberry Pi2 and... start a new gateway on a Windows machine with MYSControler, wait when all nodes will re-discover the new gateway and connect, and then use MYSControler to do all updates I need?
-
Fellows, let me ask you about the procedure of switching controllers during OTA.
My sensors are connected to a serial gateway, which is operated by a controller.
In my case the controller is Domoticz server hosted by Raspberry Pi2.So if I want to initiate updating one of my nodes over the air then I need to... stop my current controller on my Raspberry Pi2 and... start a new gateway on a Windows machine with MYSControler, wait when all nodes will re-discover the new gateway and connect, and then use MYSControler to do all updates I need?
@Alex-B-Goode Yes this is the Way. If you dont like to disconnect the Gateway from Pi you Can use my procedure was i wrote some posts before. If the nodes discovered One time you dont need to wait again. MYScontroller save the discovered nodes.
-
is it possible or planned to do a OTA update over RS485 (with external flash using DualOptiBoot) ?
-
Has any attempted to use a usbip client on Windows to use with MYSController and access the GW?
usbip is another technology for sharing USB ports over TCP/IP networks, similar to virtualhere. I am using it to access a USB device connected to a rPi2 from a linux box.
-
Is the sensbender micro already preloaded with the Dualoptiboot bootloader?
-
-
I'd like to try this on my Pro Mini clone, but unfortunately I find the instructions very confusing.
What are fuses and why do I need to change them? To what do I need to change them?
I cannot see "Arduino Mini pro MYSBootloader" in Boards.I am using Mysensors 2.1.
-
I'd like to try this on my Pro Mini clone, but unfortunately I find the instructions very confusing.
What are fuses and why do I need to change them? To what do I need to change them?
I cannot see "Arduino Mini pro MYSBootloader" in Boards.I am using Mysensors 2.1.
@maghac - https://forum.mysensors.org/topic/3018/tutorial-how-to-burn-1mhz-8mhz-bootloader-using-arduino-ide-1-6-5-r5 here is a good tutorial how to burn a bootloader. You need to select a bootloader you want to use. They all have different properties. The fuses are burned when you burn the bootloader. The wirelsess programming tutorial is found here: https://www.mysensors.org/about/ota
-
The suggested bootloader programmers in the article work with all Arduino Mini pro, UNO, MEGA and so on? I have searched around Aliexpress for "USBASP" but it seems they support only windows 7 and the common description is " USBASP USBISP AVR Programmer USB ATMEGA8 ATMEGA128" so it's kind of confusing for me