Skip to content

AGC reset doesn't appear to work with Heltec V4 #1716

@terminalvelocity23

Description

@terminalvelocity23

I've been tinkering with my repeater as of late, trying its sensitivity and noise floor in various conditions. Looks like there's an issue with AGC not being reset after getting hit by a strong signal (I've used a handheld radio to simulate a powerful interference source). The noise floor in the application drops to -120 dBm permanently, and the repeater gets "deafened" until rebooted. Building with the -D SX126X_RX_BOOSTED_GAIN=0 flag helps somewhat in the noisy urban environment, but a strong noise peak still can induce this problem.

As per code in RadioLibWrappers.cpp, "according to higher powers, just issuing RadioLib's startReceive() will reset the AGC". Apparently it isn't the case, because setting agc.reset.interval as low as 4 doesn't do nothing with this problem, and the noise floor still gets clamped at -120 dBm. Which is not surprising, according to this:
if (_noise_floor < -120) { _noise_floor = -120; // clamp to lower bound of -120dBi }

All in all, it seems to me that either this method of resetting AGC doesn't work, there's something at fault with the agc.reset procedure or something else going on.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions