Skip to content

Commit 232e25a

Browse files
andreagilardonipennam
authored andcommitted
changing include enrtypoint for OTA
1 parent b6bd5af commit 232e25a

File tree

2 files changed

+36
-170
lines changed

2 files changed

+36
-170
lines changed

src/utility/ota/OTA.cpp

Lines changed: 0 additions & 125 deletions
This file was deleted.

src/utility/ota/OTA.h

Lines changed: 36 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -1,42 +1,49 @@
11
/*
2-
This file is part of ArduinoIoTCloud.
2+
This file is part of the ArduinoIoTCloud library.
33
4-
Copyright 2020 ARDUINO SA (http://www.arduino.cc/)
4+
Copyright (c) 2024 Arduino SA
55
6-
This software is released under the GNU General Public License version 3,
7-
which covers the main part of arduino-cli.
8-
The terms of this license can be found at:
9-
https://www.gnu.org/licenses/gpl-3.0.en.html
10-
11-
You can be released from the requirements of the above licenses by purchasing
12-
a commercial license. Buying such a license is mandatory if you want to modify or
13-
otherwise use the software for commercial activities involving the Arduino
14-
software without disclosing the source code of your own applications. To purchase
15-
a commercial license, send an email to license@arduino.cc.
6+
This Source Code Form is subject to the terms of the Mozilla Public
7+
License, v. 2.0. If a copy of the MPL was not distributed with this
8+
file, You can obtain one at http://mozilla.org/MPL/2.0/.
169
*/
1710

18-
#ifndef ARDUINO_OTA_LOGIC_H_
19-
#define ARDUINO_OTA_LOGIC_H_
11+
#pragma once
12+
#include "AIoTC_Config.h"
13+
#if OTA_ENABLED
2014

21-
/******************************************************************************
22-
* INCLUDE
23-
******************************************************************************/
15+
#ifdef ARDUINO_ARCH_SAMD
16+
#include "OTASamd.h"
17+
using OTACloudProcess = SAMDOTACloudProcess;
2418

25-
#include <AIoTC_Config.h>
19+
#elif defined(ARDUINO_NANO_RP2040_CONNECT)
20+
#include "OTANanoRP2040.h"
21+
using OTACloudProcess = NANO_RP2040OTACloudProcess;
2622

27-
#if OTA_ENABLED
28-
#include <Arduino.h>
29-
#include <Arduino_ConnectionHandler.h>
23+
#elif defined(BOARD_STM32H7)
24+
#include "OTAPortentaH7.h"
25+
using OTACloudProcess = STM32H7OTACloudProcess;
3026

31-
/******************************************************************************
32-
* DEFINES
33-
******************************************************************************/
27+
#elif defined(ARDUINO_ARCH_ESP32)
28+
#include "OTAEsp32.h"
29+
using OTACloudProcess = ESP32OTACloudProcess;
3430

35-
#define RP2040_OTA_ERROR_BASE (-100)
3631

37-
/******************************************************************************
38-
* TYPEDEF
39-
******************************************************************************/
32+
#if defined (ARDUINO_NANO_ESP32)
33+
constexpr uint32_t OtaMagicNumber = 0x23410070;
34+
#else
35+
constexpr uint32_t OtaMagicNumber = 0x45535033;
36+
#endif
37+
38+
#elif defined(ARDUINO_UNOR4_WIFI)
39+
#include "OTAUnoR4.h"
40+
using OTACloudProcess = UNOR4OTACloudProcess;
41+
42+
#else
43+
#error "This Board doesn't support OTA"
44+
#endif
45+
46+
#define RP2040_OTA_ERROR_BASE (-100)
4047

4148
enum class OTAError : int
4249
{
@@ -54,20 +61,4 @@ enum class OTAError : int
5461
RP2040_ErrorUnmount = RP2040_OTA_ERROR_BASE - 9,
5562
};
5663

57-
/******************************************************************************
58-
* CLASS DECLARATION
59-
******************************************************************************/
60-
61-
class OTA
62-
{
63-
public:
64-
65-
static int onRequest(String url, NetworkAdapter iface);
66-
static String getImageSHA256();
67-
static bool isCapable();
68-
69-
};
70-
71-
#endif /* OTA_ENABLED */
72-
73-
#endif /* ARDUINO_OTA_LOGIC_H_ */
64+
#endif // OTA_ENABLED

0 commit comments

Comments
 (0)