• 0
Krizzle

Mac + Analog Discovery 2 + Waveforms 2015: No device detected

Question

Hi folks - I have a Mac running 10.10.5 and another with 10.11 both not connecting to the Analog Discovery 2 hardware over USB. What I know:

  • Hardware works fine from a Windows VM on the Mac
  • Plugging in the AD2 loads kext com.digilent.driver.DigilentFtdiDriver AND com.apple.driver.AppleUSBFTDI
  • Neither removing com.apple.driver.AppleUSBFTDI via kextunload nor deleting the kext file helps
  • Following the *awesome* steps at this post didn't help - WaveForms sees and loads the driver (no logs spit out normally; logs spit out when I rename driver) but still no dice
  • Keeping AD2 unplugged while restarting: no dice
  • Reinstalling WafeForms and DigilentFtdiDriver-1.0.3.pkg - no dice

Any ideas? Eager to get working on Macs. 

Share this post


Link to post
Share on other sites

Recommended Posts

  • 1

This Issue still seems to persist.

I have the just downloaded the digilent.waveforms_v3.9.1.dmg and always get the message saying no device detected.

Im running MacOS 10.14.2 Mojave.

I noticed that the device is listed in my networking devices(see picture attatched).

Also i am also running a VM on my system, is it possible that parallels somehow messes with the drivers for the AD2?

I would love to get this fixed. Thanks!

Bildschirmfoto 2018-12-31 um 17.58.16.png

Share this post


Link to post
Share on other sites
  • 0

Hi Krizzle,

It looks like you've done all of the right things that I am aware of. The engineer best suited to answer your question commonly looks at this sub-forum, so you should hear back from them in a reasonable time frame.

Thanks,
JColvin

Share this post


Link to post
Share on other sites
  • 0

:( still no go.

  • Installed your above version
  • restarted
  • confirmed with kextstat that "com.digilent.driver.DigilentFtdiDriver (1.0.3)" loads only after I plug the AD2 in
  • no other FTDI kexts load
  • WaveFroms still says "No device detected". 

Any other ideas?

Share this post


Link to post
Share on other sites
  • 0

Would love to start using this awesome new piece of hardware on my Mac. Any more ideas on what I can do to get the app to recognize the USB device?

Share this post


Link to post
Share on other sites
  • 0

Hello,

I apologize for the long delay; I have contacted attila again so you can receive the feedback that you need.

Thank you,
JColvin

Share this post


Link to post
Share on other sites
  • 0

What's the conclusion on this? I'm having the same problem. kextstat shows:

  155    0 0xffffff7f83a82000 0x2000     0x2000     com.digilent.driver.DigilentFtdiDriver (1.0.3) 04D22EC0-C800-389F-A0FD-F0F759897EEE <18 4 3>

 
but WaveForms shows: No device detected
 
I'm on 10.12.1 (16B2555)

Share this post


Link to post
Share on other sites
  • 0

There are two FTDI drivers on my system. The top one is the one that comes with the OS. It's not going anywhere. 

 

  121    0 0xffffff7f82f07000 0x7000     0x7000     com.apple.driver.AppleUSBFTDI (5.0.0) 797D6BEE-10AD-30B0-97AE-157463D700AF <120 17 5 4 3 1>

  122    0 0xffffff7f82f0e000 0x2000     0x2000     com.digilent.driver.DigilentFtdiDriver (1.0.3) 04D22EC0-C800-389F-A0FD-F0F759897EEE <18 4 3>

 
The records for the two drivers in play. The internal one isn't loaded in this case:
 
            <dict>
                <key>_name</key>
                <string>AppleUSBFTDI</string>
                <key>spext_architectures</key>
                <array>
                    <string>x86_64</string>
                </array>
                <key>spext_bundleid</key>
                <string>com.apple.driver.AppleUSBFTDI</string>
                <key>spext_has64BitIntelCode</key>
                <string>spext_yes</string>
                <key>spext_hasAllDependencies</key>
                <string>spext_satisfied</string>
                <key>spext_info</key>
                <string>5.0.0, Apple USB FTDI driver</string>
                <key>spext_lastModified</key>
                <date>2016-09-09T01:19:58Z</date>
                <key>spext_loadable</key>
                <string>spext_yes</string>
                <key>spext_loaded</key>
                <string>spext_no</string>
                <key>spext_obtained_from</key>
                <string>spext_apple</string>
                <key>spext_path</key>
                <string>/System/Library/Extensions/AppleUSBFTDI.kext</string>
                <key>spext_runtime_environment</key>
                <string>spext_arch_x86</string>
                <key>spext_signed_by</key>
                <string>Software Signing, Apple Code Signing Certification Authority, Apple Root CA</string>
                <key>spext_version</key>
                <string>5.0.0</string>
                <key>version</key>
                <string>5.0.0</string>
            </dict>
 
 
The Digilent kext looks like it's loaded. It's just not finding anything.
 
            <dict>
                <key>_name</key>
                <string>DigilentFtdiDriver</string>
                <key>spext_architectures</key>
                <array>
                    <string>x86_64</string>
                </array>
                <key>spext_bundleid</key>
                <string>com.digilent.driver.DigilentFtdiDriver</string>
                <key>spext_has64BitIntelCode</key>
                <string>spext_yes</string>
                <key>spext_hasAllDependencies</key>
                <string>spext_satisfied</string>
                <key>spext_lastModified</key>
                <date>2014-08-29T16:34:33Z</date>
                <key>spext_load_address</key>
                <string>18446743521855594496</string>
                <key>spext_loadable</key>
                <string>spext_yes</string>
                <key>spext_loaded</key>
                <string>spext_yes</string>
                <key>spext_obtained_from</key>
                <string>spext_identified_developer</string>
                <key>spext_path</key>
                <string>/Library/Extensions/DigilentFtdiDriver.kext</string>
                <key>spext_runtime_environment</key>
                <string>spext_arch_x86</string>
                <key>spext_signed_by</key>
                <string>Developer ID Application: Digilent (3GQCL4AKGN), Developer ID Certification Authority, Apple Root CA</string>
                <key>spext_version</key>
                <string>1.0.3</string>
                <key>version</key>
                <string>1.0.3</string>
            </dict>
 

Share this post


Link to post
Share on other sites
  • 0

Hi,

I have the same problem. Tried both the WaveForms version in the thread and the official download. The problem exists with WaveForms and the SDK.

I'm running a 2016 MBP with 10.12.2

The AD2 works fine with Windows. Is there any way to run the SDK in demo mode?

Thanks

Christopher

Share this post


Link to post
Share on other sites
  • 0

FWIW, I never did get it to work. I installed Linux into a VM and ran it there. If it doesn't work, and they're clearly not going to support it, they shouldn't advertise that it works on a Mac.

Share this post


Link to post
Share on other sites
  • 0

@Krizzle, @bentwookie, @ChristopherN

A couple of fun points, tangent to the conversation.  First, if you start typing someone's screen name with an at (@) sign in front of it, you'll pull up a menu of possible screen names.  Select from that menu @attila or @JColvin's screen name's, and the name will get highlighted here.  Further, when you submit your comment, they'll get a notice that it's there--so they know something on the forum referenced them.  (You should get a similar notice, since I referenced you at the top of this post.)  I know sometimes the engineers lost track of active conversations that have involved them for some time, but this will help bring it to their attention.

Second ... It's the Christmas holiday.  (Merry Christmas everyone!)  Digilent is closed for a couple days.  Further, I expect several individuals on their engineering staff (don't know who ...) will be taking more extended vacations to be with family.

My point?  It might take the "engineering team" in question a couple days, or even perhaps a week or two, to get back to you and look at this.  Digilent isn't all that large, so I doubt the "team" you are referencing is that large either.  If they haven't responded here in a week or so, may I suggest you consider highlighting their names (as above) and ... they'll notice.  ;)

Dan

Share this post


Link to post
Share on other sites
  • 0

Hello @Krizzle @bentwookie ,

Sorry to hear that you have problems under OS X. On the Mac's we have in the office it is working fine and it is hard to guess what could be wrong on your side.
The person responsible for Adept Runtime and lower stuff is on vacation. He will be probably back only next year.

Please try running the following Python script. This should list the detected devices by the low level FTDI library, Adept and WaveForms Runtimes.
Enumerate.py

 

Hello @ChristopherN ,

The demo mode is intended to be used from the WaveForms application. I don't think it is useful for the SDK, but if you want you can open such with minus DEVID, like:
FDwfDeviceOpen(-3, &hdwf); // - devidDiscovery2

 

Merry Christmas

Share this post


Link to post
Share on other sites
  • 0

@D@n

Thanks for the heads up on the "@" function.

However, this seems to be unsolved for 6 months or so, I would be glad to get this resolved in the next few weeks. I would really like to use the AD2 as a mobile debug solution. Running VMs is a pain and cripples my workflow.

Could you give me feedback on my question if it's possible to run the (python) SDK in demo mode / without an AD2 connected?

Merry Christmas to all of you, and thanks for the AD2, it's a great tool.

Christopher

Share this post


Link to post
Share on other sites
  • 0

I was too slow ;)

Script output with AD2 connected:

ChristophersMBP:~ christopherniemoller$ sudo python /Users/christopherniemoller/Downloads/Enumerate.py 

Password:

dyld: warning, LC_RPATH @executable_path/../Frameworks in /Library/Frameworks/dwf.framework/dwf being ignored in restricted program because of @executable_path

 

FTDI Version: 0x10202

Devices: 1

Segmentation fault: 11

Without AD2 connected:

ChristophersMBP:~ christopherniemoller$ sudo python /Users/christopherniemoller/Downloads/Enumerate.py 

dyld: warning, LC_RPATH @executable_path/../Frameworks in /Library/Frameworks/dwf.framework/dwf being ignored in restricted program because of @executable_path

 

FTDI Version: 0x10202

Devices: 0

 

DMGR Version: 2.8.3

Devices: 0

 

DWF Version: 3.3.7

Devices: 0

@attila

Thanks for the help with the SDK.

Share this post


Link to post
Share on other sites
  • 0

Hi @robertdigital and @ChristopherN,

Letting you know that @attila and I see your responses/questions (although I don't have the knowledge to help debug the problems), but we're still waiting for the engineer to get back to Digilent from vacation. I'm hoping they'll be back sometime early January to collaborate with attlia on debugging the issues you are experiencing. 

I guess as a side note, D@n is correct in his guess about the small team you're working with (~2 people who can address this particular situation), so we're not able to get this resolved in an expedited fashion (so-to-speak).

Thanks,
JColvin

Share this post


Link to post
Share on other sites
  • 0

The same problem on Macbook Pro, OS X 10.11.6, new DA2, installed Waveforms 2015 and the driver it came with. kextstat | grep Diligent returns

   90    0 0xffffff7f80fa0000 0x2000     0x2000     com.digilent.driver.DigilentFtdiDriver (1.0.3) 04D22EC0-C800-389F-A0FD-F0F759897EEE <16 4 3>

 
Works on Windows PC, DA1 works on the same macbook and OS, the only problem is the occasional low power from the USB port.

Share this post


Link to post
Share on other sites
  • 0

@attila @JColvin I am having the same issue here. Waveforms 2015 doesn't seem to want to work with OSX Sierra. Unfortunately I need this to work for me this semester, and I really need to find a solution ASAP. The weird thing is that I've used Waveforms 2015 on this computer only a few months ago but had since removed it. This is totally unexpected and I am severely disappointed. I know this sort of thing may be challenging however I'm sure there are a lot of students who are in the same position as I'm in. As of right now the only solution I can think of is to run bootcamp or a VM and obtain a copy of Windows, a hassle I really don't need on top of my other responsibilities. Here's to a speedy solution. Cheers.

Share this post


Link to post
Share on other sites
  • 0

I have the same problem.

When I plug Analog Discovery 2 to MacBook Air with MacOSX 10.12.2(Japanese), I have the following console messages:

 13:59:43.718761 +0900    icdd    #ICDebug - 37:{ICWiredBrowser.m} (USB Interface first match)
 13:59:43.719546 +0900    icdd    #ICDebug - 388:{ICWiredBrowser.m} (2 USB Descriptions Managed)
 13:59:43.721879 +0900    icdd    #ICDebug - 460:{ICDDMessageCenter.m} (+Add Digilent USB Device - 0xff/0xff/0xff - 0x14200000 - ICDeviceDescriptionSUQuery)
 13:59:43.721908 +0900    icdd    #ICDebug - 213:{ICResourceManager.m} (00000000-0000-0000-0000-000004036014|Digilent USB Device|(null)|SW=FALSE|)
 13:59:43.724151 +0900    icdd    #ICDebug - 460:{ICDDMessageCenter.m} (+Add Digilent USB Device - 0xff/0xff/0xff - 0x14200000 - ICDeviceDescriptionUndefined)

Then WaveForms2015 displays the following in the device manager:

Name | Serial Number | Status

Discovery2| (its serial number) | (blank)

|Scope|Wavegen|Logic|Patterns|Others

1|(blank)|Devise not supported|(blank)...

 

 

 

Share this post


Link to post
Share on other sites
  • 0

@ChristopherN

 

I modified Attila's python script so that it will call the FTDI enumeration functions inside of libdftd2xx.dylib prior to attempting to call the ones in libftd2xx.dylib. Can you please try running the below script on your MBP with the AD2 attached and post the output?

Thanks,
Michael
 

digi_enum.py

 

 

Share this post


Link to post
Share on other sites
  • 0

@ChristopherN

If the script reports that no devices are connected please disconnect your AD2, reconnect it, and then execute the "syslog" command. If the Digilent kernel module is working correctly then you should see something similar to the following:

Jan 16 16:45:57 michaels-mbp kernel[0] <Notice>: Digilent Stopping
Jan 16 16:46:04 michaels-mbp kernel[0] <Notice>: Digilent probe8: initial probe score = 100000
Jan 16 16:46:04 michaels-mbp kernel[0] <Notice>: Digilent probe: Manufacturer Name = Digilent
Jan 16 16:46:04 michaels-mbp kernel[0] <Notice>: Digilent probe8: final probe score = 100001
Jan 16 16:46:04 michaels-mbp kernel[0] <Notice>: Digilent Starting

If you can't find anything with "syslog | grep Digilent" or you see "Digilent Stopping" while the device is still connected then something isn't working correclty with the kernel extension.

Thanks,

Michael

Share this post


Link to post
Share on other sites
  • 0

Dear Michael,

Thank you for your response.

I tried to execute your digital_enum.py on my MacBook Air with MacOSX10.12.2.

Then, it stoped by the following errors:

$ python digi_enum.py 

Traceback (most recent call last):

  File "digi_enum.py", line 9, in <module>

    dwf = cdll.LoadLibrary("/Library/Frameworks/dwf.framework/dwf")

  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 443, in LoadLibrary

    return self._dlltype(name)

  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/ctypes/__init__.py", line 365, in __init__

    self._handle = _dlopen(self._name, mode)

OSError: dlopen(/Library/Frameworks/dwf.framework/dwf, 6): image not found

 

I think that it requires more some files.

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now