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

USB problem with OS X #586

Closed
dpgeorge opened this issue May 8, 2014 · 8 comments
Closed

USB problem with OS X #586

dpgeorge opened this issue May 8, 2014 · 8 comments

Comments

@dpgeorge
Copy link
Member

dpgeorge commented May 8, 2014

There have been reports by some users of the stmhal/ USB device not working at all on their Mac OS X machine. The pyboard works, but there is no mass storage device, nor any serial device. At this point I have very little information about this.

I want to collect here information about which OS X versions have the problem, and any other details (eg does DFU work?).

@skgsergio
Copy link

My PyBoard seems is on the way and, although I'm mainly a Linux user, I have an OSX laptop and I know how to deal with it to debug hardware issues. I'll check and try to collect data for this issue ASAP as I have my board.

@dpgeorge
Copy link
Member Author

dpgeorge commented May 8, 2014

@skgsergio, yes, your board is on its way. Any info you could give on OSX would be great.

Here is 1 report of not working: Mac Mini, latest version, i5 processor, running OS X Mavericks. Mac refuses to see the board at all.

@blmorris
Copy link
Contributor

blmorris commented May 8, 2014

No pyboard, but I have hardware similar enough to run and test Micro Python.
All my Micro Python testing has been on my 2007 MacBook Pro, running OS X 10.7.5
I have been compiling Micro Python using the arm gcc toolchain from https://launchpad.net/gcc-arm-embedded
DFU and USB serial emulation have worked for me from day 1. I use dfu-utils 0.7, installed using Mac Ports (www.macports.org)
I don't recall ever installing a relevant driver for USB serial port emulation, though it is possible that I installed something years ago for another adapter. I always had the impression that no driver was necessary for a device that configures as the default USB CDC class.
Mass storage via USB works for me, although sometimes there are issues getting the volume to unmount cleanly. Can't figure out enough of a pattern to provide a useful bug report.

@dpgeorge
Copy link
Member Author

dpgeorge commented May 8, 2014

Okay, so one OSX report was simply a problem with the micro USB cable. Changing the cable fixed the problem straight away.

We shall see, but perhaps this is not a software problem after all.

@pfalcon
Copy link
Contributor

pfalcon commented May 10, 2014

Wanted to mention that one of known USB debugging measures is trying to connect via an external hub. I have some doubts for this case specifically, as Pyboard might overload an unpowered hub, but well, as one of debugging steps, why not to suggest "if you have an external hub, try to connect board via it" (but definitely not "go and buy a hub if you don't have one, it will surely help"). This is not MacOS-specific of course, posting here, as it appears to catch the most attention in this regard so far.

@dpgeorge
Copy link
Member Author

In the other known-case, it was also a broken/faulty USB cable (2 of them in fact!).

So it seems that there are no more outstanding issues of pyboard USB driver on Mac.

Reopen if things change.

@dpgeorge dpgeorge removed the bug label May 11, 2014
@skgsergio
Copy link

I can confirm it working on my 3 machines with an Amazon Basics USB 2.0 cable.

@dpgeorge
Copy link
Member Author

Thanks @skgsergio, good to know.

tannewt added a commit to tannewt/circuitpython that referenced this issue Oct 22, 2019
This PR refines the _bleio API. It was originally motivated by
the addition of a new CircuitPython service that enables reading
and modifying files on the device. Moving the BLE lifecycle outside
of the VM motivated a number of changes to remove heap allocations
in some APIs.

It also motivated unifying connection initiation to the Adapter class
rather than the Central and Peripheral classes which have been removed.
Adapter now handles the GAP portion of BLE including advertising, which
has moved but is largely unchanged, and scanning, which has been enhanced
to return an iterator of filtered results.

Once a connection is created (either by us (aka Central) or a remote
device (aka Peripheral)) it is represented by a new Connection class.
This class knows the current connection state and can discover and
instantiate remote Services along with their Characteristics and
Descriptors.

Relates to micropython#586
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants