Files
firmware/bin/config.d
Claude 70bd2cc579 TransparentRadio: verify what the device took, and don't rewrite it needlessly
- Read-back compares the settings that decide what is on the air (region,
  preset or bandwidth/SF, coding rate, slot or frequency, tx_enabled), not
  just transparent_mode. A device that rejects a LoRa config restores its
  old one whole, transparent_mode included, so that is now "Refused":
  retried after 5 minutes or at once on this node's next config change.
  Only a device that took the settings and still reads transparent_mode
  false is old firmware.
- The same comparison decides whether a device is already set up, so
  fields the device normalises no longer cause a push on every reconnect.
  coding_rate, spread_factor and bandwidth are clamped the way the
  device's AdminModule stores them.
- Firmware that reports a release older than 2.8.3 is refused before any
  set_config reaches it.
- With no LoRa region set here, nothing is pushed (it would set the
  device's region to UNSET and turn its TX off); setting a region pushes.
- Frames held for their own radio settings (RadioTxHooks::holdsRadio,
  e.g. MeshBeacon on another preset) are dropped, since the device can't
  switch per packet, and the hooks hear about every released frame.
- Reconnect attempts back off from 5 s to 60 s: opening a TCP link blocks
  the main loop.
- hop_limit/hop_start are clamped as encodeRadioBuffer() does instead of
  being refused by the device; slot_parity is no longer forwarded.
- Lora.Module transparent leaves spidev empty, so the SPI bus is untouched.
- Queued frames are released on destruction; the late-window clamp only
  reschedules when the moved frame is the front.
2026-11-04 04:07:10 +00:00
..
2025-03-01 06:18:33 -06:00
2026-07-16 18:35:33 -05:00

meshtasticd configuration files

This directory contains YAML configuration files for meshtasticd. Each file describes a specific hardware configuration, including the LoRa module and pin assignments. These configurations are used by meshtasticd to correctly interface with the hardware.

Metadata structure

Each configuration file includes a Meta section that provides information about the configuration. This configuration is consumed by configuration-selection tools.

Meta:
  name: MeshAdv-Pi E22-900M30S # A unique identifier for this configuration.
  support: community # community, official, or deprecated; determined by Meshtastic Leads.
  compatible: # A list of compatible products or platforms.
    - raspberry-pi

name: A unique identifier for the configuration, typically reflecting the hardware it supports.

support: Indicates the level of support for this configuration. It can be one of the following:

  • community: Supported by the Meshtastic community. Meshtastic Members may not possess, or have not tested this configuration.
  • official: Fully supported by Meshtastic. Meshtastic Members have tested and verified this configuration.
  • deprecated: No longer recommended for deployment by Meshtastic.

compatible: A list of compatible products or platforms that can use this configuration. This will vary depending on the intended use case / platform. Multiple compatible entries can be included. E.g. Armbian BOARD value or OpenWrt TARGET value. These tags can be consumed by different configuration-selection tools, filtering based upon their platform/etc.