Skip to content

Commit e68f503

Browse files
committed
Documentation content post review update
1 parent 49c9c27 commit e68f503

File tree

2 files changed

+43
-34
lines changed

2 files changed

+43
-34
lines changed

content/hardware/04.pro/boards/portenta-x8/tutorials/01.user-manual/content.md

+32-33
Original file line numberDiff line numberDiff line change
@@ -115,32 +115,11 @@ To explore specific sections in more detail, please click on the links below tha
115115

116116
### Portenta X8: Linux & Arduino Interoperability
117117

118-
The Portenta X8 runs a **Yocto** based Linux distribution. It allows users to upload sketches to the M4 core of the STM32H7 using the Arduino IDE. The process of uploading sketches may seem familiar to Arduino users, but on Portenta X8, the system uses a service called `monitor-m4-elf-file.service`.
118+
The Portenta X8 runs on a **Yocto-based Linux distribution** with Docker container support, offering robust capabilities for deploying and managing device independent applications. In addition, it allows users to upload Arduino sketches to the M4 core of the STM32H7 using the Arduino IDE.
119119

120-
This service monitors a specific directory for updated sketches and flashes the M4 core with the new code via OpenOCD. This feature enables seamless integration between the Linux and Arduino environments on the board.
120+
This integration leverages a service called `monitor-m4-elf-file.service`, which monitors for updated sketches and flashes the M4 core using *OpenOCD*, ensuring seamless interaction between Linux and Arduino environments. The Portenta X8 also supports **Remote Procedure Call (RPC)** communication between its Linux system and Arduino cores. It uses **MessagePack-RPC** to efficiently exchange data.
121121

122-
The Portenta X8 employs **Remote Procedure Call (RPC)** mechanisms to enable communication between the Linux system and the Arduino cores. RPC allows the two processors (M4 and M7 cores) to exchange data, with the M7 core handling data transfers between the M4 core running Arduino sketches and the Linux environment.
123-
124-
The communication uses **MessagePack-RPC**, a lightweight protocol for serialized data transfer, supporting various communication protocols like OpenAMP, SPI, and TCP/IP. This setup ensures efficient interaction between the Linux side and Arduino sketches without the complexity of traditional dual-core processing.
125-
126-
The Portenta X8 offers a powerful, versatile platform by combining Linux capabilities with Arduino’s ease of use. Users can deploy and manage device-independent applications using Docker containers while also taking advantage of Arduino’s rich ecosystem for embedded development. This hybrid environment supports flexible development, making it ideal for complex, multifunctional projects.
127-
128-
***For more in-depth details on fundamentals of the Portenta X8, please refer to this [documentation](https://docs.arduino.cc/tutorials/portenta-x8/x8-fundamentals/).***
129-
130-
## Portenta X8 OS Image Update
131-
132-
It is recommended that you check every now and then to see if your Portenta X8 image version is up to date to have the latest security updates.
133-
134-
***To review the image version history, refer to the [__Portenta X8 firmware release notes__](https://docs.arduino.cc/tutorials/portenta-x8/x8-firmware-release-notes/).***
135-
136-
There are four ways to update your Portenta X8 are described:
137-
138-
* [Update for OS release V.399](https://docs.arduino.cc/tutorials/portenta-x8/image-flashing/#update-for-os-release-v399)
139-
* [Update through Arduino Linux Wizard experience](https://docs.arduino.cc/tutorials/portenta-x8/image-flashing/#update-through-arduino-linux-wizard-experience)
140-
* [Update through Portenta X8 Manager in your Arduino Cloud for Business account (available for all OS releases)](https://docs.arduino.cc/tutorials/portenta-x8/image-flashing/#update-with-portenta-x8-board-manager)
141-
* [Update using the `uuu` tool (compatible with custom images)](https://docs.arduino.cc/tutorials/portenta-x8/image-flashing/#update-using-uuu-tool)
142-
143-
You can find more details in the dedicated tutorial here: [**How To Flash Your Portenta X8**](https://docs.arduino.cc/tutorials/portenta-x8/image-flashing).
122+
***For more details on Portenta X8’s Linux capabilities, Docker support, and Arduino integration, please refer to the [__Portenta X8 Fundamentals documentation__](https://docs.arduino.cc/tutorials/portenta-x8/x8-fundamentals/).***
144123

145124
## First Use Of Your Portenta X8
146125

@@ -194,21 +173,25 @@ You can now proceed to the setup of the board connectivity by clicking **OK, GOT
194173

195174
***If you face any issue with this flow or prefer to interact directly with your Portenta X8 through the command line, please refer to [this section](#working-with-linux) to learn how to connect with the board leveraging ADB service.***
196175

197-
Once the setup is ready, let's open the Arduino Linux Wizard page. Use the command line window and launch the TCP port forwarding setup command:
198-
199-
```bash
200-
adb forward tcp:8080 tcp:80
201-
```
176+
Once the setup is complete, the browser page will automatically switch to the Arduino Linux Wizard page.
202177

203-
Now open your browser, go to [http://localhost:8080](http://localhost:8080), and the Arduino Linux Wizard dashboard will appear.
178+
The Arduino Linux Wizard page is accessible at [**http://localhost:8080**](http://localhost:8080). You can use this link to open the Arduino Linux Wizard dashboard anytime.
204179

205180
![Arduino Linux Wizard Home Screen](assets/OOTB_homepage_init.png "Arduino Linux Wizard Home Screen")
206181

207-
On the Arduino Linux Wizard page, the **SYSTEM INFO** button is located at the bottom left.
182+
The **SYSTEM INFO** button is located at the bottom left corner of the Arduino Linux Wizard page.
208183

209184
![Arduino Linux Wizard System Info](assets/OOTB_system_info.png "Arduino Linux Wizard System Info")
210185

211-
It will show you different types of information about the Portenta X8, including hardware/software information, network status, and active containers.
186+
This section displays details about the Portenta X8, such as hardware and software specifications, network status, and active containers.
187+
188+
If you disconnect the Portenta X8 and need to reopen the Arduino Linux Wizard page, use the command line and run the TCP port forwarding command:
189+
190+
```bash
191+
adb forward tcp:8080 tcp:80
192+
```
193+
194+
Then, access the page with [**http://localhost:8080**](http://localhost:8080) to open the Arduino Linux Wizard dashboard.
212195

213196
#### Wi-Fi® Configuration
214197

@@ -242,13 +225,14 @@ Now, you can click **OK** and be redirected to the Arduino Linux Wizard homepage
242225

243226
#### Arduino Linux Wizard Homepage
244227

245-
This web page is hosted on the Portenta X8 and allows a user to:
228+
The Arduino Linux Wizard, hosted on the Portenta X8, allows a user to leverage the following capabilities:
246229

247230
- Get board details
248231
- [Configure Portenta X8 Wi-Fi®](#wi-fi-configuration)
249232
- [Interact with the board through the embedded Python® Alpine Shell](#portenta-x8-with-python-alpine-shell)
250233
- [Provision your device to Arduino Cloud](#portenta-x8-with-arduino-cloud)
251234
- Manage the Linux distribution with the dedicated [Portenta X8 Board Manager](#portenta-x8-board-manager)
235+
- [Update the board's operating system](#portenta-x8-os-image-update)
252236

253237
#### Portenta X8 with Python Alpine Shell
254238

@@ -260,6 +244,21 @@ This shell is running in a Python-Alpine container embedded in Portenta X8. You
260244

261245
![Arduino Linux Wizard Python-Alpine Shell](assets/OOTB_alpine_shell.png "Arduino Linux Wizard Python-Alpine Shell")
262246

247+
## Portenta X8 OS Image Update
248+
249+
It is recommended that you check every now and then to see if your Portenta X8 image version is up to date to have the latest security updates.
250+
251+
***To review the image version history, refer to the [__Portenta X8 firmware release notes__](https://docs.arduino.cc/tutorials/portenta-x8/x8-firmware-release-notes/).***
252+
253+
There are four ways to update your Portenta X8 are described:
254+
255+
* [Update for OS release V.399](https://docs.arduino.cc/tutorials/portenta-x8/image-flashing/#update-for-os-release-v399)
256+
* [Update through Arduino Linux Wizard experience](https://docs.arduino.cc/tutorials/portenta-x8/image-flashing/#update-through-arduino-linux-wizard-experience)
257+
* [Update through Portenta X8 Manager in your Arduino Cloud for Business account (available for all OS releases)](https://docs.arduino.cc/tutorials/portenta-x8/image-flashing/#update-with-portenta-x8-board-manager)
258+
* [Update using the `uuu` tool (compatible with custom images)](https://docs.arduino.cc/tutorials/portenta-x8/image-flashing/#update-using-uuu-tool)
259+
260+
You can find more details in the dedicated tutorial here: [**How To Flash Your Portenta X8**](https://docs.arduino.cc/tutorials/portenta-x8/image-flashing).
261+
263262
## Portenta X8 with Arduino Cloud
264263

265264
***Note: this is an optional step. The Portenta X8 can also be used with locally without an internet connection.***

content/hardware/04.pro/boards/portenta-x8/tutorials/02.x8-fundamentals/portenta-x8-fundamentals.md

+11-1
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,17 @@ The **Portenta X8** is one of the most advanced boards available from Arduino, i
2525
- [USB-C® cable (USB-C® to USB-A cable)](https://store.arduino.cc/products/usb-cable2in1-type-c)
2626
- [fioctl](https://docs.foundries.io/latest/getting-started/install-fioctl/index.html)
2727

28-
## Instructions
28+
## Portenta X8: Linux & Arduino Interoperability
29+
30+
The Portenta X8 runs on a **Yocto-based Linux distribution** with built-in support for Docker containers. It allows users to upload sketches to the M4 core of the STM32H7 using the Arduino IDE.
31+
32+
While the process may be familiar to Arduino users, the Portenta X8 uses a service called `monitor-m4-elf-file.service`. This service monitors a specific directory for updated sketches. It flashes the M4 core with new code via OpenOCD, providing a seamless integration between the Linux and Arduino environments on the board.
33+
34+
Additionally, the Portenta X8 uses **Remote Procedure Call (RPC)** mechanisms to enable communication between the Linux system and the Arduino cores. Through RPC, data can be exchanged between the M4 and M7 cores, with the M7 core managing data transfers between the M4 core running Arduino sketches and the Linux environment.
35+
36+
The communication uses **MessagePack-RPC**, a lightweight protocol for serialized data transfer, supporting protocols such as OpenAMP, SPI, and TCP/IP. This setup provides solid interaction between Linux-based processes and Arduino sketches without the typical complexity of dual-core processing.
37+
38+
The Portenta X8 provides a powerful and flexible platform by integrating Linux capabilities with Arduino's ease of use. Users can deploy and manage device independent applications using Docker containers while benefiting from Arduino’s rich ecosystem for embedded development. This hybrid environment makes it ideal for complex, multifunctional projects.
2939

3040
If you need help setting up your board, please refer to the [**Portenta X8 User Manual**](https://docs.arduino.cc/tutorials/portenta-x8/user-manual) to learn the basics and get started with your Portenta X8.
3141

0 commit comments

Comments
 (0)