Post Go back to editing

Using ACE Software and AD4130-8WARDZ on Mbed-Compatible Hardware

Category: Software
Product Number: AD4130-8WARDZ

Hi all,

I am currently trying to get ACE working with an AD4130-8WARDZ board and have not had any success. Unfortunately, I am unable to get my hands on the SDP-K1 board and as such I am using an STM32 NUCLEO-F446RE - which I am led to believe is compatible as per a few notes across the AD4130-8WARDZ documentation (such as this comment here).

Currently, I am able to see a message on the serial port that seems to indicate the firmware on my board is initializing properly. However, I am not able to connect to the board in ACE. Maybe worth noting: when I launch ACE without my board connected, the "Blink LED" button is not accessible. When I plug my board in, even though the board is not detected, the "Blink LED" button becomes clickable. 

I have tried the following:

  • Fresh install of ACE and the AD4130 plugin (and rebooted my PC).
  • Fresh install of MS Visual C++ Redistributable 2013 as per this question.
  • Modified the Keil mbed_app.json file to include the line "target.device_has_add": ["USBDEVICE"] target override (an error would be displayed on the serial port without this).
  • Added physical pull-up resistors to the AD4130-8WARDZ board on R110 and R111 (the EEPROM would not be detected without them).
  • Fiddled with the Serial Port settings inside ACE.
  • Reinstalled STM32 Virtual COM Port driver.

Lastly, I have attached the log file in case that is of any help.

Any assistance would be greatly appreciated! Thanks.

  • Hi,

    I support the SDP-K1 and I work with the team that put together the code in your AD4130-8WARDZ link. I have an AD4130 evaluation board on my desk here right now. I don't have an STM32 F466RE, but I have an F411RE.
    I'll review what you have done already and try to replicate the issue here. Depending on what I see I may need to pass your support request on to the ACE team, or somebody from the AD4130 team but let's see what I find first.

  • Hi, difficult to believe a full week has passed, apologies for the delay.

    Is your end goal to use the ACE evaluation software? I do believe that the demo described in the AD4130 IIO Application [Analog Devices Wiki] link can be run on the SDP-K1 OR the F446RE with minor adjustments. I need to consult some colleagues on whether the ACE software can be run with the F446RE.

    Have you tried the AD4130 IIO Application using the IIO Oscilloscope, but using the F446RE instead? Right now I'm having an issue with that, and the resolution for my issue my help you, but I think there may be other issues that prevent "ACE + F446RE".

    From your log file, a few lines are sticking out:

    11:17:11 No tinyiiod compatible devices found

    11:17:11 Error refreshing controller COM9:
    AnalogDevices.Csa.Exceptions.Exception`1[AnalogDevices.Csa.Hardware.Exceptions.HardwareExceptionArgs]: Timed out waiting for device lock ---> System.IO.IOException: The port 'COM9' does not exist.

    11:17:35 Invalid Details.txt file for drive D:\! UniqueId line not found.

    tinyiiod refers to the firmware on the SDP-K1/F446RE

    I'm not sure why the system has lost track of what COM port your board is on, or if the port has become non-responsive.

    details.txt is a file on the SDP-K1/F446RE that you can open in Windows. I'm not sure what the expected UniqueId is. This may be something that limits ACE to particular controller boards. I need to consult with colleagues on this. 

  • Hi  ,

    No worries for the delay. Yes, my goal is to run the ACE software (preferably using the F446RE - as the SDP-K1 board is currently unavailable).

    I did previously try the IIO Oscilloscope application, but unfortunately ran into the same issue as above where it seemed that the device could not be detected.

    Please let me know if there is any other info/screenshots I can provide that might help out and I can add them to the thread. Thanks!

  • OK, that's interesting. I failed to compile the mbed iio firmware for an F411RE today.

    When I compile for the SDP-K1 it does succeed... but there is out of date information in the GitHubcode. When I run it I get "no iio devices found":

    However, if you modify line 114 of the app_config.h file in Keil Studio to read:

    The value that the program expects will match what is stored in the EEPROM and:

    Your system should see a valid iio device.

    I've alerted the firmware team to that out of date info in GitHub.

    I've arranged to discuss the use of Nucleo boards with ACE with a colleague tomorrow.

    I'm optimistic that the supply of SDP-K1 boards will improve later this year, but that doesn't help either of us right now!

  • Hi, 
    I will add a couple points to Davids feedback. 

    In relation to the hw_mezzanine issue David mentioned in his most recent comment, if you are seeing this issue then you may need to use a different value in your code. 
    In Davids first image showing the mis-match, the "hw_mezzanine" global attribute is showing the value that is programmed on the board. You should take the value you see here and use that in your code as it may be different to Davids. 

    In terms of ACE, the AD4130 plug in does not support the STM boards. The comments you saw are in reference only to the firmware and do not include the ACE plug in.  The AD4130 plug in was developed specifically for the SDP-K1 board. However there is another solution in ACE you can use. 

    We are in the process of adding tinyiiod firmware support to ACE. There is a plug in available now called Board.ADGenericIIO you can install via the Plug In Manager.
    Then open the Serial Port settings of ACE and add a new port. Select the COM port for your board, the corresponding Baud rate and the IIO protocol. 

    Board.ADGenericIIO should then detect your board. 
    This is a very early version of this plug in and may be prone to issues, however it should provide you with a GUI interface to configure the board and do some basic data capture and analysis.