mirror of
https://github.com/liquidraver/ZephCore.git
synced 2026-09-01 19:08:18 +00:00
license "refactor" :)
This commit is contained in:
@@ -243,8 +243,13 @@ zephcore/
|
||||
|
||||
## License
|
||||
|
||||
Same license as the upstream MeshCore project.
|
||||
MIT License — see [`zephcore/LICENSE`](zephcore/LICENSE). Same license as the
|
||||
upstream MeshCore project, which this work relies heavily on (see the
|
||||
[official meshcore repo](https://github.com/meshcore-dev/MeshCore/)).
|
||||
|
||||
A few vendored dependencies carry their own (compatible) licenses — see the
|
||||
notice at the bottom of `LICENSE` for details (Monocypher, Zephyr patches).
|
||||
|
||||

|
||||
|
||||
(FYI this is sarcasm, the whole project is 99,9% claude and cursor backed, relying heavily on the [official meshcore repo](https://github.com/meshcore-dev/MeshCore/) and the work they do in it)
|
||||
(FYI the whole project is 99,9% claude and cursor backed, relying heavily on the [official meshcore repo](https://github.com/meshcore-dev/MeshCore/) and the work they do in it)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
cmake_minimum_required(VERSION 3.20.0)
|
||||
|
||||
|
||||
+1
-1
@@ -1,4 +1,4 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
source "$(ZEPHYR_BASE)/Kconfig.zephyr"
|
||||
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# SPDX-License-Identifier: MIT
|
||||
#
|
||||
# DT-driven PSRAM auto-enable for ESP32 boards.
|
||||
#
|
||||
|
||||
@@ -0,0 +1,32 @@
|
||||
MIT License
|
||||
|
||||
Copyright (c) 2025-2026 ZephCore contributors
|
||||
|
||||
Permission is hereby granted, free of charge, to any person obtaining a copy
|
||||
of this software and associated documentation files (the "Software"), to deal
|
||||
in the Software without restriction, including without limitation the rights
|
||||
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
||||
copies of the Software, and to permit persons to whom the Software is
|
||||
furnished to do so, subject to the following conditions:
|
||||
|
||||
The above copyright notice and this permission notice shall be included in all
|
||||
copies or substantial portions of the Software.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
||||
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
||||
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
||||
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
||||
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
||||
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
||||
SOFTWARE.
|
||||
|
||||
---
|
||||
|
||||
This repository vendors third-party code under separate, compatible licenses:
|
||||
|
||||
- `lib/monocypher/` — Monocypher, by Loup Vaillant. Dual-licensed
|
||||
BSD-2-Clause OR CC0-1.0 (see file headers).
|
||||
- `patches/zephyr/*.patch` — diffs against Zephyr RTOS (Apache-2.0). The
|
||||
patches are applied to, and remain part of, the separately-licensed Zephyr
|
||||
source tree fetched via `west update`; they are not distributed as
|
||||
standalone files under this project's MIT license.
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore BLE Adapter — NUS service, advertising, security, TX/RX
|
||||
*
|
||||
* Security: SMP pairing with SC + MITM + Bonding, DisplayOnly IO (app_passkey).
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore BLE Adapter — NUS service, advertising, security, TX/RX
|
||||
*/
|
||||
#pragma once
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "ZephyrBoard.h"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Zephyr MainBoard base - nRF52840 DK and generic
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "ZephyrMillisecondClock.h"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Zephyr implementation of MillisecondClock
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "ZephyrRTCClock.h"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Zephyr software RTC - boot-relative time with settable offset
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Compact raw-I2C hardware-RTC auto-discovery. See ZephyrRTCDiscover.h.
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Boot-time hardware-RTC auto-discovery (compact raw-I2C reader).
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Zephyr DataStore - LittleFS-backed persistence with optional QSPI flash
|
||||
*
|
||||
* All platforms use DTS-automounted /lfs.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Zephyr DataStore - LittleFS-backed persistence with optional QSPI flash
|
||||
*
|
||||
* All platforms use DTS-automounted /lfs for identity, prefs, contacts.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Zephyr GPS Manager - GNSS power management, fix acquisition, constellation config
|
||||
*
|
||||
* Event-driven state machine with no polling loops:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Zephyr GPS Manager - GNSS power management, fix acquisition, constellation config
|
||||
*
|
||||
* Event-driven state machine: OFF → ACQUIRING → STANDBY → ACQUIRING → ...
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephyrMQTTPublisher — MQTT client thread for the Observer role.
|
||||
*
|
||||
* Thread flow:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephyrMQTTPublisher — MQTT client thread for the Observer role.
|
||||
*
|
||||
* Dedicated thread: waits for WiFi ready, resolves broker hostname,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* WiFi OTA Firmware Update
|
||||
*
|
||||
* Starts a WiFi AP + HTTP server for browser-based firmware upload.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* WiFi OTA Firmware Update — Public API
|
||||
*
|
||||
* Starts a WiFi AP + HTTP server for browser-based firmware upload.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* LR1110 hardware hooks for LoRaRadioBase.
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore Radio adapter for LR1110/LR1120/LR1121 using Zephyr LoRa driver
|
||||
*
|
||||
* Thin wrapper around LoRaRadioBase — only hardware-specific hooks.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* LR2021 hardware hooks for LoRaRadioBase.
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore Radio adapter for LR2021 using Zephyr LoRa driver
|
||||
*
|
||||
* Thin wrapper around LoRaRadioBase — only hardware-specific hooks.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* LoRa radio base class — shared algorithms for all radio adapters.
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* LoRa radio base class — shared state and algorithms.
|
||||
* Subclasses implement hw*() primitives only.
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* SX126x hardware hooks for LoRaRadioBase — native Zephyr driver.
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore Radio adapter for SX126x (SX1261/SX1262/SX1268) using native Zephyr driver
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* SX127x hardware hooks for LoRaRadioBase — Zephyr loramac-node driver.
|
||||
*
|
||||
* The SX127x driver (loramac-node/sx127x.c) exposes only the standard
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore Radio adapter for SX127x (SX1272/SX1276/SX1278) using Zephyr loramac-node driver.
|
||||
*
|
||||
* The SX127x loramac-node driver supports the standard Zephyr LoRa API
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* LR11xx HAL implementation for Zephyr — ZephCore
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* LR11xx HAL for Zephyr — ZephCore
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* LR20xx HAL implementation for Zephyr - ZephCore
|
||||
*
|
||||
* Based on Semtech SWDR001 lr20xx_driver and the ZephCore lr11xx HAL.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* LR20xx HAL implementation for Zephyr - ZephCore
|
||||
*
|
||||
* Zephyr hardware context for the Semtech lr20xx_driver HAL interface.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Shared constants and utilities for all LoRa radio adapters.
|
||||
*
|
||||
* Anything duplicated between SX126xRadio and LR1110Radio belongs here.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* RNG::nextInt - shared implementation
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "ZephyrRNG.h"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Zephyr CSPRNG implementation
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Zephyr Environment & Power Sensors
|
||||
*
|
||||
* Auto-detects available sensors via Zephyr devicetree nodelabels.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Zephyr Environment & Power Sensors
|
||||
*
|
||||
* Environment: temperature, humidity, pressure
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Backward-compatibility shim — includes GPS manager + env sensors.
|
||||
* All callers can continue using #include "ZephyrSensorManager.h".
|
||||
*/
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore TCP companion transport — drop-in replacement for ZephyrBLE.
|
||||
*
|
||||
* Implements the exact zephcore_ble_* C API from adapters/ble/ZephyrBLE.h
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Copyright (c) 2026 ZephCore
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Native-Linux (native_sim) runtime setup.
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore USB CDC Companion Transport
|
||||
*
|
||||
* V3-framed USB CDC for companion mode. Extracted from main_companion.cpp.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore USB CDC Companion Transport
|
||||
*
|
||||
* V3-framed USB CDC for companion mode: ISR, ring buffer, frame parsing,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore — Unified USB CDC ACM init (companion + repeater + observer)
|
||||
*
|
||||
* See ZephyrUSBCDC.h for the contract. This implementation:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore — Unified USB CDC ACM init (companion + repeater + observer)
|
||||
*
|
||||
* Owns the USBD device + CDC ACM class registration, the usbd_msg_callback
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephyrWiFiStation — WiFi STA connection manager for the Observer role.
|
||||
*
|
||||
* Flow:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephyrWiFiStation — WiFi STA connection manager for the Observer role.
|
||||
*
|
||||
* Connects to a WPA2-PSK (or open) network, obtains a DHCP lease, syncs
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* CompanionMesh implementation
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* CompanionMesh - ZephCore Companion device application layer
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ObserverMesh — listen-only LoRa mesh node implementation.
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ObserverMesh — listen-only LoRa mesh node.
|
||||
*
|
||||
* Extends mesh::Dispatcher directly (no routing, no flooding, no ACL).
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* RepeaterDataStore - Filesystem storage for repeater
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* RepeaterDataStore - Filesystem storage for repeater
|
||||
*
|
||||
* Uses /lfs/repeater/ prefix to keep data separate from companion.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* RepeaterMesh - LoRa mesh repeater implementation
|
||||
*/
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* RepeaterMesh - LoRa mesh repeater implementation
|
||||
*
|
||||
* Extends mesh::Mesh with:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* RepeaterMesh region-definition CLI — the `region ...` command family and the
|
||||
* `region load` continuation-line parser.
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* RepeaterMesh MQTT uplink — WiFi/MQTT telemetry publishing for repeaters.
|
||||
*
|
||||
* Split out of RepeaterMesh.cpp for readability. Defines the RepeaterMesh
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* RoomServerMesh - LoRa mesh shared-room (BBS) server
|
||||
*
|
||||
* A store-and-forward shared message room. Clients log in with an admin or
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* RoomServerMesh - LoRa mesh shared-room (BBS) server
|
||||
*
|
||||
* Extends mesh::Mesh with:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* RoomServerMesh region-definition CLI — the `region ...` command family and the
|
||||
* `region load` continuation-line parser.
|
||||
*
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* ZephCore Observer — listen-only LoRa node with WiFi+MQTT forwarding.
|
||||
*
|
||||
* Every received LoRa packet is published to an MQTT broker in
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
#include "observer_creds.h"
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Observer runtime credentials — stored in LittleFS, configured via serial CLI.
|
||||
*
|
||||
* All connection parameters are runtime-configurable so no credentials ever
|
||||
|
||||
@@ -4,7 +4,7 @@
|
||||
*
|
||||
* Requires board to define: &lfs_partition
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
/ {
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* nRF52840 partition layout — SoftDevice s140 v6 + UF2 bootloader
|
||||
*
|
||||
* See nrf52_partitions_sdv7.dtsi for full include guide.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* nRF52840 partition layout — SoftDevice s140 v7 + UF2 bootloader
|
||||
*
|
||||
* ┌──────────────────────────────────────────────────────────────────┐
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
* Include this in any nRF52 board DTS that defines a 'buttons' gpio-keys node.
|
||||
* Boards without buttons (e.g. ikoka_nano, rak4631) should NOT include this.
|
||||
*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*/
|
||||
|
||||
&buttons {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Observer role configuration — listen-only LoRa node with WiFi+MQTT forwarding.
|
||||
# All parameters (WiFi SSID/PSK, MQTT host/port/TLS/user/pass, IATA location code)
|
||||
# are configured at runtime via serial CLI and stored in LittleFS.
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* QSPI external flash /ext automount — optional add-on for any platform
|
||||
*
|
||||
* See nrf52_partitions_sdv7.dtsi for full include guide.
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Common I2C Real-Time-Clock descriptors for ZephCore
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* OPT-IN: include this inside an &i2cN { ... } block ONLY on boards that
|
||||
* physically have a battery/cap-backed RTC. Kept separate from
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
/*
|
||||
* Common I2C Sensor Definitions for ZephCore
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
*
|
||||
* Include this file inside an &i2cN { ... } block to define all
|
||||
* supported sensor nodes on that bus. Sensors that are not physically
|
||||
|
||||
@@ -1,134 +1,134 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* Heltec WiFi LoRa 32 V3 — ZephCore overlay
|
||||
*
|
||||
* The upstream Zephyr DTS already defines SX1262, SSD1306 OLED, button,
|
||||
* LED, battery ADC, Vext/ADC control, I2C0, SPI2, BLE, and WiFi.
|
||||
* This overlay adds ZephCore-specific integration on top.
|
||||
*
|
||||
* LoRa SPI2 pins: SCLK=9, MOSI=10, MISO=11, NSS=8
|
||||
* LoRa control: DIO1=14, BUSY=13, RESET=12
|
||||
* Display I2C0: SDA=17, SCL=18 (SSD1306 @ 0x3C)
|
||||
* Battery ADC: GPIO1 (ADC1 ch0), enable GPIO37, divider 100K/390K
|
||||
* Vext: GPIO36 (active-LOW, powers OLED) — regulator + vin-supply in overlay
|
||||
* Button: GPIO0
|
||||
* LED: GPIO35
|
||||
*/
|
||||
|
||||
#include <zephyr/dt-bindings/input/input-event-codes.h>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
/* Keep console/shell on UART0 for stable host logging on V3 */
|
||||
zephyr,console = &uart0;
|
||||
zephyr,shell-uart = &uart0;
|
||||
};
|
||||
|
||||
/* Add label to upstream buttons node (defined without one) */
|
||||
buttons: buttons {
|
||||
};
|
||||
|
||||
/* Battery ADC — ZephCore reads via zephyr,user { io-channels }
|
||||
* Upstream vbatt node uses voltage-divider compatible which ZephCore
|
||||
* doesn't use. Multiplier: 3300mV full-scale * 5.42x = 17886.
|
||||
* (5.42x is Arduino's empirical divider factor for V3/V4.) */
|
||||
zephyr,user {
|
||||
io-channels = <&adc1 0>;
|
||||
vbat-mv-multiplier = <17886>;
|
||||
};
|
||||
|
||||
/* Battery ADC enable — GPIO37 (gpio1 pin 5) must be driven to read.
|
||||
* Upstream has adc_ctrl power-domain-gpio; ZephCore expects a
|
||||
* regulator-fixed named vbat_enable. */
|
||||
vbat_enable: vbat-enable {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vbat-enable";
|
||||
enable-gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
/* Vext — GPIO36, active-LOW enables rail (matches Arduino periph_power / MeshCore
|
||||
* PIN_VEXT_EN). Replaces upstream vext_ctrl power-domain so SSD1306 init works with
|
||||
* CONFIG_PM_DEVICE=n. */
|
||||
vext_enable: vext-enable {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vext";
|
||||
enable-gpios = <&gpio1 4 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
/* Button chain — same mapping as RAK4631 / WisMesh Pocket (rak4631/board.overlay). */
|
||||
user_btn_longpress {
|
||||
compatible = "zephyr,input-longpress";
|
||||
input = <&buttons>;
|
||||
input-codes = <INPUT_KEY_0>;
|
||||
short-codes = <INPUT_KEY_A>;
|
||||
long-codes = <INPUT_KEY_ENTER>;
|
||||
long-delay-ms = <1000>;
|
||||
};
|
||||
|
||||
page_btn_multitap {
|
||||
compatible = "zephcore,input-multi-tap";
|
||||
input-codes = <INPUT_KEY_A>;
|
||||
tap-codes = <INPUT_KEY_1 INPUT_KEY_LEFT>;
|
||||
tap-delay-ms = <400>;
|
||||
};
|
||||
};
|
||||
|
||||
/* Enable native USB serial for console/CLI */
|
||||
&usb_serial {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Add RX boosted mode and DIO1 pull-down to LoRa radio.
|
||||
* Upstream omits rx-boosted and has no pull-down on DIO1. */
|
||||
&lora0 {
|
||||
dio1-gpios = <&gpio0 14 (GPIO_PULL_DOWN | GPIO_ACTIVE_HIGH)>;
|
||||
rx-boosted;
|
||||
};
|
||||
|
||||
/* Reduce CPU clock from 240 MHz to 160 MHz — saves power, HAL minimum */
|
||||
&cpu0 {
|
||||
clock-frequency = <DT_FREQ_M(160)>;
|
||||
};
|
||||
|
||||
&cpu1 {
|
||||
clock-frequency = <DT_FREQ_M(160)>;
|
||||
};
|
||||
|
||||
/* I2C sensors — auto-detected at runtime */
|
||||
&i2c0 {
|
||||
#include "../../common/sensors-i2c.dtsi"
|
||||
|
||||
ssd1306_128x64: display-controller@3c {
|
||||
/delete-property/ power-domains;
|
||||
vin-supply = <&vext_enable>;
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* Flash partitions — reclaim unused space from 8MB layout.
|
||||
* Delete lpcore slots, storage, scratch, and coredump partitions.
|
||||
* Repurpose 0x7A0000 - 0x800000 (384KB) for LittleFS.
|
||||
*/
|
||||
/delete-node/ &slot0_lpcore_partition;
|
||||
/delete-node/ &slot1_lpcore_partition;
|
||||
/delete-node/ &storage_partition;
|
||||
/delete-node/ &scratch_partition;
|
||||
/delete-node/ &coredump_partition;
|
||||
|
||||
&flash0 {
|
||||
partitions {
|
||||
/* LittleFS 384KB for DataStore + file-based BLE settings */
|
||||
lfs_partition: partition@7a0000 {
|
||||
label = "lfs";
|
||||
reg = <0x7A0000 0x60000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* LittleFS auto-mount — standard /lfs mount point */
|
||||
#include "../../common/filesystem.dtsi"
|
||||
|
||||
/* After SSD1306 no longer references vext_ctrl, remove upstream power-domain node. */
|
||||
/delete-node/ &vext_ctrl;
|
||||
/*
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Heltec WiFi LoRa 32 V3 — ZephCore overlay
|
||||
*
|
||||
* The upstream Zephyr DTS already defines SX1262, SSD1306 OLED, button,
|
||||
* LED, battery ADC, Vext/ADC control, I2C0, SPI2, BLE, and WiFi.
|
||||
* This overlay adds ZephCore-specific integration on top.
|
||||
*
|
||||
* LoRa SPI2 pins: SCLK=9, MOSI=10, MISO=11, NSS=8
|
||||
* LoRa control: DIO1=14, BUSY=13, RESET=12
|
||||
* Display I2C0: SDA=17, SCL=18 (SSD1306 @ 0x3C)
|
||||
* Battery ADC: GPIO1 (ADC1 ch0), enable GPIO37, divider 100K/390K
|
||||
* Vext: GPIO36 (active-LOW, powers OLED) — regulator + vin-supply in overlay
|
||||
* Button: GPIO0
|
||||
* LED: GPIO35
|
||||
*/
|
||||
|
||||
#include <zephyr/dt-bindings/input/input-event-codes.h>
|
||||
|
||||
/ {
|
||||
chosen {
|
||||
/* Keep console/shell on UART0 for stable host logging on V3 */
|
||||
zephyr,console = &uart0;
|
||||
zephyr,shell-uart = &uart0;
|
||||
};
|
||||
|
||||
/* Add label to upstream buttons node (defined without one) */
|
||||
buttons: buttons {
|
||||
};
|
||||
|
||||
/* Battery ADC — ZephCore reads via zephyr,user { io-channels }
|
||||
* Upstream vbatt node uses voltage-divider compatible which ZephCore
|
||||
* doesn't use. Multiplier: 3300mV full-scale * 5.42x = 17886.
|
||||
* (5.42x is Arduino's empirical divider factor for V3/V4.) */
|
||||
zephyr,user {
|
||||
io-channels = <&adc1 0>;
|
||||
vbat-mv-multiplier = <17886>;
|
||||
};
|
||||
|
||||
/* Battery ADC enable — GPIO37 (gpio1 pin 5) must be driven to read.
|
||||
* Upstream has adc_ctrl power-domain-gpio; ZephCore expects a
|
||||
* regulator-fixed named vbat_enable. */
|
||||
vbat_enable: vbat-enable {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vbat-enable";
|
||||
enable-gpios = <&gpio1 5 GPIO_ACTIVE_LOW>;
|
||||
};
|
||||
|
||||
/* Vext — GPIO36, active-LOW enables rail (matches Arduino periph_power / MeshCore
|
||||
* PIN_VEXT_EN). Replaces upstream vext_ctrl power-domain so SSD1306 init works with
|
||||
* CONFIG_PM_DEVICE=n. */
|
||||
vext_enable: vext-enable {
|
||||
compatible = "regulator-fixed";
|
||||
regulator-name = "vext";
|
||||
enable-gpios = <&gpio1 4 (GPIO_PULL_UP | GPIO_ACTIVE_LOW)>;
|
||||
regulator-boot-on;
|
||||
regulator-always-on;
|
||||
};
|
||||
|
||||
/* Button chain — same mapping as RAK4631 / WisMesh Pocket (rak4631/board.overlay). */
|
||||
user_btn_longpress {
|
||||
compatible = "zephyr,input-longpress";
|
||||
input = <&buttons>;
|
||||
input-codes = <INPUT_KEY_0>;
|
||||
short-codes = <INPUT_KEY_A>;
|
||||
long-codes = <INPUT_KEY_ENTER>;
|
||||
long-delay-ms = <1000>;
|
||||
};
|
||||
|
||||
page_btn_multitap {
|
||||
compatible = "zephcore,input-multi-tap";
|
||||
input-codes = <INPUT_KEY_A>;
|
||||
tap-codes = <INPUT_KEY_1 INPUT_KEY_LEFT>;
|
||||
tap-delay-ms = <400>;
|
||||
};
|
||||
};
|
||||
|
||||
/* Enable native USB serial for console/CLI */
|
||||
&usb_serial {
|
||||
status = "okay";
|
||||
};
|
||||
|
||||
/* Add RX boosted mode and DIO1 pull-down to LoRa radio.
|
||||
* Upstream omits rx-boosted and has no pull-down on DIO1. */
|
||||
&lora0 {
|
||||
dio1-gpios = <&gpio0 14 (GPIO_PULL_DOWN | GPIO_ACTIVE_HIGH)>;
|
||||
rx-boosted;
|
||||
};
|
||||
|
||||
/* Reduce CPU clock from 240 MHz to 160 MHz — saves power, HAL minimum */
|
||||
&cpu0 {
|
||||
clock-frequency = <DT_FREQ_M(160)>;
|
||||
};
|
||||
|
||||
&cpu1 {
|
||||
clock-frequency = <DT_FREQ_M(160)>;
|
||||
};
|
||||
|
||||
/* I2C sensors — auto-detected at runtime */
|
||||
&i2c0 {
|
||||
#include "../../common/sensors-i2c.dtsi"
|
||||
|
||||
ssd1306_128x64: display-controller@3c {
|
||||
/delete-property/ power-domains;
|
||||
vin-supply = <&vext_enable>;
|
||||
};
|
||||
};
|
||||
|
||||
/*
|
||||
* Flash partitions — reclaim unused space from 8MB layout.
|
||||
* Delete lpcore slots, storage, scratch, and coredump partitions.
|
||||
* Repurpose 0x7A0000 - 0x800000 (384KB) for LittleFS.
|
||||
*/
|
||||
/delete-node/ &slot0_lpcore_partition;
|
||||
/delete-node/ &slot1_lpcore_partition;
|
||||
/delete-node/ &storage_partition;
|
||||
/delete-node/ &scratch_partition;
|
||||
/delete-node/ &coredump_partition;
|
||||
|
||||
&flash0 {
|
||||
partitions {
|
||||
/* LittleFS 384KB for DataStore + file-based BLE settings */
|
||||
lfs_partition: partition@7a0000 {
|
||||
label = "lfs";
|
||||
reg = <0x7A0000 0x60000>;
|
||||
};
|
||||
};
|
||||
};
|
||||
|
||||
/* LittleFS auto-mount — standard /lfs mount point */
|
||||
#include "../../common/filesystem.dtsi"
|
||||
|
||||
/* After SSD1306 no longer references vext_ctrl, remove upstream power-domain node. */
|
||||
/delete-node/ &vext_ctrl;
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Heltec WiFi LoRa 32 V4 — ZephCore overlay
|
||||
*
|
||||
* The DTS already defines: SX1262 (lora0), SSD1306 OLED, button, LED, PWM,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Heltec WiFi LoRa 32 V4 — Pin Control Definitions
|
||||
*
|
||||
* Pin assignments (identical to V3):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Heltec WiFi LoRa 32 V4 — ZephCore procpu DTS
|
||||
*
|
||||
* Hardware:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Heltec WiFi LoRa 32 V4.3 — ZephCore overlay
|
||||
*
|
||||
* The DTS already defines: SX1262 (lora0), SSD1306 OLED, button, LED, PWM,
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Heltec WiFi LoRa 32 V4.3 — Pin Control Definitions
|
||||
*
|
||||
* Pin assignments identical to V4.2 (GPIO5/CTX is plain GPIO, no pinctrl entry needed):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Heltec WiFi LoRa 32 V4.3 — ZephCore procpu DTS
|
||||
*
|
||||
* Hardware:
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
# LilyGo T-LoRa C6 board configuration
|
||||
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
config BOARD_LILYGO_TLORA_C6
|
||||
select SOC_ESP32_C6_WROOM_1U_N4
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# SPDX-License-Identifier: MIT
|
||||
|
||||
if(NOT "${OPENOCD}" MATCHES "^${ESPRESSIF_TOOLCHAIN_PATH}/.*")
|
||||
set(OPENOCD OPENOCD-NOTFOUND)
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# SPDX-License-Identifier: MIT
|
||||
# LilyGo T-LoRa C6 (T3-C6) + SX1262 LoRa
|
||||
#
|
||||
# Hardware:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* LilyGo T-LoRa C6 (T3-C6) + SX1262 LoRa
|
||||
*
|
||||
* Pin mapping (from Arduino MeshCore variants/lilygo_tlora_c6):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* LilyGo T-LoRa C6 — Pin Control Definitions
|
||||
*
|
||||
* Pin mapping (from Arduino MeshCore variants/lilygo_tlora_c6):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* LilyGo T-LoRa C6 (T3-C6) — ESP32-C6-MINI-1U, 4MB flash
|
||||
*
|
||||
* Hardware:
|
||||
|
||||
@@ -1,26 +1,26 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# BQ Station G2 — ZephCore board configuration
|
||||
#
|
||||
# Hardware:
|
||||
# ESP32-S3 (16MB flash, 8MB PSRAM)
|
||||
# SX1262 + PA on SPI2 (TX power 7 dBm → ~27 dBm with PA)
|
||||
# SH1106 128x64 OLED on I2C0
|
||||
# GPS on UART1
|
||||
# User button on GPIO38
|
||||
#
|
||||
# Include order: prj.conf → zephcore_common.conf → esp32_common.conf → board.conf
|
||||
|
||||
# Board identification
|
||||
CONFIG_ZEPHCORE_BOARD_NAME="Station G2"
|
||||
CONFIG_BT_DIS_MODEL_NUMBER_STR="BQ Station G2"
|
||||
|
||||
# TX power — Station G2 has ~20dB external PA.
|
||||
# Default 15 dBm → ~35 dBm output (P1dB point). Not capped — user can raise.
|
||||
CONFIG_ZEPHCORE_DEFAULT_TX_POWER_DBM=15
|
||||
|
||||
# Flash size — 16MB (override Zephyr default)
|
||||
CONFIG_ESPTOOLPY_FLASHSIZE_16MB=y
|
||||
|
||||
# PSRAM mode — ESP32-S3R8 is silicon-strapped OPI octal.
|
||||
# Enable is auto-detected from DTS by Kconfig.psram; only the mode is set here.
|
||||
CONFIG_SPIRAM_MODE_OCT=y
|
||||
# SPDX-License-Identifier: MIT
|
||||
# BQ Station G2 — ZephCore board configuration
|
||||
#
|
||||
# Hardware:
|
||||
# ESP32-S3 (16MB flash, 8MB PSRAM)
|
||||
# SX1262 + PA on SPI2 (TX power 7 dBm → ~27 dBm with PA)
|
||||
# SH1106 128x64 OLED on I2C0
|
||||
# GPS on UART1
|
||||
# User button on GPIO38
|
||||
#
|
||||
# Include order: prj.conf → zephcore_common.conf → esp32_common.conf → board.conf
|
||||
|
||||
# Board identification
|
||||
CONFIG_ZEPHCORE_BOARD_NAME="Station G2"
|
||||
CONFIG_BT_DIS_MODEL_NUMBER_STR="BQ Station G2"
|
||||
|
||||
# TX power — Station G2 has ~20dB external PA.
|
||||
# Default 15 dBm → ~35 dBm output (P1dB point). Not capped — user can raise.
|
||||
CONFIG_ZEPHCORE_DEFAULT_TX_POWER_DBM=15
|
||||
|
||||
# Flash size — 16MB (override Zephyr default)
|
||||
CONFIG_ESPTOOLPY_FLASHSIZE_16MB=y
|
||||
|
||||
# PSRAM mode — ESP32-S3R8 is silicon-strapped OPI octal.
|
||||
# Enable is auto-detected from DTS by Kconfig.psram; only the mode is set here.
|
||||
CONFIG_SPIRAM_MODE_OCT=y
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* BQ Station G2 — ZephCore overlay
|
||||
*
|
||||
* Adds LoRa radio, display, GPS, button, and filesystem on top of the
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* BQ Station G2 — Pin Control Definitions
|
||||
*
|
||||
* Pin mapping (from Arduino MeshCore variants/station_g2):
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* BQ Station G2 — ESP32-S3, 16MB flash, 8MB PSRAM
|
||||
*
|
||||
* Hardware:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* TTGO LoRa32 — ZephCore overlay
|
||||
*
|
||||
* The upstream Zephyr DTS (ttgo_lora32_esp32_procpu.dts) already defines:
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Seeed XIAO ESP32-C3 + SX1262 LoRa
|
||||
#
|
||||
# Hardware:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* XIAO ESP32-C3 + SX1262 LoRa
|
||||
*
|
||||
* Pin mapping (from Arduino MeshCore variants/xiao_c3):
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Seeed XIAO ESP32-C6 + SX1262 LoRa
|
||||
#
|
||||
# Hardware:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* XIAO ESP32-C6 + SX1262 LoRa
|
||||
*
|
||||
* Pin mapping (from Arduino MeshCore variants/xiao_c6):
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
# SPDX-License-Identifier: Apache-2.0
|
||||
# SPDX-License-Identifier: MIT
|
||||
# Seeed XIAO ESP32-S3 + WIO-SX1262 LoRa
|
||||
#
|
||||
# Hardware:
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
/*
|
||||
* SPDX-License-Identifier: Apache-2.0
|
||||
* SPDX-License-Identifier: MIT
|
||||
* Seeed XIAO ESP32-S3 + WIO-SX1262 LoRa
|
||||
*
|
||||
* Pin mapping (from Arduino MeshCore variants/xiao_s3_wio):
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user