Skip to content

Commit faae972

Browse files
authored
Merge pull request #460 from arduino-libraries/h7-fclose-issue
OTA: STM32H7 unmount filesystem before reset
2 parents 9e5f513 + ee8e9bb commit faae972

File tree

2 files changed

+5
-9
lines changed

2 files changed

+5
-9
lines changed

.github/workflows/compile-examples.yml

-8
Original file line numberDiff line numberDiff line change
@@ -170,7 +170,6 @@ jobs:
170170
- name: arduino:mbed_portenta
171171
libraries: |
172172
- name: ArduinoECCX08
173-
- name: Arduino_Portenta_OTA
174173
sketch-paths: |
175174
- examples/ArduinoIoTCloud-DeferredOTA
176175
- examples/utility/Provisioning
@@ -181,7 +180,6 @@ jobs:
181180
# Install mbed_nicla platform via Boards Manager
182181
- name: arduino:mbed_nicla
183182
libraries: |
184-
- name: Arduino_Portenta_OTA
185183
sketch-paths: |
186184
- examples/ArduinoIoTCloud-DeferredOTA
187185
- examples/utility/Provisioning
@@ -193,7 +191,6 @@ jobs:
193191
- name: arduino:mbed_opta
194192
libraries: |
195193
- name: ArduinoECCX08
196-
- name: Arduino_Portenta_OTA
197194
sketch-paths: |
198195
- examples/ArduinoIoTCloud-DeferredOTA
199196
- examples/utility/Provisioning
@@ -205,7 +202,6 @@ jobs:
205202
- name: arduino:mbed_giga
206203
libraries: |
207204
- name: ArduinoECCX08
208-
- name: Arduino_Portenta_OTA
209205
sketch-paths: |
210206
- examples/ArduinoIoTCloud-DeferredOTA
211207
- examples/utility/Provisioning
@@ -229,8 +225,6 @@ jobs:
229225
platforms: |
230226
# Install arduino_esp32 platform via Boards Manager
231227
- name: arduino:esp32
232-
libraries: |
233-
- name: Arduino_ESP32_OTA
234228
sketch-paths: |
235229
- examples/ArduinoIoTCloud-DeferredOTA
236230
# Edge Control
@@ -257,8 +251,6 @@ jobs:
257251
# Install ESP32 platform via Boards Manager
258252
- name: esp32:esp32
259253
source-url: https://raw.githubusercontent.com/espressif/arduino-esp32/gh-pages/package_esp32_index.json
260-
libraries: |
261-
- name: Arduino_ESP32_OTA
262254
sketch-paths: |
263255
- examples/ArduinoIoTCloud-DeferredOTA
264256

src/ota/implementation/OTASTM32H7.cpp

+5-1
Original file line numberDiff line numberDiff line change
@@ -83,6 +83,8 @@ OTACloudProcessInterface::State STM32H7OTACloudProcess::flashOTA() {
8383
return OtaStorageOpenFail;
8484
}
8585

86+
storageClean();
87+
8688
// this sets the registries in RTC to load the firmware from the storage selected at the next reboot
8789
STM32H747::writeBackupRegister(RTCBackup::DR0, 0x07AA);
8890
STM32H747::writeBackupRegister(RTCBackup::DR1, storage);
@@ -113,7 +115,9 @@ void STM32H7OTACloudProcess::storageClean() {
113115
DEBUG_VERBOSE(F("storage clean"));
114116

115117
if(decompressed != nullptr) {
116-
fclose(decompressed);
118+
int res = fclose(decompressed);
119+
DEBUG_VERBOSE("error on fclose %d", res);
120+
117121
decompressed = nullptr;
118122
}
119123

0 commit comments

Comments
 (0)