Skip to content

[Bug]: position.positionBroadcastSecs stays at 3600 on Heltec V4 despite successful --set and --configure #11004

Description

@UnknownEngineOfficial

Category

Serial / Configuration persistence

Hardware

Heltec V4

Firmware Version

2.7.26.54e0d8d

Description

On a Heltec V4 running Meshtastic firmware 2.7.26.54e0d8d, position.positionBroadcastSecs does not change from 3600 even though both CLI write paths report success.

I tested both:

  1. direct --set
  2. full YAML round-trip via --export-config -> edit -> --configure

In both cases the CLI reports the value was written successfully, but a fresh readback from the node still shows:

positionBroadcastSecs: 3600

Other nearby position settings do persist correctly on the same node, for example:

  • position.positionBroadcastSmartEnabled
  • position.gpsUpdateInterval
  • display.screenOnSecs

This makes it look like a field-specific persistence or overwrite problem rather than a general CLI or serial write failure.

Steps to Reproduce

With the node connected over USB:

  1. Verify current value:
meshtastic --info

Observed:

positionBroadcastSecs: 3600
  1. Try to set the value directly:
meshtastic --set position.position_broadcast_secs 60
meshtastic --info

CLI reports success, for example:

Set position.position_broadcast_secs to 60
Writing modified preferences to device
Writing position configuration to device

But readback still shows:

positionBroadcastSecs: 3600
  1. Try again together with smart-broadcast disable:
meshtastic --set position.position_broadcast_smart_enabled false --set position.position_broadcast_secs 60
meshtastic --info

Observed:

  • positionBroadcastSmartEnabled changes successfully to false
  • positionBroadcastSecs still remains 3600
  1. Try YAML import path:
meshtastic --export-config node.yaml

Edit YAML:

config:
  position:
    positionBroadcastSecs: 60
    positionBroadcastSmartEnabled: false

Then apply:

meshtastic --configure node.yaml
meshtastic --info

CLI again reports:

Set position.position_broadcast_secs to 60

But readback still shows:

positionBroadcastSecs: 3600

Expected Behavior

After either --set or --configure, meshtastic --info should show:

positionBroadcastSecs: 60

Actual Behavior

positionBroadcastSecs remains at 3600 after both write methods, while other settings in the same config area do persist.

Additional Context

  • Tested on the same connected node repeatedly with fresh meshtastic --info readback after each write.
  • display.screenOnSecs was changed successfully and persisted.
  • position.positionBroadcastSmartEnabled changed successfully and persisted.
  • position.gpsUpdateInterval changed successfully and persisted.
  • This seems more specific than a general config-write failure.

Related Issues

Possibly related or adjacent:

If helpful, I can provide a sanitized exported YAML and exact full --info excerpts from before/after the write attempts.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Fields

    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions