adafruit / adafruit/Adafruit_Wippersnapper_Arduino

Allow users to specify MQTT broker keep alive interval and ping frequency

Open
#907 0 comments 0 reactions 0 assignees View on GitHub
long-term networking
Dominant language
C++
Stars
54
Forks
56
Avg merge
2d 12h
Merged PRs (30d)
11

Description

Just a followup thought here: might it be useful to change these in specific circumstances? Like if:
- a user has a particularly flaky network, "i know my wifi drops daily and it takes 2 minutes for the network to reboot"
- a user needs a tighter disconnect period, "5 seconds is make or break, kick my device at 7 seconds without heartbeat!"
...if they could control these values they could self-help wrt disconnect behavior

We could allow these values to be overridden by, for instance:
- user controls in the frontend
- special `secrets.json` vars

_Originally posted by @lorennorman in https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/issues/900#issuecomment-4240135640_

For now we can relatively easily update the keep alive interval, potentially via config/secrets, as it's a full blown property:
https://github.com/adafruit/Adafruit_Wippersnapper_Arduino/blob/c212b86a0340c0552826e8deed36afa0c74a7b82/src/Wippersnapper.h#L481-L482

Contributor guide

No contributing guide indexed for this repository

Research direction

Start in src/Wippersnapper.h around lines 481-482, where the keep-alive interval is exposed, and trace how configuration or secrets.json values are loaded. Define how users can override the keep-alive interval and ping frequency, then verify that the resulting MQTT disconnect behavior follows those configured values.

Written by the indexing model from the issue text.

Assessment

Tech stack
arduino, cpp
Domain
embedded-iot
Issue type
Feature
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
55/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.