OSX + Baeglebone = Nightmare

So, plugging the BBB into a Mac that was upgraded from 10.9 to 10.10 worked… The plot thickens.

I have pulled IOUSBFamily.kext from this machine, I will compare the versions of the kexts inside to that of the machine that won’t boot the BBB, specifically AppleUSBXHCI.kext and AppleUSBFTDI.kext to see what Apple have updated.

Will report back later.

It should only affect the usb-ethernet (RNDIS).

usb-storage & cdc-serial are built-in..

https://www.kernel.org/doc/Documentation/usb/gadget_multi.txt

A CDC ECM (Ethernet) function may be turned on via a Kconfig option
and RNDIS can be turned off. If they are both enabled the gadget will
have two configurations -- one with RNDIS and another with CDC ECM[3].

In 3.8:

CONFIG_USB_G_MULTI=m
CONFIG_USB_G_MULTI_RNDIS=y
# CONFIG_USB_G_MULTI_CDC is not set

in 3.14.x:

CONFIG_USB_G_MULTI=m
CONFIG_USB_G_MULTI_RNDIS=y
CONFIG_USB_G_MULTI_CDC=y

Wish i wasn't going on vacation in 24 hours... Anyone want to rebuild
v3.8.x and with CONFIG_USB_G_MULTI_CDC and see if they can just get
10.10 (i still need to upgrade my hackintosh) working with just
cdc-ether?

Regards,

Scratch that, my "jessie" build has v3.14.x with that configuration,
so no rush to rebuild..

Flasher:
http://rcn-ee.net/rootfs/bb.org/testing/2015-02-01/lxqt-4gb/BBB-eMMC-flasher-debian-jessie-lxqt-4gb-armhf-2015-02-01-4gb.img.xz

microSD:
http://rcn-ee.net/rootfs/bb.org/testing/2015-02-01/lxqt-4gb/bone-debian-jessie-lxqt-4gb-armhf-2015-02-01-4gb.img.xz

Can someone with 10.10 test these out (without HoRNDIS installed) and
see if cdc-ether works out of the box?

Regards,

So, plugging the BBB into a Mac that was upgraded from 10.9 to 10.10 worked… The plot thickens.

I have pulled IOUSBFamily.kext from this machine, I will compare the versions of the kexts inside to that of the machine that won’t boot the BBB, specifically AppleUSBXHCI.kext and AppleUSBFTDI.kext to see what Apple have updated.

Will report back later.

Why don’t you use a ethernet switch/hub and do all this over ethernet? You can use ssh/sftp/nfs for all your development and it works out of the box.

Regards,
John

So we made a bit of progress, managing to get the BBB connected on all of the the new iMac’s (Early 2014) running 10.10.2. In the end, it seemed that resetting PRAM & SMC after doing a repair of the disk permissions was all that was required. Why this worked is beyond me, it makes no sense. One of the five boards would work out of the box on all machines, all of them have the same image, so again it makes no sense unless its some strange voltage / USB timing issue?

The only mac giving problems now is an early 2011 iMac 27, its also running 10.10.2, it utilises the AppleUSBEHCI.kext (version 705.4.14) within IOUSBFamily.kext (Version 710.4.14) to drive the USB2 bus.

A machine still running 10.9.6 (Late 2012 Mini) uses AppleUSBEHCI.kext (version 686.4.1) within IOUSBFamily.kext (Version 660.4.0), it has USB3.

We tried moving the 10.9 IOUSBFamily.kext to the 10.10 machine, but nothing happened, the USB ports work fine but the BBB is not picked up. After the update, the USB is listed as “USB High Speed Bus” i.e. USB2.

So, the difference is that this Mac has USB2 not USB3, all of the new macs use the AppleUSBXHCI.kext (10.10 version) to drive their USB3 hubs and not AppleUSBEHCI.kext.

We will keep plugging away at it as a lunchtime / coffee break project to see if we can get it to work.

Like Jon said, why don’t you just ssh into the beaglebones from an Ethernet switch? Every OS works with BBB that way…
Seems silly to use USB anyways…

I have used serial cables and Ethernet cables to develop with dozens of beaglebones with every OS from windows to Linux to osx…

Why use USB drivers at all…

Ok, so like if OSX does not work, and you bought 5, for some purported embedded “project” FFS get a real support system. Honestly !!! Meanwhile, back at the ranch, many users on these groups using OSX 10.10, and do not have the same issues you’re having. So, cause ? That “lump” that rests between the keyboard, and chair. . . . Get off your butt, and learn how to use your OS already.

