# Morse\_cli set ack\_timeout\_adjust?

**URL:** <https://community.morsemicro.com/t/morse-cli-set-ack-timeout-adjust/1692>\
**Category:** Software\
**Created:** [May 31, 2026, 9:24pm UTC](https://community.morsemicro.com/t/morse-cli-set-ack-timeout-adjust/1692 "2026-05-31T21:24:19Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![TimW](https://sea1.discourse-cdn.com/flex001/user_avatar/community.morsemicro.com/timw/32/795_2.png) [@TimW](https://community.morsemicro.com/u/TimW)\
**Post date:** [May 31, 2026, 9:24pm UTC](https://community.morsemicro.com/t/morse-cli-set-ack-timeout-adjust/1692/1 "2026-05-31T21:24:19Z")

</div>

I am hoping someone can explain exactly what “morse\_cli set ack\_timeout\_adjust X” does? I had assumed it was just an additional usecs of time added to the expected ack timeout to allow for tuning of link distances. For example, 4 miles in the air - 2 there and 2 back - would be about 20us. If I set the ack\_timeout\_adjust to that the performance plummets compared to the 300us default. So … I guess it’s not that. Any help in understanding how to calculate the ideal?

Thanks  
Tim

---

<div class="post-metadata">

**Author:** ![michael.mccandless](https://avatars.discourse-cdn.com/v4/letter/m/c5a1d2/32.png) [@michael.mccandless](https://community.morsemicro.com/u/michael.mccandless)\
**Post date:** [June 1, 2026, 12:16am UTC](https://community.morsemicro.com/t/morse-cli-set-ack-timeout-adjust/1692/2 "2026-06-01T00:16:25Z")

</div>

It’s used to tune the timeout for receiver responses at the MAC layer. The total time required for this knob would include the processing time by both chips both of their respective packets, the TX and RX time, handoffs between the layers, etc.

Performance degradation would be due to the timeout being too low and aggressive resulting in excessive dropped packets and subsequent retries.

---

<div class="post-metadata">

**Author:** ![TimW](https://sea1.discourse-cdn.com/flex001/user_avatar/community.morsemicro.com/timw/32/795_2.png) [@TimW](https://community.morsemicro.com/u/TimW)\
**Post date:** [June 1, 2026, 12:34am UTC](https://community.morsemicro.com/t/morse-cli-set-ack-timeout-adjust/1692/3 "2026-06-01T00:34:08Z")

</div>

Thanks for this. I understand that in a very general sense. What I’m trying to understand is exactly how to tune it - the formula I need to use to feed it things like bandwidth, modulation, distance, etc (or none of these?) and get a value I can use to set it more optimally than the default. If this was a wifi coverage class I’d know what I’m doing, but here I dont.

---

<div class="post-metadata">

**Author:** ![michael.mccandless](https://avatars.discourse-cdn.com/v4/letter/m/c5a1d2/32.png) [@michael.mccandless](https://community.morsemicro.com/u/michael.mccandless)\
**Post date:** [June 2, 2026, 12:24pm UTC](https://community.morsemicro.com/t/morse-cli-set-ack-timeout-adjust/1692/4 "2026-06-02T12:24:43Z")

</div>

Alright after of a bit of spelunking into IEEE 802.11 2024, it looks to have been derived by applying the S1G ACK related values (aSIFSTime, aSlotTime, aRxPHYStartDelay) from the S1G PHY characteristics table[1] into the PHY/MAC acknowledgement procedure[2]. So the preset value would be more of an adjustment for compliance with the spec.

The user facing setting in morse\_ctrl would be more for allowing increasing the timeout threshold to adjust performance for extreme range experiments/applications. Reducing that window would just lead to missing the ACK timing requirements and end with a reduction in network performance due to the resultant retries from packets being reported as dropped or lost.

[1] IEEE-802.11-2024 Section 23.4.4 Table 23-41 – S1G PHY characteristics pg 3855  
[2] IEEE-802.11-2024 Section 10.3.2.11 Acknowledgment procedure pg 1905

---

<div class="post-metadata">

**Author:** ![petrosilius](https://avatars.discourse-cdn.com/v4/letter/p/57b2e6/32.png) [@petrosilius](https://community.morsemicro.com/u/petrosilius)\
**Post date:** [July 29, 2026, 8:14am UTC](https://community.morsemicro.com/t/morse-cli-set-ack-timeout-adjust/1692/5 "2026-07-29T08:14:01Z")

</div>

> [@TimW](#):
>
> morse\_cli set ack\_timeout\_adjust

Hey, thanks for these insights! I was wondering if setting different ack\_timeout\_adjust values will change anything at all if going beyond the limits by the standard (~15.9km) as discussed in the other thread in [Maximum range limit - #17 by petrosilius](https://community.morsemicro.com/t/maximum-range-limit/1766/17) ? As the limiting factor seems to be more the slot timing of 52us then the way higher value of ack\_timeout (default 300us) ?

Coming also back to the question of @TimW , how are is the ack\_timeout connected to the slot time? A few hints for the people trying far distances would help!
