Skip to content

Commit 553c439

Browse files
authored
Merge pull request #178 from arduino/jhansson-ard/pro-tutorial-QA
Small QA of pro tutorials [PC-900]
2 parents e0dfb60 + 4313fa9 commit 553c439

File tree

41 files changed

+412
-312
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

41 files changed

+412
-312
lines changed

content/hardware/03.nano/boards/nano-33-ble/tutorials/ble-python-api/ble-python-api.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -11,7 +11,7 @@ featuredImage: 'board'
1111

1212
![The Nano 33 BLE](assets/hero.png)
1313

14-
The [Nano 33 BLE board](https://store.arduino.cc/arduino-nano-33-ble-sense) board can be programmed using the popular **Python** programming language. More specifically, it supports [OpenMV's fork of MicroPython](https://github.com/openmv/micropython), where MicroPython is an implementation of the Python language, designed to run on microcontrollers. In this article, you will find a lot of sample scripts that will work directly with your Nano 33 BLE, such as general GPIO control, reading data from the IMU module and testing Bluetooth® Low Energy connection.
14+
The [Nano 33 BLE](https://store.arduino.cc/arduino-nano-33-ble-sense) board can be programmed using the popular **Python** programming language. More specifically, it supports [OpenMV's fork of MicroPython](https://github.com/openmv/micropython), where MicroPython is an implementation of the Python language, designed to run on microcontrollers. In this article, you will find a lot of sample scripts that will work directly with your Nano 33 BLE, such as general GPIO control, reading data from the IMU module and testing Bluetooth® Low Energy connection.
1515

1616
- If you want to read more about Arduino & Python, you can visit the [Python with Arduino](/learn/programming/arduino-and-python) article. Here you will find a lot of useful examples, such as how to use delays, interrupts, reading pins and more general functions.
1717

content/hardware/04.pro/boards/portenta-h7/tutorials/over-the-air-update/content.md

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -33,7 +33,7 @@ The goals of this tutorial are:
3333
- Use QSPI or SD card storage to load the firmware downloaded using the OTA feature.
3434

3535
## Hardware and Software Needed
36-
- Arduino Portenta H7 (https://store.arduino.cc/portenta-h7)
36+
- [Arduino Portenta H7](https://store.arduino.cc/portenta-h7)
3737
- Arduino IDE 1.8.10+ or Arduino Pro IDE 0.0.4+
3838
- USB-C type cable (either USB-A to USB-C or USB-C to USB-C)
3939
- Arduino IoT Cloud and Arduino_Portenta_OTA libraries
@@ -94,7 +94,7 @@ void loop()
9494
}
9595
```
9696
97-
This script will light up the RGB LED with 3 different colors in sequence. This code will need to be uploaded to the Arduino Portenta H7 firsthand. This is to verify the sketch compiles and is working correctly. After verifying this, in Arduino IDE, you will search for Sketch -> Export Compiled Binary.
97+
This script will light up the RGB LED with 3 different colors in sequence. This code will need to be uploaded to the Arduino Portenta H7 firsthand. This is to verify the sketch compiles and is working correctly. After verifying this, in Arduino IDE, you will search for **Sketch > Export Compiled Binary**.
9898
9999
![Exporting Binary for the Sketch](assets/binary_export.png)
100100
@@ -105,6 +105,7 @@ With the binary file created, we can now create the ota file needed to complete
105105
You will have to have to extract the library at a preferred location to be able to use the tools. Then you will need to run on the terminal following commands in sequence to be able to create the ota file.
106106
107107
Copy the binary file into the library tool's folder
108+
108109
```cpp
109110
// Mac/Linux
110111
cp OTA_Usage_Portenta.ino.PORTENTA_H7_M7.bin ~/Arduino/libraries/ArduinoIoTCloud/extras/tools/
@@ -114,6 +115,7 @@ copy OTA_Usage_Portenta.ino.PORTENTA_H7_M7.bin <userPath>/Documents/Arduino/libr
114115
```
115116

116117
Go inside that directory
118+
117119
```cpp
118120
// Mac/Linux
119121
cd ~/Arduino/libraries/ArduinoIoTCloud/extras/tools
@@ -123,6 +125,7 @@ cd <yourUserPath>/Documents/Arduino/libraries/ArduinoIoTCloud/extras/tools
123125
```
124126

125127
Encode your binary file into `OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss`
128+
126129
```cpp
127130
// Mac/Linux
128131
./lzss.py --encode OTA_Usage_Portenta.ino.PORTENTA_H7_M7.bin OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss
@@ -132,6 +135,7 @@ lzss.py --encode OTA_Usage_Portenta.ino.PORTENTA_H7_M7.bin OTA_Usage_Portenta.in
132135
```
133136

134137
Convert your encoded file into `.ota` format
138+
135139
```cpp
136140
// Mac/Linux
137141
./bin2ota.py [PORTENTA_H7_M7] OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss OTA_Usage_Portenta.ino.PORTENTA_H7_M7.ota
@@ -142,7 +146,7 @@ bin2ota.py [PORTENTA_H7_M7] OTA_Usage_Portenta.ino.PORTENTA_H7_M7.lzss OTA_Usage
142146

143147
We are using `OTA_Usage_Portenta.ino.PORTENTA_H7_M7` as a sketch name and for facilitated identification of the file. After this you will have the `.ota` file of the sketch that we would like to use with the OTA process.
144148

145-
***Now you have two options to choose, use QSPI, or use an SD Card to storage your OTA file. You can use the left side index to jump to the option that you may need***
149+
***Now you have two options to choose, use QSPI, or use an SD Card to storage your OTA file. You can use the left side index to jump to the option that you may need.***
146150

147151
### QSPI Storage Mode
148152

@@ -152,9 +156,9 @@ To use internal **QSPI** storage for downloading the binary file via OTA (Over-T
152156
![Arduino Portenta H7 Board Connection](assets/portenta_h7_board_selection.png)
153157

154158
#### Writing the Script
155-
To proceed with a OTA using the QSPI flash, you can open the sketch from **Examples ->Arduino_Portenta_OTA -> OTA_Qspi_Flash**.
159+
To proceed with a OTA using the QSPI flash, you can open the sketch from **Examples >Arduino_Portenta_OTA > OTA_Qspi_Flash**.
156160

157-
***Do not forget to fill your Wi-Fi AP SSID, and password on the `arduino_secrets.h` tab***
161+
***Do not forget to fill your Wi-Fi AP SSID, and password on the `arduino_secrets.h` tab.***
158162

159163
This sketch will connect to your Wi-Fi, check if the OTA feature is available by checking the installed firmware on your Portenta.
160164

@@ -170,10 +174,9 @@ To use the **SD card** as the preferred OTA (Over-The-Air) storage device, we wi
170174
With this, you will need the Arduino Portenta H7 board connected to the computer with the Arduino IDE. You will need to have selected the **Arduino Portenta H7 (M7 Core)** with the Flash split of **1MB M7 + 1MB M4** for the purpose of this tutorial and the corresponding port.
171175

172176
#### Writing the Script
177+
As same as QSPI storage mode, to proceed with a OTA using the SD Card, you can open the sketch from **Examples > Arduino_Portenta_OTA > OTA_SD_Portenta**.
173178

174-
As same as QSPI storage mode, to proceed with a OTA using the SD Card, you can open the sketch from **Examples ->Arduino_Portenta_OTA -> OTA_SD_Portenta**.
175-
176-
***Do not forget to fill your Wi-Fi AP SSID, and password on the `arduino_secrets.h` tab***
179+
***Do not forget to fill your Wi-Fi AP SSID, and password on the `arduino_secrets.h` tab.***
177180

178181
This sketch will connect to your Wi-Fi, check if the OTA feature is available by checking the installed firmware on your Portenta.
179182

@@ -394,7 +397,8 @@ void loop()
394397
}
395398
```
396399

397-
## Troubleshooting
400+
## Troubleshooting
398401
For troubleshooting the issues that might have arose following the tutorial, you can use following tips to solve the issue.
402+
399403
- If it logs there has been an issue with Wi-Fi module, means the device may have suffered from losing the Wi-Fi firmware partition. To solve this, you will have to use **PortentaWiFiFirmwareupdater** sketch found on Arduino IDE examples to fix the issue.
400404
- QSPI storage may throw error -3 while running Portenta H7 OTA QSPI example. To fix this you can use this guide of [Reading and Writing Flash Memory](https://docs.arduino.cc/tutorials/portenta-h7/por-ard-flash/) in the section **Programming the QSPI Flash**. After this, run the example and it should have been solved by eliminating error -3 (OTA Storage initialization error).

content/hardware/04.pro/boards/portenta-h7/tutorials/por-ard-ap/content.md

Lines changed: 11 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -24,20 +24,22 @@ software:
2424
Portenta H7 comes with an on-board Wi-Fi and a Bluetooth® Module that allows to develop IoT applications that require wireless connectivity and Internet access. Turning the board into an access point allows it to create a Wi-Fi network on its own and allows other devices to connect to it. In this tutorial you will learn to set up your board as an access point web server and remotely control the red, green and blue LEDs on the built-in RGB LED by accessing an HTML page on your mobile device’s browser.
2525

2626
## Goals
27+
2728
- About the built-in Wi-Fi + Bluetooth® module.
2829
- How a client-server model works
2930
- How to create an HTTP communication channel between the board and an external device.
3031

3132
### Required Hardware and Software
32-
- Portenta H7 (ABX00042) or Portenta H7 Lite Connected (ABX00046) board (<https://store.arduino.cc/portenta-h7>)
33-
- One USB C cable (either USB A to USB C or USB C to USB C)
34-
- Arduino IDE 1.8.10+ or Arduino Pro IDE 0.0.4 +
35-
- A smart phone
33+
34+
- [Portenta H7 (ABX00042)](https://store.arduino.cc/portenta-h7) or [Portenta H7 Lite Connected (ABX00046)](https://store.arduino.cc/products/portenta-h7-lite-connected)
35+
- One USB C cable (either USB A to USB C or USB C to USB C)
36+
- Arduino IDE 1.8.10+ or Arduino Pro IDE 0.0.4 +
37+
- A smart phone
3638

3739
## Access Point Configuration
38-
The Portenta H7 features a [Murata 1DX](https://wireless.murata.com/type-1dx.html), which is a high performance chipset which supports Wi-Fi 802.11b/g/n + Bluetooth® 5.1 BR/EDR/LE up to 65Mbps PHY data rate on Wi-Fi and 3Mbps PHY data rate on Bluetooth®. This module helps to configure the Portenta into three different modes of operation - an Access Point, a Station, or both. In this tutorial we will only focus on the access point configuration.
40+
The Portenta H7 features a [Murata 1DX](https://wireless.murata.com/type-1dx.html), which is a high performance chipset which supports Wi-Fi 802.11b/g/n + Bluetooth® 5.1 BR/EDR/LE up to 65Mbps PHY data rate on Wi-Fi and 3Mbps PHY data rate on Bluetooth®. This module helps to configure the Portenta into three different modes of operation - an Access Point, a Station, or both. In this tutorial we will only focus on the access point configuration.
3941

40-
When the board is configured to operate as an access point, it can create its own wireless LAN ( WLAN ) network. In this mode, the board transmits and receives signals at 2.4 GHz allowing other electronic devices with Wi-Fi capabilities using the same bandwidth to connect to the board.
42+
When the board is configured to operate as an access point, it can create its own wireless LAN (WLAN) network. In this mode, the board transmits and receives signals at 2.4 GHz allowing other electronic devices with Wi-Fi capabilities using the same bandwidth to connect to the board.
4143

4244
With the access point set up you create a client server architecture where the board provides a web server communicating with the client devices over HTTP. The connected devices can then make HTTP GET requests to the server to retrieve web pages served by the web server on the board. This makes the Portenta H7 an ideal board for developing IoT solutions where external client devices can send and receive information while more complex processing tasks take place on the server.
4345

@@ -46,7 +48,7 @@ With the access point set up you create a client server architecture where the b
4648
## Instructions
4749

4850
### Setting Up the Web Server
49-
In this tutorial you are going to convert the board into an access point and use it to set up a web server which provides a HTML webpage. This page contains buttons to toggle the red, green and blue colour of the built-in LED. You will then connect your mobile device to this access point and access this web page through the browser on your mobile phone. Once retrieved, you will be able to control the state of the red, green and blue LED on the built-in RGB LED from your mobile device.
51+
In this tutorial you are going to convert the board into an access point and use it to set up a web server which provides a HTML webpage. This page contains buttons to toggle the red, green and blue color of the built-in LED. You will then connect your mobile device to this access point and access this web page through the browser on your mobile phone. Once retrieved, you will be able to control the state of the red, green and blue LED on the built-in RGB LED from your mobile device.
5052

5153
![A mobile device controlling the different LEDs on the board ](assets/por_ard_ap_tutorial_overview.svg)
5254

@@ -58,7 +60,7 @@ Begin by plugging in your Portenta board to your computer using a USB-C cable an
5860
### 2. Create the Web Server Sketch
5961
Next we need to create a web server sketch that will handle the HTTP GET requests and provide the client devices with the HTML web page. The [Wi-Fi](https://www.arduino.cc/en/Reference/WiFi) library provides all necessary methods that allows Arduino boards to use their Wi-Fi features provided by the on-board Wi-Fi module. To set up the web server copy the following code, paste it into a new sketch file and name it **SimpleWebServer.ino**.
6062

61-
**Note:** You can access the final sketch inside the library: **Examples -> Arduino_Pro_Tutorials -> Portenta H7 as a Wi-Fi Access Point -> SimpleWebServer**
63+
**Note:** You can access the final sketch inside the library: **Examples > Arduino_Pro_Tutorials > Portenta H7 as a Wi-Fi Access Point > SimpleWebServer**
6264

6365
```cpp
6466
#include <WiFi.h>
@@ -255,7 +257,7 @@ Once you’ve created the new tab, you will see an empty page in the IDE. Define
255257
# define SECRET_PASS "123Qwerty"
256258
```
257259

258-
***The SSID (PortentaAccessPoint) and password (123Qwerty) are placeholder strings made for this tutorial. For security reasons you should rename them to something memorisable but not easy to guess. Keep in mind that the password must be at least 8 characters long.***
260+
***The SSID (PortentaAccessPoint) and password (123Qwerty) are placeholder strings made for this tutorial. For security reasons you should rename them to something memorable but not easy to guess. Keep in mind that the password must be at least 8 characters long.***
259261

260262
In order to access the `SECRET_SSID` and `SECRET_PASS` constants in the **simpleWebServer.ino** sketch file, the header file that you’ve just created needs to be included. In your sketch file this has already been taken care of by the following line at the beginning of the sketch:
261263

0 commit comments

Comments
 (0)