PTXdist – Professional Embedded Linux Made Easy
Pengutronix PTXdist
PTXdist Documentation
Yocto, Buildroot, PTXdist, Elbe: Embedded build systems in comparison
![]() |
![]() |
esptool.py v4.2.1 Serial port COM20 Connecting... . . Chip is ESP32-D0WD (revision 1) Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None Crystal is 40MHz MAC: c8:2b:96:9e:a2:70 Uploading stub... Running stub... Stub running... Changing baud rate to 460800 Changed. Configuring flash size... Auto-detected Flash size: 4MB Flash will be erased from 0x00001000 to 0x00005fff... Flash will be erased from 0x00008000 to 0x00008fff... Flash will be erased from 0x0000e000 to 0x0000ffff... Flash will be erased from 0x00010000 to 0x0018ffff... Warning: some reserved header fields have non-zero values. This image may be from a newer esptool.py? Compressed 17536 bytes to 12203... Writing at 0x00001000... (100 %) Wrote 17536 bytes (12203 compressed) at 0x00001000 in 0.5 seconds (effective 274.9 kbit/s)... Hash of data verified. Compressed 3072 bytes to 146... Writing at 0x00008000... (100 %) Wrote 3072 bytes (146 compressed) at 0x00008000 in 0.0 seconds (effective 511.6 kbit/s)... Hash of data verified. Compressed 8192 bytes to 47... Writing at 0x0000e000... (100 %) Wrote 8192 bytes (47 compressed) at 0x0000e000 in 0.1 seconds (effective 688.0 kbit/s)... Hash of data verified. Compressed 1570820 bytes to 969826... Writing at 0x00010000... (1 %) Writing at 0x0001eaa1... (3 %) Writing at 0x0002fd4c... (5 %) Writing at 0x00034dbd... (6 %) Writing at 0x00038dd8... (8 %) Writing at 0x0003cc5d... (10 %) Writing at 0x00046d1e... (11 %) Writing at 0x00051bcd... (13 %) Writing at 0x000591f0... (15 %) Writing at 0x00063a0c... (16 %) Writing at 0x0007725a... (18 %) Writing at 0x0007ca9a... (20 %) Writing at 0x000826f1... (21 %) Writing at 0x000879c4... (23 %) Writing at 0x0008d4fb... (25 %) Writing at 0x000928cb... (26 %) Writing at 0x00099275... (28 %) Writing at 0x0009f03f... (30 %) Writing at 0x000a4a82... (31 %) Writing at 0x000aac56... (33 %) Writing at 0x000b03a7... (35 %) Writing at 0x000b622a... (36 %) Writing at 0x000bc207... (38 %) Writing at 0x000c1f67... (40 %) Writing at 0x000c81c7... (41 %) Writing at 0x000cdda8... (43 %) Writing at 0x000d344a... (45 %) Writing at 0x000d8754... (46 %) Writing at 0x000ddb14... (48 %) Writing at 0x000e3010... (50 %) Writing at 0x000e8624... (51 %) Writing at 0x000edfde... (53 %) Writing at 0x000f3b96... (55 %) Writing at 0x000f8d78... (56 %) Writing at 0x000fe112... (58 %) Writing at 0x00103236... (60 %) Writing at 0x00108982... (61 %) Writing at 0x0010db08... (63 %) Writing at 0x00112dcc... (65 %) Writing at 0x001188d3... (66 %) Writing at 0x0011def2... (68 %) Writing at 0x0012381f... (70 %) Writing at 0x001292b7... (71 %) Writing at 0x0012f519... (73 %) Writing at 0x00134d5c... (75 %) Writing at 0x0013a262... (76 %) Writing at 0x0013f7e1... (78 %) Writing at 0x001450aa... (80 %) Writing at 0x0014adfa... (81 %) Writing at 0x0014ffc1... (83 %) Writing at 0x0015520a... (85 %) Writing at 0x0015b06c... (86 %) Writing at 0x001636c9... (88 %) Writing at 0x0016c14d... (90 %) Writing at 0x00172161... (91 %) Writing at 0x0017757a... (93 %) Writing at 0x0017cd31... (95 %) Writing at 0x00182d09... (96 %) Writing at 0x001880ee... (98 %) Writing at 0x0018ddf1... (100 %) Wrote 1570820 bytes (969826 compressed) at 0x00010000 in 22.1 seconds (effective 569.2 kbit/s)... Hash of data verified. Leaving... Hard resetting via RTS pin...
![]() |
log.debug("log1 = {}", Server.class.getResource("keystore.jks"));
log.debug("log2 = {}", Server.class.getResource("/keystore.jks"));
log.debug("log3 = {}", getClass().getResource("keystore.jks"));
log.debug("log4 = {}", getClass().getResource("/keystore.jks"));
log.debug("log5 = {}", getClass().getClassLoader().getResource("keystore.jks"));
log.debug("log6 = {}", getClass().getClassLoader().getResource("/keystore.jks"));
15:46:10.008 [main] DEBUG com.server.lib.Server -- log1 = null 15:46:10.015 [main] DEBUG com.server.lib.Server -- log2 = file:/C:/Dev/gitRepositories/SimpleWebServer/target/classes/keystore.jks 15:46:10.015 [main] DEBUG com.server.lib.Server -- log3 = null 15:46:10.016 [main] DEBUG com.server.lib.Server -- log4 = file:/C:/Dev/gitRepositories/SimpleWebServer/target/classes/keystore.jks 15:46:10.016 [main] DEBUG com.server.lib.Server -- log5 = file:/C:/Dev/gitRepositories/SimpleWebServer/target/classes/keystore.jks 15:46:10.017 [main] DEBUG com.server.lib.Server -- log6 = null
Findings…
class.getResource() or getClass().getResource() with slashgetClass().getClassLoader().getResource without slashgithub.com/rjlfinn/java-http-server
Simple Java HTTPS server
Java Network Programming, 4th Edition
SSL Handshake Failures
Do javax.net.ssl.* VM arguments need to be migrated to jakarta.net.ssl.*?
How does Javas KeyManagerFactory.init work with multiple keys
What is SunX509 used for and can it work with parties using IbmX509?
What is the difference of TrustManager PKIX and SunX509?
org.springframework.web.client.ResourceAccessException: I/O error on POST request for "https://localhost:8585/testOne": PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target
“PKIX path building failed” and “unable to find valid certification path to requested target”
Accept server’s self-signed ssl certificate in Java client
Keytool’s -storepass vs. -keypass — Why 2 passwords?
In case we get the error “javax.net.ssl.SSLHandshakeException: sun.security.validator.ValidatorException: PKIX path building failed: sun.security.provider.certpath.SunCertPathBuilderException: unable to find valid certification path to requested target while establishing the SSL connection”, it indicates that we don’t have the public certificate of the server which we’re trying to connect in the Java truststore.
$ find /c/Program\ Files/choco/openjdk-jdk-17 -name "*cacert*"
/c/Program Files/choco/openjdk-jdk-17/lib/security/cacerts
$ keytool -list -v -keystore /c/Program\ Files/choco/openjdk-jdk-17/lib/security/cacerts
Enter keystore password:
Keystore type: JKS
Keystore provider: SUN
Your keystore contains 111 entries
[...]
$ pwd
/c/gitRepositories/SimpleWebServer/src/main/resources
$ keytool -list -v -keystore keystore.jks -storepass pass_for_self_signed_cert
Keystore type: PKCS12
Keystore provider: SUN
Your keystore contains 1 entry
Alias name: selfsigned
Creation date: Nov 25, 2024
Entry type: PrivateKeyEntry
Certificate chain length: 1
Certificate[1]:
Owner: CN=localhost, OU=Developers, O=Bull Bytes, L=Linz, C=AT
Issuer: CN=localhost, OU=Developers, O=Bull Bytes, L=Linz, C=AT
Serial number: f771d2346ba5c42b
Valid from: Mon Nov 25 15:31:14 CET 2024 until: Sun Feb 23 15:31:14 CET 2025
Certificate fingerprints:
SHA1: DA:6D:B0:C4:F4:6E:65:45:AB:3E:AC:C3:9B:AD:25:30:B6:AD:21:CF
SHA256: 81:94:78:29:23:13:1B:73:B3:D2:5A:B1:5B:24:77:85:34:F1:FD:BA:92:F6:34:12:DC:4F:88:50:7F:1B:3A:51
Signature algorithm name: SHA256withRSA
Subject Public Key Algorithm: 2048-bit RSA key
Version: 3
Extensions:
#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 4D 9B 90 29 EB 60 D7 7F 21 28 46 B2 FA 8E 58 5C M..).`..!(F...X\
0010: D9 23 F1 98 .#..
]
]
*******************************************
*******************************************
$ keytool -import -v -trustcacerts -alias localhost-2 -file localhost.crt -keystore /c/Program\ Files/choco/openjdk-jdk-17/lib/security/cacerts -storepass changeit -keypass changeit
Owner: CN=localhost, OU=Developers, O=Bull Bytes, L=Linz, C=AT
Issuer: CN=localhost, OU=Developers, O=Bull Bytes, L=Linz, C=AT
Serial number: f771d2346ba5c42b
Valid from: Mon Nov 25 15:31:14 CET 2024 until: Sun Feb 23 15:31:14 CET 2025
Certificate fingerprints:
SHA1: DA:6D:B0:C4:F4:6E:65:45:AB:3E:AC:C3:9B:AD:25:30:B6:AD:21:CF
SHA256: 81:94:78:29:23:13:1B:73:B3:D2:5A:B1:5B:24:77:85:34:F1:FD:BA:92:F6:34:12:DC:4F:88:50:7F:1B:3A:51
Signature algorithm name: SHA256withRSA
Subject Public Key Algorithm: 2048-bit RSA key
Version: 3
Extensions:
#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 4D 9B 90 29 EB 60 D7 7F 21 28 46 B2 FA 8E 58 5C M..).`..!(F...X\
0010: D9 23 F1 98 .#..
]
]
Trust this certificate? [no]: yes
Certificate was added to keystore
[Storing C:/Program Files/choco/openjdk-jdk-17/lib/security/cacerts]
keytool error: java.io.FileNotFoundException: C:\Program Files\choco\openjdk-jdk-17\lib\security\cacerts (Access is denied)
java.io.FileNotFoundException: C:\Program Files\choco\openjdk-jdk-17\lib\security\cacerts (Access is denied)
at java.base/java.io.FileOutputStream.open0(Native Method)
at java.base/java.io.FileOutputStream.open(FileOutputStream.java:293)
at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:235)
at java.base/java.io.FileOutputStream.<init>(FileOutputStream.java:123)
at java.base/sun.security.tools.keytool.Main.doCommands(Main.java:1375)
at java.base/sun.security.tools.keytool.Main.run(Main.java:423)
at java.base/sun.security.tools.keytool.Main.main(Main.java:416)
(admin)
$ keytool -import -v -trustcacerts -alias localhost-2 -file localhost.crt -keystore /c/Program\ Files/choco/openjdk-jdk-17/lib/security/cacerts -storepass changeit -keypass changeit
Owner: CN=localhost, OU=Developers, O=Bull Bytes, L=Linz, C=AT
Issuer: CN=localhost, OU=Developers, O=Bull Bytes, L=Linz, C=AT
Serial number: f771d2346ba5c42b
Valid from: Mon Nov 25 15:31:14 CET 2024 until: Sun Feb 23 15:31:14 CET 2025
Certificate fingerprints:
SHA1: DA:6D:B0:C4:F4:6E:65:45:AB:3E:AC:C3:9B:AD:25:30:B6:AD:21:CF
SHA256: 81:94:78:29:23:13:1B:73:B3:D2:5A:B1:5B:24:77:85:34:F1:FD:BA:92:F6:34:12:DC:4F:88:50:7F:1B:3A:51
Signature algorithm name: SHA256withRSA
Subject Public Key Algorithm: 2048-bit RSA key
Version: 3
Extensions:
#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 4D 9B 90 29 EB 60 D7 7F 21 28 46 B2 FA 8E 58 5C M..).`..!(F...X\
0010: D9 23 F1 98 .#..
]
]
Trust this certificate? [no]: yes
Certificate was added to keystore
[Storing C:/Program Files/choco/openjdk-jdk-17/lib/security/cacerts]
Reading from an SSL input stream (Java)
How to tell if Java SSLSocket has data available?
There is no way to do this. Your streams cannot tell you the length of the data without first decrypting it. available() will always return 0 for SSLSocket.
sslsocket read only once from inputstream,why?
Getting an InputStream from an SSLSocket
available() doesn’t do what you think it does; don’t rely on it. For SSLSockets, available() is even less reliable. From the JSSE Ref Guide:
“Implementation Note: Due to the complexity of the SSL and TLS protocols, it is difficult to predict whether incoming bytes on a connection are handshake or application data, and how that data might affect the current connection state (even causing the process to block). In the Sun JSSE implementation, the available() method on the object obtained by SSLSocket.getInputStream() returns a count of the number of application data bytes successfully decrypted from the SSL connection but not yet read by the application.”
My experience is that this generally maps to “0”.
github.com/CarbonAeronautics
, Quadcopter build and programming manual
Build and program this Arduino drone yourself!
0 | You can build a drone with less than 40 components
14 | Measure angles with the MPU6050 accelerometer
15 | Combine a gyroscope and accelerometer to measure angles – precisely
16 | Program an angle mode flight controller in Arduino
* Executing task: C:\Users\andreas\.platformio\penv\Scripts\platformio.exe run --environment Unified_ESP32_2400_TX_via_UART
Processing Unified_ESP32_2400_TX_via_UART (platform: espressif32@6.4.0; board: esp32dev; framework: arduino)
------------------------------------------------------------------------------------------------------------
Verbose mode can be enabled via `-v, --verbose` option
build flags: ['-D PLATFORM_ESP32=1', '-D CONFIG_TCPIP_LWIP=1', '-D BEARSSL_SSL_BASIC', '-D CONFIG_DISABLE_HAL_LOCKS=1', '-I ${PROJECTSRC_DIR}/hal', '-DRADIO_SX128X=1', '-DTARGET_TX=1 -Wall -Iinclude', '-include target/Unified_ESP32_TX.h', '-D VTABLES_IN_FLASH=1', '-O2', '-DRegulatory_Domain_EU_CE_2400', '-DLOCK_ON_FIRST_CONNECTION', '-DAUTO_WIFI_ON_INTERVAL=60', '-DLATEST_COMMIT=55,97,99,53,102,52', '-DLATEST_VERSION=51,46,53,46,50', '-DTARGET_NAME=UNIFIED_ESP32_2400_TX']
Building for ESP32 Platform
CONFIGURATION: https://docs.platformio.org/page/boards/espressif32/esp32dev.html
PLATFORM: Espressif 32 (6.4.0) > Espressif ESP32 Dev Module
HARDWARE: ESP32 240MHz, 320KB RAM, 4MB Flash
DEBUG: Current (cmsis-dap) External (cmsis-dap, esp-bridge, esp-prog, iot-bus-jtag, jlink, minimodule, olimex-arm-usb-ocd, olimex-arm-usb-ocd-h, olimex-arm-usb-tiny-h, olimex-jtag-tiny, tumpa)
PACKAGES:
- framework-arduinoespressif32 @ 3.20011.230801 (2.0.11)
- tool-esptoolpy @ 1.40501.0 (4.5.1)
- toolchain-xtensa-esp32 @ 8.4.0+2021r2-patch5
LDF: Library Dependency Finder -> https://bit.ly/configure-pio-ldf
LDF Modes: Finder ~ chain, Compatibility ~ soft
Found 94 compatible libraries
Scanning dependencies...
Dependency Graph
|-- ESPAsyncWebServer-esphome @ 3.0.0
|-- AsyncTCP-esphome @ 2.0.1
|-- ESP32-BLE-Gamepad @ 0.5.2
|-- NimBLE-Arduino @ 1.4.1
|-- ArduinoJson @ 7.0.4
|-- c_library_v2 @ 0.0.0+20241121205304.sha.e54a8d2e
|-- GFX Library for Arduino @ 1.2.8
|-- U8g2 @ 2.34.4
|-- SPIFFS @ 2.0.0
|-- OTA
|-- SX1280Driver
|-- Handset
|-- LBT
|-- DEVICE
|-- CRSF2MSP
|-- Telemetry
|-- FIFO
|-- CONFIG
|-- MSPVTX
|-- MSP
|-- logging
|-- Wire @ 2.0.0
|-- Backpack
|-- BLE
|-- BUTTON
|-- BUZZER
|-- GSENSOR
|-- LED
|-- LUA
|-- POWER_DETECT
|-- SCREEN
|-- THERMAL
|-- VTX
|-- WIFI
|-- MAVLink
|-- StubbornReceiver
|-- StubbornSender
|-- TelemetryProtocol
|-- MeanAccumulator
|-- POWERMGNT
|-- CRC
|-- FHSS
|-- HWTIMER
|-- LQCALC
Building in release mode
PLATFORM : 'espressif32'
BUILD ENV: 'UNIFIED_ESP32_2400_TX_VIA_UART'
build version: 3.5.2 (7ac5f4) None
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\common.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\dynpower.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\hal\hal_stm32.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\rx-serial\SerialAirPort.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\rx-serial\SerialCRSF.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\rx-serial\SerialHoTT_TLM.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\rx-serial\SerialIO.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\rx-serial\SerialMavlink.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\rx-serial\SerialSBUS.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\rx-serial\SerialSUMD.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\rx-serial\SerialSmartAudio.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\rx-serial\SerialTramp.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\rx-serial\devSerialIO.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\rxtx_common.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\src\tx_main.cpp.o
Building .pio\build\Unified_ESP32_2400_TX_via_UART\bootloader.bin
Generating partitions .pio\build\Unified_ESP32_2400_TX_via_UART\partitions.bin
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba6a\AsyncTCP-esphome@2.0.1\AsyncTCP.cpp.o
esptool.py v4.5.1
Creating esp32 image...
Merged 1 ELF section
Successfully created esp32 image.
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib1ea\FS\FS.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib1ea\FS\vfs_api.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f4\WiFi\WiFi.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f4\WiFi\WiFiAP.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f4\WiFi\WiFiClient.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f4\WiFi\WiFiGeneric.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f4\WiFi\WiFiMulti.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f4\WiFi\WiFiSTA.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f4\WiFi\WiFiScan.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f4\WiFi\WiFiServer.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\liba6a\libAsyncTCP-esphome@2.0.1.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib1ea\libFS.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f4\WiFi\WiFiUdp.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib1ea\libFS.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\liba6a\libAsyncTCP-esphome@2.0.1.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libf8e\ESPAsyncWebServer-esphome\AsyncEventSource.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libf8e\ESPAsyncWebServer-esphome\AsyncWebSocket.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libf8e\ESPAsyncWebServer-esphome\WebAuthentication.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libf8e\ESPAsyncWebServer-esphome\WebHandlers.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libf8e\ESPAsyncWebServer-esphome\WebRequest.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libf8e\ESPAsyncWebServer-esphome\WebResponses.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libf8e\ESPAsyncWebServer-esphome\WebServer.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLE2904.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEAddress.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEAdvertisedDevice.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEAdvertising.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f4\libWiFi.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f4\libWiFi.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEBeacon.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLECharacteristic.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEClient.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEDescriptor.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEDevice.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEEddystoneTLM.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEEddystoneURL.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEExtAdvertising.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEHIDDevice.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLERemoteCharacteristic.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLERemoteDescriptor.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLERemoteService.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libf8e\libESPAsyncWebServer-esphome.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEScan.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLESecurity.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEServer.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEService.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEUUID.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libf8e\libESPAsyncWebServer-esphome.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\NimBLEUtils.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\esp_port\esp-hci\src\esp_nimble_hci.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\esp_port\port\src\esp_nimble_mem.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\aes_decrypt.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\aes_encrypt.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\cbc_mode.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\ccm_mode.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\cmac_mode.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\ctr_mode.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\ctr_prng.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\ecc.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\ecc_dh.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\ecc_dsa.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\ecc_platform_specific.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\hmac.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\hmac_prng.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\sha256.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\ext\tinycrypt\src\utils.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_adv.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_conn.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_conn_hci.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_ctrl.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_dtm.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_hci.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_hci_ev.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_iso.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_rand.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_resolv.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_rfmgmt.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_scan.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_sched.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_supp_cmd.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_sync.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_trace.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_utils.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\controller\src\ble_ll_whitelist.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\drivers\nrf51\src\ble_hw.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\drivers\nrf51\src\ble_phy.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\drivers\nrf52\src\ble_hw.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\drivers\nrf52\src\ble_phy.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\drivers\nrf52\src\ble_phy_trace.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\access.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\adv.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\aes-ccm.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\app_keys.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\beacon.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\cdb.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\cfg.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\cfg_cli.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\cfg_srv.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\crypto.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\friend.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\glue.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\health_cli.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\health_srv.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\heartbeat.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\light_model.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\lpn.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\mesh.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\model_cli.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\model_srv.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\net.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\nodes.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\pb_adv.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\pb_gatt.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\prov.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\prov_device.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\provisioner.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\proxy.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\rpl.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\settings.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\shell.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\subnet.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\mesh\src\transport.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\services\ans\src\ble_svc_ans.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\services\bas\src\ble_svc_bas.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\services\dis\src\ble_svc_dis.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\services\gap\src\ble_svc_gap.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\services\gatt\src\ble_svc_gatt.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\services\ias\src\ble_svc_ias.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\services\ipss\src\ble_svc_ipss.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\services\lls\src\ble_svc_lls.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_att.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_att_clt.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_att_cmd.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_att_svr.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_eddystone.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_gap.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_gattc.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_gatts.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_gatts_lcl.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_adv.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_atomic.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_cfg.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_conn.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_flow.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_hci.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_hci_cmd.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_hci_evt.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_hci_util.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_id.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_log.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_mbuf.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_misc.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_mqueue.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_periodic_sync.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_pvcy.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_resolv.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_shutdown.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_startup.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_hs_stop.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_ibeacon.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_l2cap.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_l2cap_coc.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_l2cap_sig.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_l2cap_sig_cmd.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_monitor.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_sm.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_sm_alg.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_sm_cmd.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_sm_lgcy.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_sm_sc.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_store.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_store_util.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\src\ble_uuid.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\store\config\src\ble_store_config.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\store\config\src\ble_store_config_conf.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\store\config\src\ble_store_nvs.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\host\util\src\addr.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\nimble\transport\ram\src\ble_hci_ram.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\nimble\src\endian.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\nimble\src\hal_timer.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\nimble\src\hal_uart.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\nimble\src\mem.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\nimble\src\nimble_port.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\nimble\src\os_cputime.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\nimble\src\os_cputime_pwr2.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\nimble\src\os_mbuf.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\nimble\src\os_mempool.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\nimble\src\os_msys_init.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\npl\freertos\src\nimble_port_freertos.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\NimBLE-Arduino@1.4.1\nimble\porting\npl\freertos\src\npl_os_freertos.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc4e\ESP32-BLE-Gamepad\BleConnectionStatus.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc4e\ESP32-BLE-Gamepad\BleGamepad.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc4e\ESP32-BLE-Gamepad\BleGamepadConfiguration.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libbe4\SPI\SPI.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libf14\Wire\Wire.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\U8g2lib.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\U8x8lib.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\mui.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\mui_u8g2.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_bitmap.c.o
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESP32-BLE-Gamepad/BleGamepadConfiguration.cpp: In constructor 'BleGamepadConfiguration::BleGamepadConfiguration()':
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESP32-BLE-Gamepad/BleGamepadConfiguration.cpp:21:79: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
_hardwareRevision("1.0.0")
^
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESP32-BLE-Gamepad/BleGamepadConfiguration.cpp:21:79: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESP32-BLE-Gamepad/BleGamepadConfiguration.cpp:21:79: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESP32-BLE-Gamepad/BleGamepadConfiguration.cpp:21:79: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESP32-BLE-Gamepad/BleGamepadConfiguration.cpp:21:79: warning: ISO C++ forbids converting a string constant to 'char*' [-Wwrite-strings]
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_box.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_buffer.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_button.c.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libbe4\libSPI.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_circle.c.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libc4e\libESP32-BLE-Gamepad.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_cleardisplay.c.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libf14\libWire.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_d_memory.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_d_setup.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_font.c.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\libNimBLE-Arduino@1.4.1.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libbe4\libSPI.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libf14\libWire.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libc4e\libESP32-BLE-Gamepad.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib939\libNimBLE-Arduino@1.4.1.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_fonts.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_hvline.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_input_value.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_intersection.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_kerning.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_line.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_ll_hvline.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_message.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_polygon.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_selection_list.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8g2_setup.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8log.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8log_u8g2.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8log_u8x8.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_8x8.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_byte.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_cad.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_capture.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_a2printer.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_gp1247ai.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_gp1287ai.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_gu800.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_hd44102.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_il3820_296x128.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ist3020.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ist3088.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ist7920.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ks0108.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_lc7981.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ld7032_60x32.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ls013b7dh03.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_max7219.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_pcd8544_84x48.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_pcf8812.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_pcf8814_hx1230.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_s1d15721.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_s1d15e06.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_sbn1661.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_sed1330.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_sh1106_64x32.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_sh1106_72x40.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_sh1107.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_sh1108.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_sh1122.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1305.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1306_128x32.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1306_128x64_noname.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1306_2040x16.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1306_48x64.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1306_64x32.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1306_64x48.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1306_72x40.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1306_96x16.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1306_96x40.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1309.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1316.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1317.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1318.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1320.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1322.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1325.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1326.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1327.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1329.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1606_172x72.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_ssd1607_200x200.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st7511.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st75160.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st75256.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st7528.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st75320.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st7565.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st7567.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st7571.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st7586s_erc240160.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st7586s_jlx384160.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st7586s_s028hn118a.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st7586s_ymc240160.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st7588.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_st7920.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_t6963.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_uc1601.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_uc1604.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_uc1608.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_uc1609.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_uc1610.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_uc1611.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_uc1617.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_uc1638.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_uc1701_dogs102.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_d_uc1701_mini12864.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_debounce.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_display.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_fonts.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_gpio.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_input_value.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_message.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_selection_list.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_setup.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_string.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_u16toa.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\U8g2\clib\u8x8_u8toa.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\Arduino_DataBus.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\Arduino_G.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\Arduino_GFX.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\Arduino_GFX_Library.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\libU8g2.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\Arduino_TFT.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\Arduino_TFT_18bit.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\canvas\Arduino_Canvas.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\canvas\Arduino_Canvas_3bit.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\canvas\Arduino_Canvas_Indexed.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\canvas\Arduino_Canvas_Mono.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_AVRPAR8.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\liba62\libU8g2.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32LCD16.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32LCD8.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32PAR16.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32PAR16Q.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32PAR16QQ.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32PAR8.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32PAR8Q.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32PAR8QQ.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32RGBPanel.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32S2PAR16.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32S2PAR16Q.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32S2PAR8.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32S2PAR8Q.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP32SPI.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_ESP8266SPI.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_HWSPI.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_NRFXSPI.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_RPiPicoPAR16.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_RPiPicoPAR8.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_RPiPicoSPI.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_RTLPAR8.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_STM32PAR8.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_SWPAR8.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_SWSPI.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\databus\Arduino_mbedSPI.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_GC9106.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_GC9107.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_GC9503V_RGBPanel.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_GC9A01.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_HX8347C.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_HX8347D.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_HX8352C.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_HX8357A.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_HX8357B.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ILI9225.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ILI9331.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ILI9341.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ILI9342.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ILI9481_18bit.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ILI9486.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ILI9486_18bit.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ILI9488.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ILI9488_18bit.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ILI9488_3bit.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ILI9806.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_JBT6K71.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_NT35310.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_NT35510.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_NT39125.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_R61529.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_RPi_DPI_RGBPanel.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_SEPS525.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_SSD1283A.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_SSD1331.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_SSD1351.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ST7701_RGBPanel.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ST7735.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ST7789.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\GFX Library for Arduino\display\Arduino_ST7796.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libec2\SPIFFS\SPIFFS.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib44d\CRC\crc.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib8cd\logging\logging.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib5f1\OPTIONS\EspFlashStream.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib5f1\OPTIONS\hardware.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib5f1\OPTIONS\options.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libec2\libSPIFFS.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc38\CrsfProtocol\dummy.c.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libec2\libSPIFFS.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f6\MSP\msp.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib44d\libCRC.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib1d7\TelemetryProtocol\dummy.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib95f\FEC\FEC.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib8cd\liblogging.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib44d\libCRC.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libc38\libCrsfProtocol.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib95f\FEC\hamming.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib8cd\liblogging.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libc38\libCrsfProtocol.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libe01\RFAMP\RFAMP_hal.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib95f\libFEC.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib95f\libFEC.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib978\SPIEx\SPIEx.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libff6\SX1280Driver\SX1280.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f6\libMSP.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libff6\SX1280Driver\SX1280_hal.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib0f6\libMSP.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib80d\DEVICE\device.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib5da\DAC\DAC.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib823\POWERMGNT\POWERMGNT.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib978\libSPIEx.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libe01\libRFAMP.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib978\libSPIEx.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libe01\libRFAMP.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libbcb\Handset\AutoDetect.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libbcb\Handset\CRSF.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libbcb\Handset\CRSFHandset.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib80d\libDEVICE.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib80d\libDEVICE.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib5da\libDAC.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libbcb\Handset\PPMHandset.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib5da\libDAC.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libbcb\Handset\devHandset.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libacf\OTA\OTA.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib823\libPOWERMGNT.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib823\libPOWERMGNT.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib84b\LBT\LBT.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\libGFX Library for Arduino.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib5f8\CRSF2MSP\crsf2msp.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib5f8\CRSF2MSP\msp2crsf.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libb0b\HWTIMER\ESP32_hwTimer.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libbcb\libHandset.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib1d7\libTelemetryProtocol.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libb0b\HWTIMER\ESP8266_hwTimer.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libb0b\HWTIMER\STM32_hwTimer.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libc0e\libGFX Library for Arduino.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libbcb\libHandset.a
lib/OPTIONS/options.cpp: In function 'void saveOptions(Stream&, bool)':
lib/OPTIONS/options.cpp:216:52: warning: 'ArduinoJson::V704PB2::JsonArray ArduinoJson::V704PB2::JsonDocument::createNestedArray(TChar*) [with TChar = const char]' is deprecated: use doc[key].to<JsonArray>() instead [-Wdeprecated-declarations]
JsonArray uid = doc.createNestedArray("uid");
^
In file included from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson.hpp:33,
from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson.h:9,
from lib/OPTIONS/options.cpp:183:
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp:305:13: note: declared here
JsonArray createNestedArray(TChar* key) {
^~~~~~~~~~~~~~~~~
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib9a2\PWM\PWM.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libacf\libOTA.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib9a2\PWM\PWM_ESP32.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib84b\libLBT.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libacf\libOTA.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib84b\libLBT.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib9a2\PWM\PWM_ESP8266.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib5f8\libCRSF2MSP.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib9a2\PWM\waveform_8266.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib5f8\libCRSF2MSP.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libe55\VTXSPI\devVTXSPI.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib79e\MSPVTX\devMSPVTX.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib79e\MSPVTX\freqTable.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libc6c\TCPSOCKET\tcpsocket.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libe55\libVTXSPI.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libe55\libVTXSPI.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib795\Telemetry\telemetry.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libff6\libSX1280Driver.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib5f1\libOPTIONS.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib5f1\libOPTIONS.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libff6\libSX1280Driver.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib28c\EEPROM\EEPROM.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libc6c\libTCPSOCKET.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib9a2\libPWM.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libc6c\libTCPSOCKET.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib9a2\libPWM.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib316\elrs_eeprom\elrs_eeprom.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib841\CONFIG\config.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib79e\libMSPVTX.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib79e\libMSPVTX.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libfee\MAVLink\MAVLink.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib07c\Backpack\devBackpack.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib795\libTelemetry.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib795\libTelemetry.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib8a5\BUTTON\devButton.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib316\libelrs_eeprom.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib28c\libEEPROM.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib316\libelrs_eeprom.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib28c\libEEPROM.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib2d1\BLE\devBLE.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib941\BUZZER\devBuzzer.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib841\libCONFIG.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib1d7\libTelemetryProtocol.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib841\libCONFIG.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib620\GSENSOR\devGsensor.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib620\GSENSOR\gsensor.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib620\GSENSOR\stk8baxx.cpp.o
In file included from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/common.h:2717,
from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/mavlink.h:32,
from lib/MAVLink/MAVLink.h:4,
from lib/MAVLink/MAVLink.cpp:1:
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/./mavlink_msg_command_int.h: In function 'uint16_t buildMAVLinkELRSModeChange(uint8_t, uint8_t*)':
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/./mavlink_msg_command_int.h:282:207: warning: 'commandMsg.__mavlink_command_int_t::autocontinue' is used uninitialized in this function [-Wuninitialized]
return mavlink_msg_command_int_pack(system_id, component_id, msg, command_int->target_system, command_int->target_component, command_int->frame, command_int->command, command_int->current, command_int->autocontinue, command_int->param1, command_int->param2, command_int->param3, command_int->param4, command_int->x, command_int->y, command_int->z);
~~~~~~~~~~~~~^~~~~~~~~~~~
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/./mavlink_msg_command_int.h:282:143: warning: '*((void*)& commandMsg +32)' is used uninitialized in this function [-Wuninitialized]
return mavlink_msg_command_int_pack(system_id, component_id, msg, command_int->target_system, command_int->target_component, command_int->frame, command_int->command, command_int->current, command_int->autocontinue, command_int->param1, command_int->param2, command_int->param3, command_int->param4, command_int->x, command_int->y, command_int->z);
~~~~~~~~~~~~~^~~~~
In file included from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/common.h:2717,
from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/mavlink.h:32,
from lib/MAVLink/MAVLink.h:4,
from lib/MAVLink/MAVLink.cpp:1:
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/./mavlink_msg_command_int.h:282:276: warning: 'commandMsg.__mavlink_command_int_t::param3' is used uninitialized in this function [-Wuninitialized]
return mavlink_msg_command_int_pack(system_id, component_id, msg, command_int->target_system, command_int->target_component, command_int->frame, command_int->command, command_int->current, command_int->autocontinue, command_int->param1, command_int->param2, command_int->param3, command_int->param4, command_int->x, command_int->y, command_int->z);
~~~~~~~~~~~~~^~~~~~
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/./mavlink_msg_command_int.h:282:297: warning: 'commandMsg.__mavlink_command_int_t::param4' is used uninitialized in this function [-Wuninitialized]
return mavlink_msg_command_int_pack(system_id, component_id, msg, command_int->target_system, command_int->target_component, command_int->frame, command_int->command, command_int->current, command_int->autocontinue, command_int->param1, command_int->param2, command_int->param3, command_int->param4, command_int->x, command_int->y, command_int->z);
~~~~~~~~~~~~~^~~~~~
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/./mavlink_msg_command_int.h:282:318: warning: 'commandMsg.__mavlink_command_int_t::x' is used uninitialized in this function [-Wuninitialized]
return mavlink_msg_command_int_pack(system_id, component_id, msg, command_int->target_system, command_int->target_component, command_int->frame, command_int->command, command_int->current, command_int->autocontinue, command_int->param1, command_int->param2, command_int->param3, command_int->param4, command_int->x, command_int->y, command_int->z);
~~~~~~~~~~~~~^
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/./mavlink_msg_command_int.h:282:334: warning: 'commandMsg.__mavlink_command_int_t::y' is used uninitialized in this function [-Wuninitialized]
return mavlink_msg_command_int_pack(system_id, component_id, msg, command_int->target_system, command_int->target_component, command_int->frame, command_int->command, command_int->current, command_int->autocontinue, command_int->param1, command_int->param2, command_int->param3, command_int->param4, command_int->x, command_int->y, command_int->z);
~~~~~~~~~~~~~^
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/c_library_v2/common/./mavlink_msg_command_int.h:282:350: warning: 'commandMsg.__mavlink_command_int_t::z' is used uninitialized in this function [-Wuninitialized]
return mavlink_msg_command_int_pack(system_id, component_id, msg, command_int->target_system, command_int->target_component, command_int->frame, command_int->command, command_int->current, command_int->autocontinue, command_int->param1, command_int->param2, command_int->param3, command_int->param4, command_int->x, command_int->y, command_int->z);
~~~~~~~~~~~~~^
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib483\LED\devLED.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libb0b\libHWTIMER.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libfee\libMAVLink.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib483\LED\devRGB.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libb0b\libHWTIMER.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libfee\libMAVLink.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib483\LED\esp32rgb.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib07c\libBackpack.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib8a5\libBUTTON.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib8a5\libBUTTON.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib07c\libBackpack.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libff3\FHSS\FHSS.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libff3\FHSS\random.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libe02\LUA\lua.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib2d1\libBLE.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib941\libBUZZER.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libe02\LUA\rx_devLUA.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libe02\LUA\rxtx_devLua.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libe02\LUA\tx_devLUA.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib2d1\libBLE.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib941\libBUZZER.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib6c4\POWER_DETECT\devPDET.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib483\libLED.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libff3\libFHSS.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib620\libGSENSOR.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib483\libLED.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libff3\libFHSS.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib620\libGSENSOR.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libaee\THERMAL\devThermal.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libaee\THERMAL\lm75a.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libaee\THERMAL\rpm.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libaee\THERMAL\thermal.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib7c8\SCREEN\FiveWayButton\FiveWayButton.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib7c8\SCREEN\OLED\oleddisplay.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib7c8\SCREEN\TFT\tftdisplay.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib7c8\SCREEN\devScreen.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib7c8\SCREEN\display.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib7c8\SCREEN\fsm.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libe02\libLUA.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib6c4\libPOWER_DETECT.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib6c4\libPOWER_DETECT.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libe02\libLUA.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib7c8\SCREEN\menu.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib801\VTX\devVTX.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libb42\DNSServer\DNSServer.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib5fa\ESPmDNS\ESPmDNS.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib75c\Update\HttpsOTAUpdate.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib75c\Update\Updater.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libcd6\WIFI\devWIFI.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libb42\libDNSServer.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib801\libVTX.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libcd6\WIFI\lr1121.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libcd6\WIFI\wifiJoystick.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\lib439\StubbornReceiver\stubborn_receiver.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libb42\libDNSServer.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib801\libVTX.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib5fa\libESPmDNS.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\libfaf\StubbornSender\stubborn_sender.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib5fa\libESPmDNS.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\Esp.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib75c\libUpdate.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\FirmwareMSC.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib439\libStubbornReceiver.a
In file included from lib/SCREEN/OLED/oleddisplay.cpp:7:
lib/SCREEN/OLED/XBMStrings.h:138:24: warning: 'elrs64' defined but not used [-Wunused-variable]
static unsigned char elrs64[] = {
^~~~~~
lib/SCREEN/OLED/XBMStrings.h:121:24: warning: 'elrs32' defined but not used [-Wunused-variable]
static unsigned char elrs32[] = {
^~~~~~
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib75c\libUpdate.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib439\libStubbornReceiver.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\FunctionalInterrupt.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\HWCDC.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libfaf\libStubbornSender.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\HardwareSerial.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libfaf\libStubbornSender.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\IPAddress.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\IPv6Address.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\MD5Builder.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\Print.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\Stream.cpp.o
In file included from lib/WIFI/devWIFI.cpp:7:
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESPAsyncWebServer-esphome/src/AsyncJson.h:88:25: warning: 'DynamicJsonDocument' is deprecated: use JsonDocument instead [-Wdeprecated-declarations]
DynamicJsonDocument _jsonBuffer;
^~~~~~~~~~~
In file included from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson.hpp:53,
from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson.h:9,
from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESPAsyncWebServer-esphome/src/AsyncJson.h:37,
from lib/WIFI/devWIFI.cpp:7:
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson/compatibility.hpp:125:58: note: declared here
class ARDUINOJSON_DEPRECATED("use JsonDocument instead") DynamicJsonDocument
^~~~~~~~~~~~~~~~~~~
In file included from lib/WIFI/devWIFI.cpp:7:
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESPAsyncWebServer-esphome/src/AsyncJson.h: In constructor 'AsyncJsonResponse::AsyncJsonResponse(bool, size_t)':
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESPAsyncWebServer-esphome/src/AsyncJson.h:110:47: warning: 'ArduinoJson::V704PB2::JsonArray ArduinoJson::V704PB2::JsonDocument::createNestedArray()' is deprecated: use add<JsonArray>() instead [-Wdeprecated-declarations]
_root = _jsonBuffer.createNestedArray();
^
In file included from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson.hpp:33,
from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson.h:9,
from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESPAsyncWebServer-esphome/src/AsyncJson.h:37,
from lib/WIFI/devWIFI.cpp:7:
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp:298:13: note: declared here
JsonArray createNestedArray() {
^~~~~~~~~~~~~~~~~
In file included from lib/WIFI/devWIFI.cpp:7:
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESPAsyncWebServer-esphome/src/AsyncJson.h:112:48: warning: 'ArduinoJson::V704PB2::JsonObject ArduinoJson::V704PB2::JsonDocument::createNestedObject()' is deprecated: use add<JsonObject>() instead [-Wdeprecated-declarations]
_root = _jsonBuffer.createNestedObject();
^
In file included from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson.hpp:33,
from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson.h:9,
from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESPAsyncWebServer-esphome/src/AsyncJson.h:37,
from lib/WIFI/devWIFI.cpp:7:
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson/Document/JsonDocument.hpp:318:14: note: declared here
JsonObject createNestedObject() {
^~~~~~~~~~~~~~~~~~
In file included from lib/WIFI/devWIFI.cpp:7:
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESPAsyncWebServer-esphome/src/AsyncJson.h: In member function 'virtual void AsyncCallbackJsonWebHandler::handleRequest(AsyncWebServerRequest*)':
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESPAsyncWebServer-esphome/src/AsyncJson.h:224:39: warning: 'DynamicJsonDocument' is deprecated: use JsonDocument instead [-Wdeprecated-declarations]
DynamicJsonDocument jsonBuffer(this->maxJsonBufferSize);
^
In file included from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson.hpp:53,
from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson.h:9,
from .pio/libdeps/Unified_ESP32_2400_TX_via_UART/ESPAsyncWebServer-esphome/src/AsyncJson.h:37,
from lib/WIFI/devWIFI.cpp:7:
.pio/libdeps/Unified_ESP32_2400_TX_via_UART/ArduinoJson/src/ArduinoJson/compatibility.hpp:125:58: note: declared here
class ARDUINOJSON_DEPRECATED("use JsonDocument instead") DynamicJsonDocument
^~~~~~~~~~~~~~~~~~~
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libaee\libTHERMAL.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\StreamString.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\Tone.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libaee\libTHERMAL.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\USB.cpp.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\lib7c8\libSCREEN.a
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libcd6\libWIFI.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\USBCDC.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\USBMSC.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\WMath.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\WString.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\base64.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\cbuf.cpp.o
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libcd6\libWIFI.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\lib7c8\libSCREEN.a
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-adc.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-bt.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-cpu.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-dac.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-gpio.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-i2c-slave.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-i2c.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-ledc.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-matrix.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-misc.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-psram.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-rgb-led.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-rmt.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-sigmadelta.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-spi.c.o
C:/Users/andreas/.platformio/packages/framework-arduinoespressif32/cores/esp32/esp32-hal-rmt.c:105:25: warning: 'g_rmt_objlocks' defined but not used [-Wunused-variable]
static xSemaphoreHandle g_rmt_objlocks[MAX_CHANNELS] = {
^~~~~~~~~~~~~~
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-time.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-timer.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-tinyusb.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-touch.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\esp32-hal-uart.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\firmware_msc_fat.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\libb64\cdecode.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\libb64\cencode.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\main.cpp.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\stdlib_noniso.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\wiring_pulse.c.o
Compiling .pio\build\Unified_ESP32_2400_TX_via_UART\FrameworkArduino\wiring_shift.c.o
Archiving .pio\build\Unified_ESP32_2400_TX_via_UART\libFrameworkArduino.a
Indexing .pio\build\Unified_ESP32_2400_TX_via_UART\libFrameworkArduino.a
Linking .pio\build\Unified_ESP32_2400_TX_via_UART\firmware.elf
Retrieving maximum program size .pio\build\Unified_ESP32_2400_TX_via_UART\firmware.elf
Checking size .pio\build\Unified_ESP32_2400_TX_via_UART\firmware.elf
Advanced Memory Usage is available via "PlatformIO Home > Project Inspect"
RAM: [== ] 21.0% (used 68732 bytes from 327680 bytes)
Flash: [======== ] 79.5% (used 1563701 bytes from 1966080 bytes)
copyBootApp0bin([".pio\build\Unified_ESP32_2400_TX_via_UART\firmware.bin"], [".pio\build\Unified_ESP32_2400_TX_via_UART\firmware.elf"])
Building .pio\build\Unified_ESP32_2400_TX_via_UART\firmware.bin
esptool.py v4.5.1
Creating esp32 image...
Merged 25 ELF sections
Successfully created esp32 image.
appendConfiguration([".pio\build\Unified_ESP32_2400_TX_via_UART\firmware.bin"], [".pio\build\Unified_ESP32_2400_TX_via_UART\firmware.elf"])
1) AXIS Thor 2.4GHz TX
2) BETAFPV 2.4GHz Nano TX
3) BETAFPV 2.4GHz Nano TX V2
4) BETAFPV 2.4GHz Micro TX
5) BETAFPV 2.4GHz 1W Micro TX
6) BETAFPV 2.4GHz LiteRadio 3 Pro
7) BETAFPV SuperG 2.4GHz Gemini TX
8) DIY Mini ESP32 SX1280 2.4GHz TX
9) DIY ESP32 E28 2.4GHz TX
10) DIY ESP32 F27 2.4GHz TX
11) DIY ESP32 BLE Joystick TX
12) EMAX OLED 2.4GHz TX
13) EMAX Nano 2.4GHz TX
14) Generic Full-duplex 2.4GHz TX
15) Generic ESP32 2.4Ghz Gemini TX
16) HappyModel ES24 2.4GHz TX
17) HappyModel ES24 Pro 2.4GHz TX
18) HappyModel ES24 Slim Pro 2.4GHz TX
19) HELLORADIO V16 Internal 2.4GHz TX
20) HGLRC Hermes 2.4GHz TX
21) iFlight 2.4GHz TX
22) iFlight 2.4GHz TX V2
23) Jumper AION T-20 2.4GHz TX
24) Jumper AION T-20 2.4GHz V2 TX
25) Jumper AION T-ProS 2.4GHz TX
26) Jumper AION T-15 2.4GHz TX
27) Jumper AION T-14 2.4GHz TX
28) Jumper Gemini T-20 2.4GHz TX
29) Jumper AION T-Pro 2.4GHz TX
30) Jumper AION T-Lite 2.4GHz TX
31) Jumper AION Nano 2.4GHz TX
32) NamimnoRC Flash OLED 2.4GHz TX
33) QuadKopters JR 2.4GHz TX
34) QuadKopters Slim 2.4GHz TX
35) RadioMaster Zorro Internal 2.4GHz TX
36) RadioMaster Pocket Internal 2.4GHz TX
37) RadioMaster MT12 Internal 2.4GHz TX
38) RadioMaster TX16S Internal 2.4GHz TX
39) RadioMaster TX12 Internal 2.4GHz TX
40) RadioMaster Ranger 2.4GHz TX
41) RadioMaster Ranger Micro 2.4GHz TX
42) RadioMaster Ranger Nano 2.4GHz TX
43) RadioMaster Boxer Internal 2.4GHz TX
44) Vantac Lite 2.4GHz TX
Choose a configuration to load into the firmware file (press enter to leave bare)
9
============================== [SUCCESS] Took 334.01 seconds ==============================
Environment Status Duration
------------------------------ -------- ------------
Unified_ESP32_2400_TX_via_UART SUCCESS 00:05:34.005
============================== 1 succeeded in 00:05:34.005 ==============================
* Terminal will be reused by tasks, press any key to close it.
Accelerometer, Gyro and IMU Buying Guide
Products for Movement – IMU
SparkFun 9DoF Razor IMU M0
9DoF Razor IMU M0 Hookup Guide
github.com/sparkfun/9DOF_Razor_IMU/, 9DOF Razor IMU available from SparkFun Electronics
github.com/sparkfun/SparkFun_MPU-9250-DMP_Arduino_Library, Arduino library for the MPU-9250 enabling its digital motion process (DMP) features.
SparkFun 9DoF IMU Breakout – ICM-20948 (Qwiic)
SparkFun 9DoF IMU (ICM-20948) Breakout Hookup Guide
github.com/sparkfun/SparkFun_Qwiic_9DoF_IMU_Breakout, The ICM20948 is the next IMU in the lineup from Invensense, following the MPU-9250
github.com/sparkfun/Qwiic_9DoF_IMU_ICM20948_Py, Python module for the SparkFun 9DoF IMU Breakout – ICM-20948 (Qwiic)
SparkFun OpenLog Artemis
SparkFun OpenLog Artemis (without IMU)
MPU9250 module with Arduino Tutorials -Accelerometer, gyroscope and Magnetometer sensor
IMU MPU-9250 + Arduino + AHRS (Madgwick’s algorithm)
MPU9250 Test
3D Orientation-Rotation Tracking using MPU9250
MPU9250 initialization and gyro zero drift
MPU-9250 and Arduino (9-Axis IMU), with Source Code for Arduino + Client!!
Open source IMU and AHRS algorithms, Madgwick algorithm, sensor fusion algorithm, 2012
LabNote: MPU6050 Based IMU Arm Motion Capture + Blender Realtime Sync
https://github.com/T-K-233/Dual-MPU6050-Motion-Sync
measurement of motion
is essential to understanding the orientation of an object
conda create --name QuatAnimation python=3.12 conda activate QuatAnimation # conda cannot use pyside6-addons and pyside6-essentials!! # conda install -c conda-forge numpy pyside6 pyqtgraph pyopengl pip install pyside6 matplotlib numpy pyqtgraph pyopengl
PyQt6 vs PySide6
Plotting with PyQtGraph, Create custom plots in PySide6 with PyQtGraph
Pyqtgraph GLMeshItem set rotation with quaternion
ImportError: No module named OpenGL.GL
opengl glLineWidth() doesn’t change size of lines
Quaternions and spatial rotation
CRSF: TBS Crossfire, more specifically in our case most often referring to the communication protocol between
Supported receiver protocols: CRSF, SBUS, SUMD, HoTT Telemetry, MAVLink, and PWM
ExpressLRS is written in C++ using the Arduino framework.
Glossary
Toolchain Setup
DIY Transmitter
SimpleTX introducion
Arduino Based Simple Transmitter for ELRS TX Module
CLOSED – ExpressLRS DIY Transmitter Module Giveaway
ELRS / CRSF HID Joystick with Pi Pico
ExpressLRS Configurator Diy Firmware
ExpressLRS 2 4Ghz Transmitter Module Build and Flash
github.com/ExpressLRS/ExpressLRS/, ESP32/ESP8285-based High-Performance Radio Link for RC applications
github.com/kkbin505/Arduino-Transmitter-for-ELRS/tree/SimpleTX_ELRS_3.X_Test, Arduino based RC transmitter for ELRS external TX Module by kkbin505
github.com/dbloemhard/Arduino-Transmitter-for-ELRS3.x, Arduino based RC transmitter for ELRS external TX Module, fork of Arduino-Transmitter-for-ELRS
github.com/danxdz/simpleTx_esp32/, ESP32 ELRS handset, based on kkbin505 work
github.com/cruwaller/elrs_handset/, Custom DIY dual band (900/2400MHz) transmitter (handset) based on ExpressLRS.
github.com/cruwaller/ExpressLRS, ESP32/ESP8285 based LoRa Radio Link
github.com/mikeneiderhauser/CRSFJoystick, Arduino code that runs on a Pi Pico (2040) to emulate a USB HID Joystick
github.com/Sam4uk/CRSF
DIY RC radio link: the problem of protocols, Paweł Spychalski, Nov 2, 2017
FPV Protocols Explained (CRSF, SBUS, DSHOT, ACCST, PPM, PWM and more), 1st April 2021
github.com/crsf-wg/crsf/wiki, CRSF Protocol Specifications
github.com/ExpressLRS/ExpressLRS/blob/master/src/lib/CrsfProtocol/crsf_protocol.h
github.com/britannio/pico_crsf/blob/main/crsf.h
github.com/CapnBry/CRServoF/tree/main/lib/CrsfSerial
![]() |
![]() |
![]() |
![]() |
RandomNerdTutorials.com: ESP32 Pinout Reference: Which GPIO pins should you use?
LastMinuteEngineers.com: ESP32-WROOM-32 Pinout Reference
github.com/earlephilhower/arduino-pico, Raspberry Pi Pico Arduino core, for all RP2040 and RP2350 boards
Raspberry Pi Pico-series Microcontrollers
Arduino Pico: Serial Ports (USB and UART)
Serial is the USB serial port
Serial1 is UART0, and Serial2 is UART1
Waveshare RP2040-Zero
AliExpress: TZT RP2040-Zero
![]() |
![]() |
![]() |
![]() |
![]() |
How to build a sub 250g 3.5-inch freestyle FPV Drone for $160 in 2024, Hoarder Sam
FlyFishRC Volador VX3 VX3.5 O3 FPV Frame 3inch 3.5inch Compatible with DJI O3 Air Unit For FPV RC Freestyle Quadcopter Kit
JHEMCU ExpressLRS RX24T 2.4G ELRS Radio Nano Long Range Receiver T-type Antenna 11X18mm for RC FPV Racing Freestyle Drone
Caddx Ratel 2 V2 FPV Camera Ratel2 2.1mm Lens 16:9/4:3 NTSC/PAL Switchable With Replacement Lens Micro FPV Camera Drone
SpeedyBee TX800 VTX 5.8G 48CH PitMode 25mW/200mW/400mW/800mW Output Long Range Transmitter Tramp Support For RC FPV Racing Drone
4PCS T-MOTOR P1604 KV2850 6S/KV3800 4S Brushless Motor 1.5mm Shaft 9*9mm Holes For RC FPV Freestyle 3.5inch Sub 250g Drone
2pairs HQ 3.5×2.5×3 Tri-blade Prop HQPROP 3525 3.5inch FPV Propeller
SpeedyBee F405 Mini Flight Controller with BLS 35A Mini V2 20×20 4-in-1 ESC for RC FPV Racing Drone
![]() |
![]() |
![]() |
![]() |
![]() |
Open Source Motion Capture for Autonomous Drones
github.com/jyjblrd/Low-Cost-Mocap
Open Source Motion Capture for Autonomous Drones, $20 system for room-scale millimeter level precision motion capture
Build a low-cost motion capture system
Crazyflie 2.1, $225.00
Crazyflie 2.1+, $240.00
ESPcopter, $149.00
F3 EVO Brush Flight Controller, Original
HappyModel SP Racing F3 EVO Brushed Micro FC, Original
F3 EVO Micro Brushed Flight Control Board
Tiny 32bits 2S F3 Brushed Flight Control Board, Based On SP RACING F3 EVO
SP RACING F3 EVO Clone
Hardware
How to use your Eachine Flying Frog Q90C radio with an FPV Simulator like FPV Freerider &Velocidrone
Eachine Q90C FlyingFrog FPV Racing Quadcopter Manual
github.com/pascallanger/DIY-Multiprotocol-TX-Module/blob/master/Protocols_Details.md, ## Q90C – *72*
github.com/goebish/XN297_dumper