Files
roro9stack/lib/lora/src/scan_presets.h
twislaandClaude Opus 5.5 305818466f
CI / build (pull_request) Successful in 2m19s
Site / build (pull_request) Successful in 9s
LoRa Scanner: MeshCore by default, and its public channel read
The MeshCore preset is the default for a new device, in the Settings and
in the radio before the Scanner is opened. The setting now accepts it:
it only took the 7 Meshtastic presets, so MeshCore picked in the App was
not saved.

Messages on MeshCore's public channel are decrypted with the channel's
published key (AES-128, checked with 2 bytes of HMAC-SHA256): the row
shows who says they sent it and the start of the text, the details the
sender, the time and the whole text. Other channels and private messages
stay encrypted.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_0162FokPdvY2KsS4NBfwyWPk
2026-10-09 22:19:14 +02:00

29 lines
812 B
C++

#pragma once
#include <cstddef>
#include <cstdint>
#include "packet_view.h"
namespace roro::lora {
// What the LoRa Scanner can be told to listen to by name: the Meshtastic presets allowed in
// EU_868, LongFast first, then MeshCore's EU/UK (Narrow), the default. The order is kept: the
// chosen one is stored by its number.
struct ScanPreset {
const char* name;
uint32_t frequencyHz;
float bwKHz;
uint8_t sf, cr, syncWord;
uint16_t preamble;
Protocol protocol;
};
constexpr size_t kDefaultScanPreset = 7; // MeshCore: the Settings' default says the same
size_t scanPresetCount();
ScanPreset scanPreset(size_t i); // i < scanPresetCount()
// By name, whatever its case. False when there is none.
bool findScanPreset(const char* name, ScanPreset& out);
} // namespace roro::lora