Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Not able to find Crazyradio Dongle on MacOS with Python 3.12 - Exception: Cannot find a Crazyradio Dongle #446

Open
skovsen opened this issue Apr 2, 2024 · 7 comments
Assignees
Labels

Comments

@skovsen
Copy link

skovsen commented Apr 2, 2024

Environment:

  • MacOS 14.3.1
  • Python 3.12.0
  • cflib 0.1.25.1

Using Python 3.12, I keep getting the error: Exception: Cannot find a Crazyradio Dongle
when trying to connect to a Crazyflie.
If I downgrade Python til 3.11.4 it works fine.

I have seen this, both when using CFClient as well as when developing my own code

@knmcguire
Copy link
Member

Thanks for reporting this! this is an weird error so we will try to investigate it soon. 3.12 should still be supported for mac

@skovsen
Copy link
Author

skovsen commented Apr 3, 2024

Hi.
I agree.
To clarify, I'm using a Crazyradio 2.0. I forgot to add that into the original post.

But, just to ensure myself, I tried once more, with the following steps:
Not working with python 3.12.0
python -m venv env && source env/bin/activate && pip install --upgrade pip && pip install cfclient
cfclient

Which results in the following output in my terminal:

WARNING:cfclient.ui.main:Cannot find a Crazyradio Dongle
Cannot find a Crazyradio Dongle
INFO:cflib.drivers.cfusb:Looking for devices....
WARNING:cflib.crtp.usbdriver:Exception while scanning for Crazyflie USB: No backend available

And I'm not able to connect to a CF.

If I change my python over to 3.11.4 and try again, like this:
pyenv local 3.11.4
python -m venv env && source env/bin/activate && pip install --upgrade pip && pip install cfclient
cfclient

I works fine.

@ataffanel
Copy link
Member

To get some more info on how to reproduce the problem: How do you install Python? Using the official installer or a package manager like brew/port?

@skovsen
Copy link
Author

skovsen commented Apr 3, 2024

I'm using pyenv

@ToveRumar
Copy link
Contributor

Hi!
I have been able to reproduce it and it looks like there might be some issue connecting the backend usb lib to pyUSB. However, python 3.12 is not officially supported (see #425).

We hope to fix this soon.

@skovsen
Copy link
Author

skovsen commented Apr 9, 2024

Hi.
I think it is not completely the same, as the issue referenced in #425 is a build time issue, while here it does build the system. This issue looks to stem from pyUSB in 3.12 does not support the Crazyradio. I'm not an expert when we come this close to the hardware, but it looks a bit of a different issue.
Hopefully, it will be solved at the same time, though :)

@ToveRumar
Copy link
Contributor

Hi!

I agree, it looks a bit different. But we hope to solve it all in one go.
Thanks for reporting!

@ataffanel ataffanel self-assigned this Apr 10, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

No branches or pull requests

4 participants