# Native E-Sys on Mac OS X



## e90boy (Sep 30, 2007)

I'm running an Intel i7 Hackintosh with Mavericks as main OS, I would be interested in seeing how this would run.


Sent from BimmerApp mobile app


----------



## TokenMaster (Jul 18, 2013)

Bad news. I'm gonna need help from more experienced C programmers. E-Sys is using Vector XL driver to communicate via CAN bus, and this library appears to be Windows only. This driver just handles communication, sending and receiving those 8-bytes data frame. Logic still resides on E-Sys. Since CAN is a known standard, it's possible to replace the actual driver, say, with OpenCAN, then tell jar file to use this. It's gotten way bigger than I originally anticipated, though. 

So, at this point, it's still proof of concept. Opening/editing/viewing CAFD/NCD/FA...etc., works well, but connecting to car is a major fail. I'll release what I have in the coming days just for kicks, if nothing else.

If anyone is interested, look at driver.jar and prodias.jar


----------



## Zaman (Feb 21, 2013)

WOw!! Keep on man! I love it! I am not a MAC OS developer. I can cheer you up though!!


----------



## smartas (Feb 5, 2013)

This is really great work! I hope you're able to get this working.


----------



## Infamouz627 (Jun 5, 2014)

Very interested in Esys for OSX. I've personally hit a roadblock myself trying to code via VM on VirtualBox on my Macbook Pro with standalone Ethernet port. I know smartas has done this successfully but I've reached out to him and the last activity was the post above so I guess he isn't on here very frequently. I just can't seem to establish a connection with the car and I've tried different network settings. I've even tried establishing a connection to the internet in my apartment via Ethernet so that I won't have to keep the car on and potentially drain the battery. Someone mentioned they also used VB but instead of directly through the Ethernet port, they had to use a USB-Ethernet adapter because their macbook air did not have a standalone Ethernet port, I'd like to avoid this if I can, trying to save a few bucks. I don't know how familiar you are with VirtualBox but would you happen to have any advice TokenMaster? If and when I can get this thing to connect, I'll be purchasing a token from you.


----------



## smartas (Feb 5, 2013)

I'm around just been too busy to reply. I saw your PM as well. I'll try to make time tonight or tomorrow to address your questions/problems.



Infamouz627 said:


> Very interested in Esys for OSX. I've personally hit a roadblock myself trying to code via VM on VirtualBox on my Macbook Pro with standalone Ethernet port. I know smartas has done this successfully but I've reached out to him and the last activity was the post above so I guess he isn't on here very frequently. I just can't seem to establish a connection with the car and I've tried different network settings. I've even tried establishing a connection to the internet in my apartment via Ethernet so that I won't have to keep the car on and potentially drain the battery. Someone mentioned they also used VB but instead of directly through the Ethernet port, they had to use a USB-Ethernet adapter because their macbook air did not have a standalone Ethernet port, I'd like to avoid this if I can, trying to save a few bucks. I don't know how familiar you are with VirtualBox but would you happen to have any advice TokenMaster? If and when I can get this thing to connect, I'll be purchasing a token from you.


Sent from BimmerApp mobile app


----------



## shawnsheridan (Jan 10, 2009)

Did you disable the Windows firewall on the VM and set the VM Ethernet Adapter for Bridged?

Does the Windows LAN Port get an IP address of 169.254.xxx.xxx?


----------



## TokenMaster (Jul 18, 2013)

I use VB all the time, on Windows though. Shawn is right. You need to configure it to use "Bridged Adapter" under Network settings, then choose your Ethernet adapter.

As for E-Sys on OSX, the app uses Windows Native Library to send and receive CAN messages. So, connecting to car is not possible at the moment. At its current state, the most you can do is edit/view FA/CAF/NCD/FP...etc. I've been terribly busy with something else as well over the last few weeks. Nothing related to BMW and haven't even touched E-Sys.


----------



## TokenMaster (Jul 18, 2013)

From Readme.txt


> NOTE: Connecting to car is not possible at the moment due to E-Sys use of windows native library to communicate to CAN bus. If anything, this package allows you to view/edit NCD/CAFD/FA...etc without having to launch virtualized Windows environment, but that's about it.
> 
> You must have an E-Sys 3.24.x already installed. You will need everything but one folder from C:\EC-Apps\ESG\E-Sys. In my OSX ML, Java came installed with the OS, so check yours if you have anything older than ML.
> 
> ...


Rename attachment to .zip.

Note: The package does not contain any E-Sys files as created by ESG Elektroniksystem - und logistik. If however, this is stil against the forum rule, the file can be deleted.


----------



## AZsean (Oct 4, 2013)

I figured this out last fall using parallels. It is late now but feel free to PM me and we can chat. Maybe run through it over the phone.


Sent from BimmerApp mobile app


----------



## Infamouz627 (Jun 5, 2014)

shawnsheridan said:


> Did you disable the Windows firewall on the VM and set the VM Ethernet Adapter for Bridged?
> 
> Does the Windows LAN Port get an IP address of 169.254.xxx.xxx?





TokenMaster said:


> I use VB all the time, on Windows though. Shawn is right. You need to configure it to use "Bridged Adapter" under Network settings, then choose your Ethernet adapter.





AZsean said:


> I figured this out last fall using parallels. It is late now but feel free to PM me and we can chat. Maybe run through it over the phone.
> 
> Sent from BimmerApp mobile app


Lol sorry to have steered this from a promoting E-sys for OSX thread to a troubleshoot for running E-sys by VM thread. I appreciate everyones help though, thank you!!

Shawn & TokenMaster, firewall is disabled on windows side. Network is set to "bridged adapter" "name: en0:Ethernet". I do get an IP address on LAN but as you can see below, the IP addresses don't match.

Sean, thanks for your offer. I'm gonna give this post some time and try one other thing. If I can't get a fix after that, you'll be hearing from me :thumbup:


----------



## Infamouz627 (Jun 5, 2014)

Ok so I did more research and I came across one of AZsean's posts about creating a new profile in the network settings and removing all network connections. Then I followed his instructions and created a new network connection for Ethernet only. I connected the cable directly from the modem to my macs Ethernet port (this was a test as I assume if internet can be bridged to the guest side, so would info from the car via enet cable when connected) and was able to get a signal on the host side but when launching VM and checking the LAN details, again the IP address does not match that of the host's and signal was not carried over to guest. I guess the problem is getting the IP addresses to match, if I can get this down it would probably solve this problem (unless I'm all wrong and IP addresses are NOT supposed to match then I'm not sure what could be wrong).

I also noticed that in the VM network settings if I choose advanced and change the adapter type to anything other than PCnet II (Am79C973) or PCnet-Fast III (Am79C973), the LAN connection does not even show up under Network Connections on windows. Each adapter type also registers a slightly different IP address...169.254.36.202 (Local area connection 2) and 169.254.166.206 (Local area connection) respectively.

EDIT: I just tried setting Ethernet configure IPv4 from "Using DHCP" to "Using DHCP with manual address" and changed the IP address to 169.254.166.206 so that it would match the IP from the guest side and that did nothing. Now I'm at a loss.


----------



## AZsean (Oct 4, 2013)

I took a quick look at my settings in my virtual machine and wanted to confirm what settings I was using. I don't know if you have a thunderbolt equipped Mac but I essentially when into my network settings on the virtual machine side, used the bridged setting and then used the "Thunderbolt Bridge" option that I created. This was obviously after I made changes on the Mac OS X side for new profile with only that "Thunderbolt bridge" connection. Not sure if that helps but I can try later to make sure I'm not missing any steps. It has been a while since I've coded and there is a few things I need to add!



Infamouz627 said:


> Ok so I did more research and I came across one of AZsean's posts about creating a new profile in the network settings and removing all network connections. Then I followed his instructions and created a new network connection for Ethernet only. I connected the cable directly from the modem to my macs Ethernet port (this was a test as I assume if internet can be bridged to the guest side, so would info from the car via enet cable when connected) and was able to get a signal on the host side but when launching VM and checking the LAN details, again the IP address does not match that of the host's and signal was not carried over to guest. I guess the problem is getting the IP addresses to match, if I can get this down it would probably solve this problem (unless I'm all wrong and IP addresses are NOT supposed to match then I'm not sure what could be wrong).
> 
> I also noticed that in the VM network settings if I choose advanced and change the adapter type to anything other than PCnet II (Am79C973) or PCnet-Fast III (Am79C973), the LAN connection does not even show up under Network Connections on windows. Each adapter type also registers a slightly different IP address...169.254.36.202 (Local area connection 2) and 169.254.166.206 (Local area connection) respectively.
> 
> EDIT: I just tried setting Ethernet configure IPv4 from "Using DHCP" to "Using DHCP with manual address" and changed the IP address to 169.254.166.206 so that it would match the IP from the guest side and that did nothing. Now I'm at a loss.


----------



## Infamouz627 (Jun 5, 2014)

Good news! I went to the car and tried connecting to the car instead of fumbling around with the internet connection. Looks like the whole internet thing had me running around in circles but when I went to try with the car (albeit I had to wait several minutes) it finally connected. This is after I created a new profile with Ethernet alone. I finally am able to connect via VIN!! Bad news however, when I hit connect, I get an error message "Open connection failed. [C028] RuntimeException: I am just a wrapper" Please tell me this is because I have yet to buy a Token and not any additional problems.


----------



## jonould (Apr 12, 2014)

*E-Sys native on OSX*

Hi,
I'd be up for helping beta test this when you're ready too.

I've a windows version with one of your tokens running at the moment, but am in process of converting the house to Macs finally.


----------



## TokenMaster (Jul 18, 2013)

The project is on hold for weeks now. I can't find time to code CAN Bus message handler in Java so I need help there. Protocol is TCP-based and well known. It's likely that one is built already. So, either Java or OSX port (.dylib, .so) is needed to connect to the car. If anyone's willing to take a crack at it, I'll post the interface definition.

See post #29 for the released file


----------



## smartas (Feb 5, 2013)

Infamouz627 said:


> Lol sorry to have steered this from a promoting E-sys for OSX thread to a troubleshoot for running E-sys by VM thread. I appreciate everyones help though, thank you!!
> 
> Shawn & TokenMaster, firewall is disabled on windows side. Network is set to "bridged adapter" "name: en0:Ethernet". I do get an IP address on LAN but as you can see below, the IP addresses don't match.
> 
> Sean, thanks for your offer. I'm gonna give this post some time and try one other thing. If I can't get a fix after that, you'll be hearing from me :thumbup:


This is exactly what you're supposed to see. The IP is an auto-configured one, the computer picks one that's not in use. It won't always be the same. I don't think your problem is networking.


----------



## webwolf2007 (Mar 23, 2015)

Did you get anywhere with this since June? I'm still very interested. I have a mac, not PC, and no desire to do VM if I can help it.


----------



## shawnsheridan (Jan 10, 2009)

webwolf2007 said:


> Did you get anywhere with this since June? I'm still very interested. I have a mac, not PC, and no desire to do VM if I can help it.


No. There is no native Mac solution.


----------



## spadae2 (Jan 5, 2011)

Love it, mac forever, hate windows


----------

