From 08939124fb89f2a9597b3305cd85f5ff6c66731f Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Tue, 27 Dec 2022 18:42:22 -0600 Subject: [PATCH 1/4] Initial Commit - Portenta H7 OTA Tutorial Content Hotfix --- .../tutorials/over-the-air-update/content.md | 24 +++++-------------- 1 file changed, 6 insertions(+), 18 deletions(-) diff --git a/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md b/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md index 01bf078deb..163e6e3d3d 100644 --- a/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md +++ b/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md @@ -98,7 +98,11 @@ This script will light up the RGB LED with 3 different colors in sequence. This ![Exporting Binary for the Sketch](assets/binary_export.png) -With the binary file ready, you can now create the OTA file needed to complete the process. For this, you will need to have an extra tool which can be found at the following link. +With the binary file ready, you can now create the OTA file needed to complete the process. + +To continue, macOS or Linux environment is required. For Windows environment, it is possible to use virtualization software such as [Oracle VM Virtualbox](https://www.virtualbox.org/) using your preffered choice of compatible Linux distribution. If you're not familiar with Linux environments, [Ubuntu](https://ubuntu.com/) is one of many distributions that can help you explore Linux environment. + +Once you're ready, you will need to have a tool which can be found at the following link. ***Arduino IoT Cloud Library - Over-The-Air Tools: https://github.com/arduino-libraries/ArduinoIoTCloud/tree/master/extras/tools*** @@ -107,41 +111,25 @@ You will have to extract the library at a preferred location to be able to use t Copy the binary file into the library tool's folder ```cpp -// Mac/Linux cp OTA_Usage_Portenta.ino.PORTENTA_H7_M7.bin ~/Arduino/libraries/ArduinoIoTCloud/extras/tools/ - -// Windows -copy OTA_Usage_Portenta.ino.PORTENTA_H7_M7.bin /Documents/Arduino/libraries/ArduinoIoTCloud/extras/tools/ ``` Go inside that directory ```cpp -// Mac/Linux cd ~/Arduino/libraries/ArduinoIoTCloud/extras/tools - -// Windows -cd /Documents/Arduino/libraries/ArduinoIoTCloud/extras/tools ``` Encode your binary file into `OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss` ```cpp -// Mac/Linux ./lzss.py --encode OTA_Usage_Portenta.ino.PORTENTA_H7_M7.bin OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss - -// Windows -lzss.py --encode OTA_Usage_Portenta.ino.PORTENTA_H7_M7.bin OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss ``` Convert your encoded file into `.ota` format ```cpp -// Mac/Linux -./bin2ota.py [PORTENTA_H7_M7] OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss OTA_Usage_Portenta.ino.PORTENTA_H7_M7.ota - -// Windows -bin2ota.py [PORTENTA_H7_M7] OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss OTA_Usage_Portenta.ino.PORTENTA_H7_M7.ota +./bin2ota.py PORTENTA_H7_M7 OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss OTA_Usage_Portenta.ino.PORTENTA_H7_M7.ota ``` You can use `OTA_Usage_Portenta.ino.PORTENTA_H7_M7` as a sketch name for facilitated identification of the file. After this, you will have the `.ota` file of the sketch that you will use with the OTA process. From 40d440915d0eceebf1131151adddac6b12a72a0d Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Tue, 27 Dec 2022 18:46:36 -0600 Subject: [PATCH 2/4] Content minor update --- .../boards/portenta-h7/tutorials/over-the-air-update/content.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md b/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md index 163e6e3d3d..1ae9ab9941 100644 --- a/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md +++ b/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md @@ -100,7 +100,7 @@ This script will light up the RGB LED with 3 different colors in sequence. This With the binary file ready, you can now create the OTA file needed to complete the process. -To continue, macOS or Linux environment is required. For Windows environment, it is possible to use virtualization software such as [Oracle VM Virtualbox](https://www.virtualbox.org/) using your preffered choice of compatible Linux distribution. If you're not familiar with Linux environments, [Ubuntu](https://ubuntu.com/) is one of many distributions that can help you explore Linux environment. +To continue, macOS or Linux environment is required. For Windows environment, it is possible to use virtualization software such as [Oracle VM Virtualbox](https://www.virtualbox.org/) using your preferred choice of compatible Linux distribution. If you're not familiar with Linux environments, [Ubuntu](https://ubuntu.com/) is one of many distributions that can help you explore Linux environment. Once you're ready, you will need to have a tool which can be found at the following link. From cff950f4095d05fe28ec0808d4271598533bff0b Mon Sep 17 00:00:00 2001 From: TaddyHC Date: Tue, 27 Dec 2022 21:25:18 -0600 Subject: [PATCH 3/4] Content update --- .../portenta-h7/tutorials/over-the-air-update/content.md | 9 ++++++--- 1 file changed, 6 insertions(+), 3 deletions(-) diff --git a/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md b/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md index 1ae9ab9941..dfe4fafe7f 100644 --- a/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md +++ b/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md @@ -98,11 +98,11 @@ This script will light up the RGB LED with 3 different colors in sequence. This ![Exporting Binary for the Sketch](assets/binary_export.png) -With the binary file ready, you can now create the OTA file needed to complete the process. +With the binary file ready, you can now create the OTA file needed to enable Over-The-Air process. -To continue, macOS or Linux environment is required. For Windows environment, it is possible to use virtualization software such as [Oracle VM Virtualbox](https://www.virtualbox.org/) using your preferred choice of compatible Linux distribution. If you're not familiar with Linux environments, [Ubuntu](https://ubuntu.com/) is one of many distributions that can help you explore Linux environment. +To continue, macOS or Linux environment is required. For Windows environment, it is possible to use virtualization software such as [Oracle VM Virtualbox](https://www.virtualbox.org/) using your preferred choice of compatible Linux distribution. If you're not familiar with Linux environments, [Ubuntu](https://ubuntu.com/) is one of many distributions that can help you explore Linux environment with ease of access. -Once you're ready, you will need to have a tool which can be found at the following link. +Once you're comfortable with an environment, you will need a tool which can be found at the following link. ***Arduino IoT Cloud Library - Over-The-Air Tools: https://github.com/arduino-libraries/ArduinoIoTCloud/tree/master/extras/tools*** @@ -111,6 +111,7 @@ You will have to extract the library at a preferred location to be able to use t Copy the binary file into the library tool's folder ```cpp +// Exported binary format reference: sketch.bin cp OTA_Usage_Portenta.ino.PORTENTA_H7_M7.bin ~/Arduino/libraries/ArduinoIoTCloud/extras/tools/ ``` @@ -123,12 +124,14 @@ cd ~/Arduino/libraries/ArduinoIoTCloud/extras/tools Encode your binary file into `OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss` ```cpp +// Argument format: ./lzss.py --encode sketch.bin sketch.lzss ./lzss.py --encode OTA_Usage_Portenta.ino.PORTENTA_H7_M7.bin OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss ``` Convert your encoded file into `.ota` format ```cpp +// Argument format: ./bin2ota.py PORTENTA_H7_M7 sketch.lzss sketch.ota ./bin2ota.py PORTENTA_H7_M7 OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss OTA_Usage_Portenta.ino.PORTENTA_H7_M7.ota ``` From 7fda778a8648957a06256f4432a5a37e86bf06da Mon Sep 17 00:00:00 2001 From: marqdevx Date: Wed, 28 Dec 2022 10:31:11 +0100 Subject: [PATCH 4/4] Add OS requirement --- .../boards/portenta-h7/tutorials/over-the-air-update/content.md | 1 + 1 file changed, 1 insertion(+) diff --git a/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md b/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md index dfe4fafe7f..ef563101cb 100644 --- a/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md +++ b/content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md @@ -34,6 +34,7 @@ The goals of this tutorial are: ## Hardware and Software Needed - [Arduino Portenta H7](https://store.arduino.cc/portenta-h7) +- Operative System: Linux or MacOS system, this procedure is not 100% compatible on Windows. - Arduino IDE 1.8.10+ or Arduino Pro IDE 0.0.4+ - USB-C® type cable (either USB-A to USB-C® or USB-C® to USB-C®) - Arduino IoT Cloud and Arduino_Portenta_OTA libraries