BimmerFest BMW Forum banner

Coding using a MacBook Air

15K views 16 replies 12 participants last post by  slothinker 
#1 ·
I have an F10 on order that is now about 10 days away that I definitely want to code. Only problem is my laptop is a 2011 MAcBook Air, with flash memory and therefore limited storage, as well as no Ethernet port. No flaming, please, as it's a great laptop for everything I need (until this rather unconventional use). I am a technophile so not afraid of the learning curve.

I'm wondering if others have coded using this setup. I realize I need to use Parallels or VMWare and then install XP, but I also wonder if I can install the files on an external (eg, USB) drive and also whether the Apple USB to ENet cable works for this. I'm a little wary, as by the time I buy the virtualization software, XP, USB/ENet cable and Coding cable, I will have spent a bunch. Before I consider that, I'd love to hear some feedback.

Otherwise if someone can point me to a coding solution in the Miami area, that would also be welcome so I can assess my options. Thanks in advance!
 
#2 ·
Yes. It works totally fine. I was using my MacBook Air and the Apple USB Ethernet adapter. I've since upgraded to a Retina MacBook Pro and have also coded using both the USB and Thunderbolt Ethernet adapters.

I don't have the driver file handy, but I found the USB Ethernet drivers for Windows by Googling.
 
#3 ·
Thanks! Could I install the files needed (many GBs needed, I understand) on an external drive? My solid state drive is mostly full.
 
#4 ·
Yes. Just put the VM on the external storage. Everything will work just fine. VMware and Parallels are great for that. I have lots of VM's on USB sticks that we give to employees for testing, etc.
 
#7 · (Edited)
Seeing limited connectivity between windows and car through ENET cable is very normal.

It takes about 50-60 seconds to show limited connectivity. You can note down this set IP address on your windows and set that as static on your windows. That would establish instant connection between windows and car and would not show limited connectivity. Note: even the limited connectivity is acceptable if you do not want to set an static ip on your windows for this connection.
 
#8 · (Edited)
I used my MacBook Pro running VMFusion - Win Pro 7. Data on Mac HD, E-Sys installed on C drive. Works without issue.
Make sure you change the network adapter to Ethernet and set to DHCP.
 
#9 ·
I'm using a mid-2012 11" MacBook Air for coding E and F Series cars and it's awesome. I installed Windows 7 Pro using Bootcamp though; I prefer to boot directly into Windows rather than using a VM. For ethernet I'm using the Thunderbolt to ethernet adapter.

The small size is great for use in a car, the screen resolution is plenty for coding, the backlit keys are great in low-light areas, the solid aluminum chassis is as sturdy as can be, it's very light, and most importantly, this thing is FAST.
 
#10 ·
I have an F10 on order that is now about 10 days away that I definitely want to code. Only problem is my laptop is a 2011 MAcBook Air, with flash memory and therefore limited storage, as well as no Ethernet port. No flaming, please, as it's a great laptop for everything I need (until this rather unconventional use). I am a technophile so not afraid of the learning curve.

I'm wondering if others have coded using this setup. I realize I need to use Parallels or VMWare and then install XP, but I also wonder if I can install the files on an external (eg, USB) drive and also whether the Apple USB to ENet cable works for this. I'm a little wary, as by the time I buy the virtualization software, XP, USB/ENet cable and Coding cable, I will have spent a bunch. Before I consider that, I'd love to hear some feedback.

Otherwise if someone can point me to a coding solution in the Miami area, that would also be welcome so I can assess my options. Thanks in advance!
I use a mid-July 2011 MBA with a 256GB SSD and 4GB RAM. I code via a Parallels 8 VM in which I installed Windows 7.

In the VM, I stripped out EVERYTHING I didn't need -- no Office, no nuthin'.

To avoid having to duplicate the very large data files in the VM, I used the mklink command (new in Windows 7) to map one directory to the other. (I don't recall which two directories are duplicated, but this saves a fortune in disk space.)

And, I since don't code all the time, I just off-load the whole VM to a backup (spinning) drive and re-load it before a coding session.

Some notes:
  • BE SURE to turn off the WiFi adapter in the MBA and use ONLY the USB Ethernet adapter or the Thunderbolt adapter (I use USB)
  • Make sure to tell Parallels to BRIDGE (not SHARED NETWORK) the wired Ethernet adapter. If you don't, you get nothing since the OBD II port will not see the virtual adapter
  • I prefer to run the Windows VM in full-screen mode to avoid being distracted. It's just superstition, but I'd hate to lose the focus on the VM, not be able to get it back and have Parallels suspend the VM during an FDL code.
  • For that very reason, I turn off all sleeping settings anywhere and everywhere I find them.
If you do all this, you essentially turn the MBA into a temporary dedicated Windows machine -- with advantages others don't have. You can easily have multiple versions of the machine. You can create a VM that contains the as-shipped version of your car for backup of not just the CAFD files -- but the whole stinkin' environment needed to restore every ECU. You can try different levels of data and E-Sys easily.

It's more work, but coding from a VM is better, both from a flexibility and reliability standpoint. I'd do it no other way.
 
#11 · (Edited)
FYI. Good thinking with mklink, but you are working off the original instructions which incorrectly had the files duplicated in both of these locations:

C:\ESysData\psdzdata\swe
C:\ESysData\SWE

This was a mistake. Nothing is needed in the C:\ESysData\SWE folder.

Also, for my money, if I was going to setup a VM, I would go with XP. There are "other" BMW Programs that simply will not run on anything but XP 32, but if you are only going to run E-Sys, then Win7 32 or even 64 will work fine.
 
#14 ·
I'm a security nut. Big Java apps -- which is what E-Sys is -- are weak in security by themselves. And they require you to keep Java installed on your real machine, which if you follow security news you know is the target of many exploits.

Plus, I am currently using a MacBook Air. I do have a new ThinkPad on order -- but that won't change the way I run E-Sys. I'll code from a virtual machine even when I run a PC.
 
#15 ·
I was struggling for about an hour with the USB to Ethernet adapter on MacBook air and Windows running in VMWare. (I think the same would apply to Parallels though).

It is best that you actually do not bridge any adapters.

Make sure the USB adapter (since it's a USB device) is not recognized in Mac OS, but instead recognized in virtual machine. Windows will install the drivers for that USB device (or find the driver online if it can't).

Then DISCONNECT and DISABLE any other network adapters in the virtual machine settings. The only available connection will be the USB connection.

Then ZGW magically appeared and everything started to work.
 
#17 · (Edited)
Gave up on coding via Mac

I have a Macbook Pro circa 2016 and put quite a bit of time into trying to use E-Sys with the Mac via Parallels. I should say that although I have Windows and Parallels, I don't typically use it.

In brief I found that the one level of indirection of trying to use an Ethernet connection w/ the Mac and E-Sys was more trouble than it was worth. Part of the problem may have been the 3rd party adapter of the Mac's USB-C to Ethernet.

Ultimately I bought on Craigslist a used Toshiba PC with Windows 10 on it and a built-in ethernet port.

Regarding the coding, I also found it confusing how many guides and versions of software are out there. For $29.95 I got a software kit from bmwspot.com ... I really appreciated getting a set of instructions and software that had hopefully been tested together. (And did work fine together!)

I found that the Getting Started instructional guide that they provided worked well. It is also available online and I put a copy of it on an iPad and worked through it for each of the changes that I made.

I ran the car's engine and also had the laptop plugged in. I changed a module at a time although after a while it was tempting to do more. I also dragged in a trackball. (If I were going to do this all the time, I think I'd set up on a workbench next to the car. It's pretty awkward to do from the driver's seat.)

I have '16 BMW 328i without a lot of fancy features. Nevertheless I was able to get the windows to roll up (and down) w/ fob; the side mirrors to fold and unfold; the doors to unlock when the car is turned off (no more double pull on handle), fog lights to be independent and a few other nice features.

I set up the rear view camera to stay on as long as possible (about 1/4 mile, I think). I've seen a feature on late-model Honda which allow the driver to activate the rear-view camera on command anytime ... I think that's a very nice feature and wish it was available on the BMWs.

Finally, hats off to Shawn and Tokenmaster and everyone else who worked so hard to put this information out there. Thank you!! It's amazing and exhilarating to be able to adjust internal options and even more amazing when it works. Good luck!
 
This is an older thread, you may not receive a response, and could be reviving an old thread. Please consider creating a new thread.
Top