首页 > 解决方案 > 如何修复 chirpsdk.exceptions.ConnectError:使用 chirp python 平台时出现未知错误代码异常?

问题描述

我尝试使用 chirp.io sdk 实现一个简单的聊天应用程序,但是每当我运行我的代码时,我都会得到:

chirpsdk.exceptions.ConnectError:未知错误代码

import time
from chirpsdk import ChirpConnect, CallbackSet

chirp = ChirpConnect()

chirp.start(send = True,receive = True)

class Callbacks(CallbackSet):

    def on_received(self, payload, channel):

        if payload is not None:
            msg = payload.decode('utf-8')
            print('Received : '+msg)
        else:
            print('Decode failed')


chirp.set_callbacks(Callbacks())
print(f'Protocol used : {chirp.protocol_name}')
msg = input()

while msg!='quit':
    payload = bytearray([ord(ch) for ch in msg])
    if chirp.is_valid(payload):
        chirp.send(payload)

    else:
        print('[Warning] : Message size must be (0,32] bytes.')

    msg = input()

chirp.stop()
From cffi callback <function _StreamBase.__init__.<locals>.callback_ptr at 0x7f9333f89b70>:
Traceback (most recent call last):
  File "/home/lawliet/.local/lib/python3.6/site-packages/sounddevice.py", line 732, in callback_ptr
Protocol used : ultrasonic
    return _wrap_callback(callback, data, frames, time, status)
  File "/home/lawliet/.local/lib/python3.6/site-packages/sounddevice.py", line 2517, in _wrap_callback
    callback(*args)
  File "/home/lawliet/.local/lib/python3.6/site-packages/chirpsdk/audio.py", line 102, in process_output
    self.process_output_fn(outdata)
  File "/home/lawliet/.local/lib/python3.6/site-packages/chirpsdk/connect.py", line 836, in process_output
    self._call(libconnect.chirp_connect_process_output, self._sdk, floats, length)
  File "/home/lawliet/.local/lib/python3.6/site-packages/chirpsdk/connect.py", line 489, in _call
    raise ConnectError(err.decode(), code=rc)
chirpsdk.exceptions.ConnectError: Unknown error code.

标签: pythonchirp

解决方案


推荐阅读