background image

 

Revision: 1.18 

CrossFire IX – Freely Programmable - Data Logger Edition - 
Programming Manual 

2018-12-21 

 

 

 

 

17

 

 

16.4.

 

The FOTA (Firmware Over The Air) example 

The FOTA example shows how to perform firmware upgrade using Wi-Fi. 

For security reasons, the FOTA firmware checks that the digital in 1 is high (port 9), otherwise the 
Wi-Fi chip will not be activated. 

The example sets up the Wi-Fi module as an access point and sets up a TCP server on the module. 
The firmware file received is sent over the USART to the IX main processor and is stored in the 
external SPI FLASH memory. After reboot the bootloader will read from the SPI flash memory and 
perform the actual firmware upgrade. 

FOTA uses the first 1.5MB of SPI FLASH memory to temporarily store the firmware file. If the SPI 
FLASH memory is used for other things as well, you must reserve the first 1.5MB if FOTA is going 
to be used. 

When starting the example the CrossFire IX will set up an access point with name 
CrossFireIX_001. Use password “password001” to connect. The CrossFire IX will use IP address 
192.168.4.1 and will give the first connected unit IP address 192.168.4.2. 

The firmware package (*.fwp) is created with the CrossFire IX DLE Tool. This tool is only available 
as a binary. 

To download the firmware package, the tool CrossFire IX Wi-Fi Tool is used. It connects to the TCP 
server and transfers the firmware package. This tool is supplied with full source code and can be 
adapted by the OEM. The tool is written in C#/WPF in Visual Studio 2010. 

For performance reasons, the USE_OUTPUTS and USE_PWMI define are NOT set which means 
that output I/O is not available. 

The FOTA code is implemented in the file fota.c. 

17.

 

References 

CrossFire IX  - Technical manual.docx 

CrossFire IX - CANopen Slave Developers Guide.docx 

Содержание CrossFire IX

Страница 1: ...Revision 1 18 CrossFire IX Freely Programmable Data Logger Edition Programming Manual 2018 12 21 www crosscontrol com CrossFire IX Freely Programmable Data Logger Edition Programming Manual...

Страница 2: ...ossFire IX Data Logger API 7 11 Interrupts 7 12 Hardware resources 8 13 Testing 8 14 Tools 8 14 1 Upgrading the firmware of the CrossFire IX over Wi Fi 8 15 Functionality of the Data Logger Edition 10...

Страница 3: ...1 6 Added info about the examples CMM 2018 11 07 1 7 Minor changes regarding the Wi Fi module CMM 2018 11 09 1 8 Updated examples chapter CMM 2018 11 20 1 9 Name change to Programming Manual CMM 2018...

Страница 4: ...machine is used during special supervision Especially if the firmware written allows messages coming over Wi Fi to control outputs or to send CAN messages However note that even if outputs or CAN is...

Страница 5: ...ed Workbench For programming the Wi Fi slave processor several development environments are available The development environment recommended by CrossControl is the Arduino IDE The Arduino IDE can be...

Страница 6: ...ed in the Boards Manager In the menu under Tools Board make sure to select the NodeMCU 0 9 this is not exactly right but close enough To create a binary for CrossFire IX select Sketch Export compiled...

Страница 7: ...sion of the CrossFire IX Tool supporting upgrade of the Wi Fi processor The tool is available in the Tools CrossFire IX Tool DLE folder 9 Libraries To make it possible to use the data logger functions...

Страница 8: ...ST the function PerformUnitTest will be executed after system init In this function a number of test functions are called The test functions will use printf to give user feedback so it is important th...

Страница 9: ...Fi processor NodeMCU For the Wi Fi processor file you need to supply your own version number For the other binaries the version number is read from the binary file itself When all files are selected...

Страница 10: ...optional Erase the SPI FLASH used by FOTA the first 1 5MB by clicking Erase FLASH This will erase any information that is stored there already Browse for the fwp file by pressing the button Click Down...

Страница 11: ...possible to erase the complete FLASH at once Please note that writing to and erasing the external FLASH memory is a relatively slow operation Writing to the FLASH memory requires the memory to be eras...

Страница 12: ...d data to an IoT cloud service like ThingSpeak Set up a local webserver that can be used for administering or supervising the CrossFire IX Fetch data from internal or external web servers for instance...

Страница 13: ...should not be freed with WIFI_FreeLastMessage afterwards void WIFI_FreeLastMessage void Free the last message in the message queue Must be called after you have processed data returned by WIFI_GetMes...

Страница 14: ...hat IP address and port is correct To perform a firmware upgrade over CAN digital in 1 must be connected to VBAT at start up This will active 1000 kbit s CAN bit rate and the unit will accept firmware...

Страница 15: ...commercial use ThingSpeak is integrated with MATLAB making it possible to perform advanced data analysis The ThingSpeak example shows how to send data to the ThingSpeak IoT server The example sets up...

Страница 16: ...message in the memory but takes more FLASH memory for small messages Besides from the actual message data and id also a 32 bit counter a 32 bit millisecond timer and a checksum is stored for each mess...

Страница 17: ...is used for other things as well you must reserve the first 1 5MB if FOTA is going to be used When starting the example the CrossFire IX will set up an access point with name CrossFireIX_001 Use passw...

Страница 18: ...gramming Manual 2018 12 21 18 https support crosscontrol com https atollic com https www arduino cc en Main Software https www espressif com en products hardware esp wroom 02 overview https thingspeak...

Страница 19: ...in this handbook is supplied without any guarantees and can change without prior notification For CrossControl licensed software CrossControl grants you a license to under CrossControl intellectual p...

Отзывы: