You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: content/blog/2020/12/blink-led-on-esp32-with-rtos-nuttx/index.md
+5-5Lines changed: 5 additions & 5 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -8,7 +8,7 @@ authors:
8
8
tags:
9
9
- Nuttx
10
10
- Esp32
11
-
summary: "This is a tutorial on how to blink an LED with NuttX after getting started."
11
+
summary: "This is a tutorial on how to blink an LED with NuttX after getting started."
12
12
---
13
13
\
14
14
{{< alert >}}
@@ -19,7 +19,7 @@ summary: "This is a tutorial on how to blink an LED with NuttX after getting sta
19
19
20
20
This article is part of the “First Steps with ESP32 and NuttX” series. A series whose objective is to present an overview of the NuttX Operating System and to provide instructions for using NuttX on ESP32.
21
21
22
-
The [first part](/blog/2020/11/getting-started-with-esp32-and-nuttx) of the series showed how to prepare the environment, compile and build the Operating System (NuttX) until uploading the firmware to the SoC (ESP32).
22
+
The [first part](/blog/2020/11/nuttx-getting-started) of the series showed how to prepare the environment, compile and build the Operating System (NuttX) until uploading the firmware to the SoC (ESP32).
23
23
24
24
This is the second part and will demonstrate how to run the famous “Hello World” from the Embedded Systems world, i.e., an application that blinks a LED. The evaluation board used here is a DevKit v1 and the built-in LED will be used for convenience. If your DevKit does not come with a built-in LED, just connect an LED to pin 2 in series with a resistor as it will be briefly discussed in the execution section.
25
25
@@ -54,7 +54,7 @@ Exit the menu via “Exit” and save the configuration.
54
54
55
55
## Building and Flashing
56
56
57
-
If you did not add the paths for the cross compiler binaries and for the esptool to PATH permanently as suggested in the [Getting Started](/blog/2020/11/getting-started-with-esp32-and-nuttx), run the following commands to load these paths.
57
+
If you did not add the paths for the cross compiler binaries and for the esptool to PATH permanently as suggested in the [Getting Started](/blog/2020/11/nuttx-getting-started), run the following commands to load these paths.
NOTE: adjust the USB port according to your configuration. In case this is the first time you are downloading the binaries to ESP32, pass the bootloader and the partition table directory as an argument in the second comand as instructed in the [previous article](/blog/getting-started-with-esp32-and-nuttx) from this series.
73
+
NOTE: adjust the USB port according to your configuration. In case this is the first time you are downloading the binaries to ESP32, pass the bootloader and the partition table directory as an argument in the second comand as instructed in the [previous article](/blog/2020/11/nuttx-getting-started) from this series.
74
74
75
75
## Example Execution
76
76
@@ -135,4 +135,4 @@ For help, doubts, bugs reports, and discussion regarding NuttX, you can send an
135
135
136
136
---
137
137
138
-
The [original article](https://medium.com/the-esp-journal/blink-led-on-esp32-with-rtos-nuttx-d33c7dc62156) was published on Medium, on the [ESP Journal](https://medium.com/the-esp-journal). It has since been updated.
138
+
The [original article](https://medium.com/the-esp-journal/blink-led-on-esp32-with-rtos-nuttx-d33c7dc62156) was published on Medium, on the [ESP Journal](https://medium.com/the-esp-journal). It has since been updated.
Copy file name to clipboardExpand all lines: content/blog/2025/03/nuttx-python-esp32s3/index.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -39,7 +39,7 @@ Check the [ESP Product Selector](https://products.espressif.com/) to find suitab
39
39
40
40
### Software Requirements
41
41
42
-
For those new to NuttX, we recommend reviewing the guide [Getting Started with NuttX and ESP32](../../../nuttx-getting-started) to configure your development environment for building NuttX applications.
42
+
For those new to NuttX, we recommend reviewing the guide [Getting Started with NuttX and ESP32](/blog/2020/11/nuttx-getting-started) to configure your development environment for building NuttX applications.
Copy file name to clipboardExpand all lines: content/blog/2025/10/oop_with_c/index.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -67,7 +67,7 @@ An *opaque pointer* is a pointer to a type whose contents are hidden from the us
67
67
{{< /alert >}}
68
68
69
69
#### Error Handling
70
-
Before looking deeper at how methods are structured in C, it’s important to touch on __error handling__. While not strictly part of object-oriented programming, it directly affects the design of function signatures in OOP-style APIs: many “methods” return status codes instead of the actual result, leaving the caller to check and handle errors explicitly. This convention is widely used in ESP-IDF and is key to understanding how its APIs are meant to be used. For a deeper dive, see the article [ESP-IDF tutorial series: Errors](../errors_and_logging/).
70
+
Before looking deeper at how methods are structured in C, it’s important to touch on __error handling__. While not strictly part of object-oriented programming, it directly affects the design of function signatures in OOP-style APIs: many “methods” return status codes instead of the actual result, leaving the caller to check and handle errors explicitly. This convention is widely used in ESP-IDF and is key to understanding how its APIs are meant to be used. For a deeper dive, see the article [ESP-IDF tutorial series: Errors](/blog/2025/09/espressif_logging/).
Copy file name to clipboardExpand all lines: content/blog/securely-booting-user-application-in-esp-privilege-separation/index.md
+3-3Lines changed: 3 additions & 3 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -12,7 +12,7 @@ tags:
12
12
- Security
13
13
14
14
---
15
-
In the [previous post](/blog/ota-firmware-updates-with-esp-privilege-separation-3b676b49459), we demonstrated the ability to independently update the user application in the ESP Privilege Separation framework. With the separation and isolation of the protected app and user app, it becomes convenient to decouple the ownership of each of these apps and their updates. This also potentially allows the possibility of having multiple user applications for a single protected application, somewhat like an “application store” for user app. As the functionality of these applications increases, the security of these apps becomes mandatory.
15
+
In the [previous post](/blog/ota-firmware-updates-with-esp-privilege-separation), we demonstrated the ability to independently update the user application in the ESP Privilege Separation framework. With the separation and isolation of the protected app and user app, it becomes convenient to decouple the ownership of each of these apps and their updates. This also potentially allows the possibility of having multiple user applications for a single protected application, somewhat like an “application store” for user app. As the functionality of these applications increases, the security of these apps becomes mandatory.
16
16
17
17
In this post, we will describe the secure boot mechanism implemented for the user application. This mechanism ensures that only the trusted and authorized user application can execute on the device.
18
18
@@ -51,9 +51,9 @@ In this scheme, the protected application is considered trusted and thus the pro
51
51
52
52
Let’s look at the requisites for protected app and user app for this scheme
0 commit comments