from driver.tef import TEF6686
from driver.protocol import I2CPCClient
import time

p = I2CPCClient("COM17")
print(p.version())
with TEF6686(p) as tef:
    tef.init()
    tef.FM_Tune_To(TEF6686.TuneTo_Mode.Preset, 9500)
    tef.AUDIO_Set_Mute(False)
    tef.AUDIO_Set_Volume(70)
    tef.FM_Set_MphSuppression(True)
    tef.FM_Set_ChannelEqualizer(True)
    tef.FM_Set_Stereo_Max(False)
    # tef.FM_Set_Specials(1)
    tef.FM_Set_Bandwidth(True)
    time.sleep(0.032)
    while True:
        res = tef.FM_Get_Quality_Data()
        if not res: continue
        status, level, usn, wam, offset, bandwidth, modulation = res
        print(f"{level / 10} dbμV | {usn / 10}% USN | {wam / 10}% WAM | {offset / 10} kHz offset | {bandwidth / 10} kHz bandwidth | {modulation / 10}% modulation")
        time.sleep(0.3)