Thank you for that constructive comment William, very grown up. I’ll bet my European arse is a lot smaller than your American butt… Its a bit like this thread, one of the first I read about BBB https://groups.google.com/forum/#!searchin/beagleboard/hermans/beagleboard/951nWp_Jcnc/ZZV0GPwB3z8J
Eye opening, anyone asks a question or queries anything and they get flamed along the lines of “We developed this board for free and you expect our knowledge for free” yet there is no option to get any knowledge other than as you and other point out in that thread “Google”. You guys seem to be offended if someone doesn’t want to use the command line vis ssh. You do realise its 2015?

We or any BBB newbie are not asking for our hands to be held, just a few pointers. The work we did on the Arduino is now being packaged as open source, thats a fully working implementation of CanOpen geared specifically towards motor / servo control, it will save devs months of work.

Anyway, I do understand the OS, no need for the snide superior attitude, we are prototyping, you surely understand the concept? Spend little, develop fast, then invest in custom PCB’s etc. The BBB has a fairly powerful CPU and CAN bus, it ticks a lot of boxes for us. We are a start up not Microsoft or Tesla, FFS (to paraphrase you). We were just a little surprised to find basic issues with running off a 5v supply, has to be a very clean supply, not just any 5V 2A supply. Basically we had a lot of teething problems, which we have mostly had to work around, not solve.

The issue of USB connectivity: its a lot more convenient for us to just use USB for demo / mobility purposes, rather than having two cables plugged into the BBB, ethernet & USB. For our fixed machines, I agree it’s not a problem, but for those using laptops, its a bit of a nuisance.

Forgive me for complaining about the lack of documentation. Case in point:
Take the LSM303, finding coherent instructions was difficult. I bought Derek Molloy’s book and we are now tearing ahead, his instructions are consistent. Infant we bought heaps of books (all I could find) on the BBB, if you go through them, there are discrepencies even in basic set up.

As a wise man once said, “If you don’t have anything constructive to say, don’t speak”.

As a wise man once said, “If you don’t have anything constructive to say, don’t speak”.

I do not think I could have put it better myself.

Hi,

Did you have any luck solving this?
If yes, can you share it as I have the same problem.

Jan

Jan,

The first thing to do, and it proved to be the simplest is use a good quality short cable, honestly in most of the connection issues we had it turned out to be cables / drivers / OS version in that order. Other than that we had one DOA board. It turns out the BBB is very temperamental about its power supply, we found it impossible to battery power it, something that took minutes to do on a RPi.

We decided to move to RPi 2 in the end anyway.

The BBB’s are now performing various domestic duties for the team, we are all happy with them when working on them in our free time. I like the BBB, didn’t like the support.

Jan,

The first thing to do, and it proved to be the simplest is use a good
quality short cable, honestly in most of the connection issues we had it
turned out to be cables / drivers / OS version in that order. Other than
that we had one DOA board. It turns out the BBB is very temperamental about
its power supply, we found it impossible to battery power it, something that
took minutes to do on a RPi.

We decided to move to RPi 2 in the end anyway.

The BBB's are now performing various domestic duties for the team, we are
all happy with them when working on them in our free time. I like the BBB,
didn't like the support.

Just out of curiosity, how do you see the RPi support differing from
the BBB support? And how is the RPi support better?

Probably the biggest difference is the user base and their attitude.

Asking questions on this forum that have a very simple answer (to somebody who knows) can result in some extreme responses, almost mocking the person asking for not knowing, the thread above and the one I referenced being an example.

With us it was a perception that we were spending more time finding answers than getting anything done, especially once we managed to overcome the gargantuan struggle of just getting the board to communicate with our machines.

When we discovered the anomalies with the power supply, trying to power off a battery, it was a lesson in frustration, with very disjointed documentation and no clear answers as to what was going on. When we tried to implement OpenCAN, we gave up.

With RPi, better hardware add ons, friendlier user base = less hassle and happier users.

Until RPi 2 came out, we would have soldiered on, but once that happened it was pointless.

I think the original poster has a good point here: why do we bother wasting resources trying to support OSX? No “maker” with an ounce of self-respect would buy an Apple product. It’s an inaccessible black box totally controlled by the corporation, constantly changing, constantly breaking compatibility with older models, all on yesterday’s hardware at a premium price. Apple clearly has no interest in working with us, so why should we work with them?

If you’re the kind of person who wants to use a BeagleBone, get a real computer (by which I mean Linux). “Driver”? What’s that? Why do I need one? It just works. Serial cable? Just works. Network? Just works. And even if for some odd reason it didn’t, I’d just dig into the source code and figure out why and fix it myself.

Yes, OSX + BBB is a disaster. But let’s put the blame where it belongs.

When I first started working with the BBB, it was a huge learning curve. Not because I did not know Linux, but because I did not know Linux in the context of embedded systems. Once I figured out various things, I’d have to say that 99.9% of my problems are a single google session away.

This is not to say that I know every_single_thing about the hardware, or even Linux. In fact, I consider Windows my primary OS for the desktop. Having been a DOS / Windows hobbyist developer since the 90’s . . . Which also happens to be approximately how long I’ve been using Debian.

Anyway, I’ve been trying to tell people on this group over the last couple years. If you’re going to do any serious development for the BBB; Use a Linux machine as your host machine. Personally, I think it is a bad idea to use anything other than Debian. But thats partly personal preference, and partly from lessons learned through the school of hard knocks. Now, if you’re using some other OS( BSD ), or distro on your BBB. I’d probably say use that OS / distro on your host also. At which point, you probably do not need / want advice from me.

I also agree with Lee on just about every aspect of OSX. Not that Windows ( software side ) is much better - Because depending which angle you’re coming from. It can be worse… However, if you’re dead set on keeping your OSX development workstation, there is nothing stopping you. Setup a Debian development machine. Be it a VM or in hardware. Setup a BBB development image, use NFS file sharing. Write all your code on your MAC. Then either cross compile the code on your Linux machine, or natively on the BBB. Simple . . . Personally, I keep my rootfs on my Debian development workstation, and load that on the BBB at boot time. This way I can do all the writing to disk I want, and not have to worry about flash media going bad.

I do seem to be seeing a lot of whining coming from the OSX crowd though . . ." a whole weekend blown" and “beagleboard.org needs to stop selling this product to OSX users . . .” Really?! These comments speak for themselves . . .

As for the other more civil comments I will say that it is a shame x.y.z does not work for you. Then if the rPI 2 does, then great by all means use it. I will say however that we recently just implemented CAN into our hardware / software recently, and I’ve yet to run into any problems short of the need to change kernels. The high level protocol we’re trying to communicate with is a PITA though, which has absolutely nothing to do with the hardware.

Lastly, anyone here who does answer questions about the hardware / software does not get paid to do so. So if you’re asking a question, and get no answer. You’re possibly asking a question thats been asked 500 times already, so learn how to use the search feature of google groups. You’re asking a question that is easy to figure out by spending a few seconds / minutes on your search engine of choice. You’re not giving enough information. OR maybe you’re asking a question no one knows the answer to( usually unlikely ). Or also usually very rare, you’re acting like a cry baby that expects attention . . . People like me have a filter for such users. It’s called the trash can " delete post " button in gmail.

Don’t even get me started on the fact that we’re talking about an embedded SBC here that denotes anyone using said board should be prepared to learn.

So if you’re not willing to spend some time and at least learn a good bit about the board and software you’re using on it. Stop wasting yours / our time and go somewhere else. For those of you who have truly invested a good bit of time with the hardware / software, and have decided to move on to something else. Well . . . that is unfortunate, and good luck. Do not however blame the community. Your project is your responsibility.

Hi Lee,

You’re not trying to tell me that BBB is for elite “makers with self respect” only, while RPi is for everyone, are you?
At university we have students using their own computers - running OSX, Windows and (very few) Linux.
They all want to learn and they expect to receive help if needed.
The labs do not have enough Ethernet points for them, so you see my interest in RNDIS.

I own MBP, not only because I think it is a quality product, but as well I need to test project on different platforms (for example nodejs webserver)
I understand your frustration with Apple and possibly some people from TI should take the matter in their hands to solve it.
The interoperability is very important and we need to accept variety of operating systems.

There is a huge interest in embedded Linux platforms.
The big advantage of BBB over RPi is that it is able to run out of the box with a single cable.
Losing that for many people will lead into frustration and disappointment and as you can see moving somewhere else.

Regards
Jan

Rndis & osx Yosemite is a problem for any linux board. With windows we have signed driver. For Mac… Well… If you have a Mac, we have the work done by the horndis developer…

http://joshuawise.com/horndis

Regards,

Rndis & osx Yosemite is a problem for any linux board. With windows we have signed driver. For Mac… Well… If you have a Mac, we have the work done by the horndis developer…

http://joshuawise.com/horndis

Regards,

And of course many( most ? all ? ) Android devices to boot. Don’t ask me how I know this as a Windows / Linux user except that it’s only been ongoing since ~AUG last year, and is only listed as the top 7 hit from a google search . . .

But somehow, it’s the beagleboard.org google groups fault . . .riiiiiight.

i have solved the problem of always having to enable flash player.
Go to
chrome://flags/#enable-ephemeral-flash-permission
Set enable ephemeral to disabled
Log out and then all should be good

Another choice
You can donate your MAC to me 1E3.gif