Jump to content

Lloyd Parkes

Members
  • Posts

    5
  • Joined

  • Last visited

Everything posted by Lloyd Parkes

  1. Hi all, Does anyone remember at what version of libdwf.so the new device enumeration filters like enumfilterType were introduced? Passing the new enum filters to the old library reliably results in no devices being found, so I'm wondering about putting a version check in my code. Cheers, Lloyd
  2. I made the beginner mistake of jumping into Linux mode without doing the optional Linux upgrade. It turns out that the Linux software my ADP3250 shipped with was horror-old. Of course, my ADP3250 isn't brand new any more either. With the latest (version 11) Linux image I have noticed that when I don't sudo, that the S/N of the AXI connection shows up as "SN:SudoRequired". Nice. Now I'm off to report a bug in the pydwf library. It only supports the old style device enumeration, so it doesn't allow you enumerate only AXI connected devices. This is why I had to unplug the ethernet cable from my ADP3250 for enumeration to only find one device.
  3. Did you run the program as root? I didn't run your program because life's too short to hand craft Python code to interface directly to C. Instead I did the following. I probably should have backed up the ADP3250 first, but I YOLOed it instead. digilent@ADPro:~$ sudo -i root@ADPro:~# apt update root@ADPro:~# apt install python3-pip root@ADPro:~# pip3 install pydwf Note that installing pip will pull in a full C development environment because pip sometimes needs it, so don't be alarmed about the number if packages that get installed. I was expecting to need to install numpy which is a requirement of pydwf, but unlike the C development packages, numpy was already installed. Then I copied AnalogIO.py from Github in to the ADP3250 and then I unplugged the the ethernet cable from my ADP3250. Then I ran digilent@ADPro:~$ sudo python3 AnalogIO.py analogIO.enableSet() supported ......... : True analogIO.enableStatus() supported ...... : True analogIO.enableGet() ................... : False analogIO.enableStatus() ................ : False ... Channel #1 (2 of 4 channels) named ('Zynq', 'Zynq') has 7 nodes: node #0 (1 of 7): node_name ............. ('Temperature', 'C') node_info ............. DwfAnalogIO.Temperature node_set_info ......... (0.0, 0.0, 0) node_get .............. 0.0 node_status_info ...... (0.0, 100.0, 1000) node_status ........... 51.17009353637701 ... Traceback (most recent call last): File "AnalogIO.py", line 119, in <module> main() File "AnalogIO.py", line 111, in main demo_analog_io_continuous_readout(device.analogIO, "USB Monitor") File "AnalogIO.py", line 68, in demo_analog_io_continuous_readout raise RuntimeError("Unable to find unique channel {!r}.".format(channel_name)) RuntimeError: Unable to find unique channel 'USB Monitor'. If you don't unplug the ethernet cable, then AnalogIO.py will find the ethernet interface to the ADP5230 as well as the USB one and not know which one to use. AnalogIO.py supports selecting the device based on the serial number, but that isn't going to help here. Cheers, Lloyd p.s. Working out how to filter out the unwanted ethernet connect to the ADP3250 was a complete pain in the proverbial.The two interfaces to the ADP3250 have different device version numbers, which I can only assume is how the WaveForms software differentiates them. In my case the version number of the non-ethernet interface was 1796 and so I just hard-coded "device_version_filter=1796" into the call to openDwfDevice() in AnalogIO.py and I could now run it without having to unplug the ethernet.
  4. I don't have an Anaolg Discovery 2 and I don't have a Linux VDI, but I do have an Analog Discovery PRO and a lot of experience with Linux. When I plug my Analog Discovery PRO into my latop, I get three new devices showing up in lsusb. Do you get all three in your VDI? Bus 003 Device 011: ID 0403:6001 Future Technology Devices International, Ltd FT232 Serial (UART) IC Bus 003 Device 010: ID 1443:0007 Digilent Development board JTAG Bus 003 Device 009: ID 0424:2512 Microchip Technology, Inc. (formerly SMSC) USB 2.0 Hub The lsof utility tells me that waveforms is accessing the Analog Discovery PRO via /dev/bus/usb/003/010, which lines up with the middle entry above. I had a quick look at that device entry and got this. $ ls -l /dev/bus/usb/003/010 crw-rw-rw- 1 root root 189, 265 May 24 15:06 /dev/bus/usb/003/010 Do you have that in your Linux VDI? Cheers, Lloyd
  5. Do you have an example where the clock has been simulated in the past? I have only ever seen clocks implemented manually in the testbench code. Maybe in the past you simulated a downloaded project and you didn't notice that it has a testbench in the simulated sources? It would be an easy thing to overlook. Cheers, Lloyd
×
×
  • Create New...