using no os adrv9008-1 with iio osc

Hello

 

I saw that there is an update, and I can also use your example now on ADRV9008-1 with no os

from this link :

https://github.com/analogdevicesinc/no-OS/tree/master/projects/adrv9009

 

So I am trying to test this on adrv9008-1 with ZC706.

And  decided to test the example with IIO OSCILLOSCOPE

So I used the following link:

https://wiki.analog.com/resources/eval/user-guides/adrv9009/no-os-setup

 

I then tried to use IIOOSCILLOSCOPE from windows but without success.

 i first connect to the board via  UART to see the runtime output messages

Hello
rx_clkgen: MMCM-PLL locked (122880000 Hz)
rx_adxcvr: OK (4915200 kHz)
talise: Device Revision 192, Firmware 6.0.2, API 3.6.0.5
talise: Calibrations completed successfully
warning: TAL_DEFRAMER_A status 0x10
warning: TAL_FRAMER_B status 0x9
rx_jesd status:
Link is enabled
Measured Link Clock: 122.885 MHz
Reported Link Clock: 122.880 MHz
Lane rate: 4915.200 MHz
Lane rate / 40: 122.880 MHz
LMFC rate: 3.840 MHz
Link status: DATA
SYSREF captured: Yes
SYSREF alignment error: No
rx_adc: Successfully initialized (122885131 Hz)
Bye

then disconnect the serial terminal, and reconnect with 921600 baud rate

I get the following message

 even though I did exactly the same steps described here:

https://wiki.analog.com/resources/no-os/tinyiiod_demo

 

 

Would appreciate your  help

thanks

Ron

Top Replies

  • 0
    •  Analog Employees 
    on Jun 2, 2021 4:36 PM

    Hi Ron,

    You need to see the message: 'The board accepts libiio clients connections through the serial backend.'

    So you need to build the project with tinyiiod support.

    Run 'make clean_all' and then 'make TINYIIOD=y'

    A guide can be found here .

    Regards,

    Mihail

  • Hi Mihail,

    I have already run the command  'make clean_all' and then 'make TINYIIOD=y'

    as described here:https://wiki.analog.com/resources/no-os/tinyiiod_demo

    I will describe in more detail what I did

    used the hdl_branch_2019.2 to build the hdf file
    then cloned the git master branch of no os 

    and then in windows opened cmd with administrator privilege 

    and run:

    C:\Xilinx\SDK\2019.1\settings64.bat

    then uncommented #define ADRV9008_1  the app_config.h file :



    #ifndef APP_CONFIG_H_
    #define APP_CONFIG_H_

    /* Uncomment if using adrv2crr-fmc + adrv9009-zu11eg: */
    // #define ZU11EG

    /* Uncomment if using zcu102 + fmcomms8: */
    // #define FMCOMMS8_ZCU102

    /* Provided ZU11EG or FMCOMMS8_ZCU102 were not defined, this project builds
    * by default for zc706 + adrv9009-w/pcbz.
    */

    /* To build ADRV9008-1/ADRV9008-2, uncomment one (only one) of the lines below: */
    #define ADRV9008_1
    //#define ADRV9008_2

    /* To build a specific example, uncomment one (only one) of the lines below: */
    // #define DAC_DMA_EXAMPLE
    //#define IIO_SUPPORT

    #endif /* APP_CONFIG_H_ */

    and run make clean_all from the project location 

    and then make TINYIIOD=y

    i attached the log file 

    then i run: make run 

    also attached the log file

     i first connect to the board via  UART to see the runtime output messages

    Hello
    rx_clkgen: MMCM-PLL locked (122880000 Hz)
    rx_adxcvr: OK (4915200 kHz)
    talise: Device Revision 192, Firmware 6.0.2, API 3.6.0.5
    talise: Calibrations completed successfully
    warning: TAL_DEFRAMER_A status 0x10
    warning: TAL_FRAMER_B status 0x9
    rx_jesd status:
    Link is enabled
    Measured Link Clock: 122.885 MHz
    Reported Link Clock: 122.880 MHz
    Lane rate: 4915.200 MHz
    Lane rate / 40: 122.880 MHz
    LMFC rate: 3.840 MHz
    Link status: DATA
    SYSREF captured: Yes
    SYSREF alignment error: No
    rx_adc: Successfully initialized (122885131 Hz)
    Bye

    then disconnect the serial terminal, and reconnect with 921600 baud rate

    I get the following message

    Unknown error (138)

    please advise 

    thanks

    ron

  • 0
    •  Analog Employees 
    on Jun 3, 2021 6:22 PM in reply to ron1

    Can you disconnect the terminal and then try running again osc.exe ?
    Only one program at a time can use a COM port. 
    If this don't solve your issue, can you try to send

    `PRINT` with \r\n at the end over the terminal and see if you get some output?

    Mihail

  • hi mihail,

    it did not work

    I am sending the make TINYIIOD=y output and make run output


    C:\adi\no-OS\projects\adrv9009>make clean_all
    [00:00:00] [Delete] C:/adi/no-OS/projects/adrv9009/build

    C:\adi\no-OS\projects\adrv9009>make clean_all
    The system cannot find the file specified.
    make: [C:/adi/no-OS/tools/scripts/xilinx.mk:162: xilinx_clean_all] Error 2 (ignored)
    [00:00:00] [Delete] C:/adi/no-OS/projects/adrv9009/build
    The system cannot find the file specified.
    make: [../../tools/scripts/generic.mk:364: clean_all] Error 2 (ignored)

    C:\adi\no-OS\projects\adrv9009>make TINYIIOD=y
    [00:00:00] Building for xilinx
    [00:00:00] Evaluating hardware: system_top.hdf
    [00:00:00] Creating and configuring the IDE project
    [00:00:00] Linking srcs to created project
    The system cannot find the file specified.
    The system cannot find the file specified.
    The system cannot find the file specified.
    make[1]: [../../tools/scripts/generic.mk:339: update_srcs] Error 2 (ignored)
    [00:00:00] [CC] axi_adc_core.c
    [00:00:00] [CC] axi_dac_core.c
    [00:00:00] [CC] axi_dmac.c
    [00:00:00] [CC] clk_axi_clkgen.c
    [00:00:00] [CC] iio_axi_adc.c
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/axi_core/iio_axi_adc/iio_axi_adc.c: In function 'iio_axi_adc_create_device_descriptor':
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/axi_core/iio_axi_adc/iio_axi_adc.c:442:40: warning: passing argument 1 of 'sprintf' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
    ret = sprintf(iio_device->channels[i].name, "voltage%"PRIi32"", i);
    ~~~~~~~~~~~~~~~~~~~~~~~^~~~~
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/noos/libraries/iio/libtinyiiod/compat.h:26,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/libraries/iio/libtinyiiod/tinyiiod.h:21,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/iio/iio_types.h:48,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/iio/iio.h:48,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/axi_core/iio_axi_adc/iio_axi_adc.c:49:
    c:\xilinx\sdk\2019.1\gnu\aarch32\nt\gcc-arm-none-eabi\arm-none-eabi\libc\usr\include\stdio.h:244:14: note: expected 'char * restrict' but argument is of type 'const char *'
    int sprintf (char *__restrict, const char *__restrict, ...)
    ^
    [00:00:00] [CC] iio_axi_dac.c
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/axi_core/iio_axi_dac/iio_axi_dac.c: In function 'iio_axi_dac_create_device_descriptor':
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/axi_core/iio_axi_dac/iio_axi_dac.c:595:40: warning: passing argument 1 of 'sprintf' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
    ret = sprintf(iio_device->channels[i].name, "voltage%"PRIi32"", i);
    ~~~~~~~~~~~~~~~~~~~~~~~^~~~~
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/noos/libraries/iio/libtinyiiod/compat.h:26,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/libraries/iio/libtinyiiod/tinyiiod.h:21,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/iio/iio_types.h:48,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/iio/iio.h:48,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/axi_core/iio_axi_dac/iio_axi_dac.c:49:
    c:\xilinx\sdk\2019.1\gnu\aarch32\nt\gcc-arm-none-eabi\arm-none-eabi\libc\usr\include\stdio.h:244:14: note: expected 'char * restrict' but argument is of type 'const char *'
    int sprintf (char *__restrict, const char *__restrict, ...)
    ^
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/axi_core/iio_axi_dac/iio_axi_dac.c:606:40: warning: passing argument 1 of 'sprintf' discards 'const' qualifier from pointer target type [-Wdiscarded-qualifiers]
    ret = sprintf(iio_device->channels[i].name, "altvoltage%"PRIi32"",
    ~~~~~~~~~~~~~~~~~~~~~~~^~~~~
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/noos/libraries/iio/libtinyiiod/compat.h:26,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/libraries/iio/libtinyiiod/tinyiiod.h:21,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/iio/iio_types.h:48,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/iio/iio.h:48,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/axi_core/iio_axi_dac/iio_axi_dac.c:49:
    c:\xilinx\sdk\2019.1\gnu\aarch32\nt\gcc-arm-none-eabi\arm-none-eabi\libc\usr\include\stdio.h:244:14: note: expected 'char * restrict' but argument is of type 'const char *'
    int sprintf (char *__restrict, const char *__restrict, ...)
    ^
    [00:00:00] [CC] axi_adxcvr.c
    [00:00:00] [CC] axi_jesd204_rx.c
    [00:00:00] [CC] axi_jesd204_tx.c
    [00:00:00] [CC] xilinx_transceiver.c
    [00:00:00] [CC] ad9528.c
    [00:00:00] [CC] hmc7044.c
    [00:00:00] [CC] gpio.c
    [00:00:00] [CC] axi_io.c
    [00:00:00] [CC] delay.c
    [00:00:00] [CC] irq.c
    [00:00:00] [CC] uart.c
    [00:00:00] [CC] xilinx_gpio.c
    [00:00:00] [CC] xilinx_spi.c
    [00:00:00] [CC] talise.c
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.c: In function 'TALISE_initializ
    ':
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.c:386:2: warning: missing initializer for field 'rfPllUseExternalLo' of 'taliseClocks_t' {aka 'struct <anonymous>'} [-Wmissing-field-initializers]
    taliseInfo_t clearInfo = {(taliseStates_t)0,0,0,0,0,{0,0,(taliseHsDiv_t)0,0,0},
    ^~~~~~~~~~~~
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.h:19,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.c:43:
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_types.h:321:10: note: 'rfPllUseExternalLo' declared here
    uint8_t rfPllUseExternalLo; /*!< Stored version of the init struct setting (Ext LO input) to keep in the device data structure, 1= Use external LO input for RF PLL, 0 = use internal LO generation for RF PLL */
    ^~~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.c:389:6: warning: missing initializer for field 'txBandwidth_Hz' of 'taliseInfo_t' {aka 'struct <anonymous>'} [-Wmissing-field-initializers]
    };
    ^
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.h:19,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.c:43:
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_types.h:418:11: note: 'txBandwidth_Hz' declared here
    uint32_t txBandwidth_Hz; /*!< Tx Bandwidth from the current profile */
    ^~~~~~~~~~~~~~
    [00:00:00] [CC] talise_agc.c
    [00:00:00] [CC] talise_arm.c
    [00:00:00] [CC] talise_cals.c
    [00:00:00] [CC] talise_error.c
    [00:00:00] [CC] talise_gpio.c
    [00:00:00] [CC] talise_hal.c
    [00:00:00] [CC] talise_jesd204.c
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_jesd204.c: In function 'TALISE_enableDeframerPrbsChecker':
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_jesd204.c:2026:17: warning: comparison is always true due to limited range of data type [-Wtype-limits]
    if ((polyOrder >= TAL_PRBS_DISABLE) &&
    ^~
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_jesd204.c:2028:23: warning: comparison is always true due to limited range of data type [-Wtype-limits]
    (checkerLocation >= TAL_PRBSCHECK_LANEDATA) &&
    ^~
    [00:00:00] [CC] talise_radioctrl.c
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_radioctrl.c: In function 'TALISE_setOrxLoCfg':
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_radioctrl.c:483:35: warning: comparison is always true due to limited range of data type [-Wtype-limits]
    } else if ((orxLoCfg->gpioSelect >= TAL_GPIO_00)
    ^~
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_radioctrl.c:513:28: warning: comparison is always true due to limited range of data type [-Wtype-limits]
    if ((orxLoCfg->gpioSelect >= TAL_GPIO_00)
    ^~
    [00:00:00] [CC] talise_rx.c
    [00:00:00] [CC] talise_tx.c
    [00:00:00] [CC] talise_user.c
    [00:00:00] [CC] spi.c
    [00:00:00] [CC] iio.c
    [00:00:00] [CC] iio_app.c
    [00:00:00] [CC] parser.c
    [00:00:00] [CC] tinyiiod.c
    [00:00:00] [CC] talise_config.c
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/profiles/tx_bw100_ir122p88_rx_bw100_or122p88_orx_bw100_or122p88_dc122p88/talise_config.c:358:2: warning: missing initializer for field 'overRangeLowPowerGainStepAttack' of 'taliseAgcPower_t' {aka 'struct <anonymous>'} [-Wmissing-field-initializers]
    },
    ^
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_agc.h:19,
    from C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/profiles/tx_bw100_ir122p88_rx_bw100_or122p88_orx_bw100_or122p88_dc122p88/talise_config.c:22:
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_agc_types.h:122:2: note: 'overRangeLowPowerGainStepAttack' declared here
    overRangeLowPowerGainStepAttack; /*!< AGC inner upper threshold exceeded attack gain step. Optional. Valid range from 1 to 31. Passing 0 will result in the reset value of 4. */
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/profiles/tx_bw100_ir122p88_rx_bw100_or122p88_orx_bw100_or122p88_dc122p88/talise_config.c:388:2: warning: missing initializer for field 'hb2UnderRangeLowThreshExceededCnt' of 'taliseAgcPeak_
    ' {aka 'struct <anonymous>'} [-Wmissing-field-initializers]
    }
    ^
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_agc.h:19,
    from C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/profiles/tx_bw100_ir122p88_rx_bw100_or122p88_orx_bw100_or122p88_dc122p88/talise_config.c:22:
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_agc_types.h:78:2: note: 'hb2UnderRangeLowThreshExceededCnt' declared here
    hb2UnderRangeLowThreshExceededCnt; /*!< AGC HB2 low overrange interval 0 threshold count. Optional. Valid range from 1 to 255. Passing 0 will result in the reset value of 3. */
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/profiles/tx_bw100_ir122p88_rx_bw100_or122p88_orx_bw100_or122p88_dc122p88/talise_config.c:321:23: warning: 'rxAgcCtrl' defined but not used [-Wunused-variable]
    static taliseAgcCfg_t rxAgcCtrl = {
    ^~~~~~~~~
    [00:00:00] [CC] app_clocking.c
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_clocking.c: In function 'clocking_init':
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_clocking.c:708:1: warning: label 'error_2' defined but not used [-Wunused-label]
    error_2:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_clocking.c:695:1: warning: label 'error_3' defined but not used [-Wunused-label]
    error_3:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_clocking.c:395:25: warning: unused variable 'rx_os_clkgen_init' [-Wunused-variable]
    struct axi_clkgen_init rx_os_clkgen_init = {
    ^~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_clocking.c:390:25: warning: unused variable 'tx_clkgen_init' [-Wunused-variable]
    struct axi_clkgen_init tx_clkgen_init = {
    ^~~~~~~~~~~~~~
    [00:00:00] [CC] app_jesd.c
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_jesd.c: In function 'jesd_init':
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_jesd.c:133:1: warning: label 'error_6' defined but not used [-Wunused-label]
    error_6:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_jesd.c:129:1: warning: label 'error_7' defined but not used [-Wunused-label]
    error_7:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_jesd.c:96:25: warning: unused variable 'rx_os_jesd_init'
    -Wunused-variable]
    struct jesd204_rx_init rx_os_jesd_init = {
    ^~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_jesd.c:81:25: warning: unused variable 'tx_jesd_init' [-Wunused-variable]
    struct jesd204_tx_init tx_jesd_init = {
    ^~~~~~~~~~~~
    [00:00:00] [CC] app_talise.c
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_talise.c: In function 'talise_setup':
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_talise.c:386:39: warning: comparison between 'taliseObsRxChannels_t' {aka 'enum <anonymous>'} and 'enum <anonymous>' [-Wenum-compare]
    if(talInit.obsRx.obsRxChannelsEnable != TAL_RXOFF)
    ^~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_talise.c:389:27: warning: comparison between 'taliseTxChannels_t' {aka 'enum <anonymous>'} and 'enum <anonymous>' [-Wenum-compare]
    if(talInit.tx.txChannels != TAL_RXOFF) {
    ^~
    [00:00:00] [CC] app_transceiver.c
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c: In function 'fpga_xcvr_init':
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:188:1: warning: label 'error_8' defined but not used [-Wunused-label]
    error_8:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:184:1: warning: label 'error_9' defined but not used [-Wunused-label]
    error_9:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:122:21: warning: unused variable 'rx_os_adxcvr_init' [-Wunused-variable]
    struct adxcvr_init rx_os_adxcvr_init = {
    ^~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:112:21: warning: unused variable 'tx_adxcvr_init' [-Wunused-variable]
    struct adxcvr_init tx_adxcvr_init = {
    ^~~~~~~~~~~~~~
    At top level:
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:66:23: warning: 'rx_os_adxcvr' defined but not used [-Wunused-variable]
    static struct adxcvr *rx_os_adxcvr;
    ^~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:65:23: warning: 'tx_adxcvr' defined but not used [-Wunused-variable]
    static struct adxcvr *tx_adxcvr;
    ^~~~~~~~~
    [00:00:00] [CC] headless.c
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:17:
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/platform/xilinx/gpio_extra.h:101:21: warning: 'struct gpio_init_param' declared inside parameter list will not be visible outside of this definition or declaration
    const struct gpio_init_param *param);
    ^~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/platform/xilinx/gpio_extra.h:105:23: warning: 'struct gpio_init_param' declared inside parameter list will not be visible outside of this definition or declaration
    const struct gpio_init_param *param);
    ^~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c: In function 'start_iiod':
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:52:22: warning: unused variable 'dac_dev_desc' [-Wunused-variable]
    struct iio_device *dac_dev_desc;
    ^~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:50:28: warning: unused variable 'iio_axi_dac_desc' [-Wunused-variable]
    struct iio_axi_dac_desc *iio_axi_dac_desc;
    ^~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:48:32: warning: unused variable 'iio_axi_dac_init_par' [-Wunused-variable]
    struct iio_axi_dac_init_param iio_axi_dac_init_par;
    ^~~~~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c: In function 'main':
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:188:23: warning: unused variable 'tx_dmac_init' [-Wunused-variable]
    struct axi_dmac_init tx_dmac_init = {
    ^~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:172:22: warning: unused variable 'tx_dac_init' [-Wunused-variable]
    struct axi_dac_init tx_dac_init = {
    ^~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:378:11: warning: 'tx_dmac' may be used uninitialized in this function [-Wmaybe-uninitialized]
    status = start_iiod(tx_dmac, rx_dmac, rx_adc, tx_dac);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:378:11: warning: 'tx_dac' may be used uninitialized in this function [-Wmaybe-uninitialized]
    [00:00:00] [CC] no_os_hal.c
    [00:00:00] [CC] fifo.c
    [00:00:00] [CC] list.c
    [00:00:00] [CC] util.c
    [00:00:00] [LD] axi_adc_core.o axi_dac_core.o axi_dmac.o clk_axi_clkgen.o iio_axi_adc.o iio_axi_dac.o axi_adxcvr.o axi_jesd204_rx.o axi_jesd204_tx.o xilinx_transceiver.o ad9528.o hmc7044.o gpio.o axi_io.o delay.o irq.o uart.o xilinx_gpio.o xilinx_spi.o talise.o talise_agc.o talise_arm.o talise_cals.o talise_error.o talise_gpio.o talise_hal.o talise_jesd204.o talise_radioctrl.o talise_rx.o talise_tx.o talise_user.o spi.o iio.o iio_app.o parser.o tinyiiod.o talise_config.o app_clocking.o app_jesd.o app_talise.o app_transceiver.o headless.o no_os_hal.o fifo.o list.o util.o
    make[2]: Nothing to be done for 'post_build'.
    [00:00:00] Done (build/adrv9009.elf)

    C:\adi\no-OS\projects\adrv9009>

    and make run output


    C:\adi\no-OS\projects\adrv9009>make run
    [00:00:00] Building for xilinx
    [00:00:00] Creating and configuring the IDE project
    Project with name 'hw' already exists in workspace.
    Failed to create Hardware platform project hw
    while executing
    "error [dict get $msg err]"
    (procedure "xsdk_eval" line 15)
    invoked from within
    "xsdk_eval $chan "Xsdk" createProject "o{$fmt}" e [list $data]"
    (procedure "::sdk::createhw" line 27)
    invoked from within
    "sdk createhw -name hw -hwspec $::hw"
    (procedure "_xsdk_project" line 6)
    invoked from within
    "_xsdk_project"
    (procedure "create_project" line 8)
    invoked from within
    "$function"
    (file "C:/adi/no-OS/tools/scripts/platform/xilinx/util.tcl" line 269)
    [00:00:00] Linking srcs to created project
    The system cannot find the file specified.
    make[1]: [../../tools/scripts/generic.mk:339: update_srcs] Error 2 (ignored)
    [00:00:00] [CC] axi_adc_core.c
    [00:00:00] [CC] axi_dac_core.c
    [00:00:00] [CC] axi_dmac.c
    [00:00:00] [CC] clk_axi_clkgen.c
    [00:00:00] [CC] axi_adxcvr.c
    [00:00:00] [CC] axi_jesd204_rx.c
    [00:00:00] [CC] axi_jesd204_tx.c
    [00:00:00] [CC] xilinx_transceiver.c
    [00:00:00] [CC] ad9528.c
    [00:00:00] [CC] hmc7044.c
    [00:00:00] [CC] gpio.c
    [00:00:00] [CC] axi_io.c
    [00:00:00] [CC] delay.c
    [00:00:00] [CC] xilinx_gpio.c
    [00:00:00] [CC] xilinx_spi.c
    [00:00:00] [CC] talise.c
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.c: In function 'TALISE_initializ
    ':
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.c:386:2: warning: missing initializer for field 'rfPllUseExternalLo' of 'taliseClocks_t' {aka 'struct <anonymous>'} [-Wmissing-field-initializers]
    taliseInfo_t clearInfo = {(taliseStates_t)0,0,0,0,0,{0,0,(taliseHsDiv_t)0,0,0},
    ^~~~~~~~~~~~
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.h:19,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.c:43:
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_types.h:321:10: note: 'rfPllUseExternalLo' declared here
    uint8_t rfPllUseExternalLo; /*!< Stored version of the init struct setting (Ext LO input) to keep in the device data structure, 1= Use external LO input for RF PLL, 0 = use internal LO generation for RF PLL */
    ^~~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.c:389:6: warning: missing initializer for field 'txBandwidth_Hz' of 'taliseInfo_t' {aka 'struct <anonymous>'} [-Wmissing-field-initializers]
    };
    ^
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.h:19,
    from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise.c:43:
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_types.h:418:11: note: 'txBandwidth_Hz' declared here
    uint32_t txBandwidth_Hz; /*!< Tx Bandwidth from the current profile */
    ^~~~~~~~~~~~~~
    [00:00:00] [CC] talise_agc.c
    [00:00:00] [CC] talise_arm.c
    [00:00:00] [CC] talise_cals.c
    [00:00:00] [CC] talise_error.c
    [00:00:00] [CC] talise_gpio.c
    [00:00:00] [CC] talise_hal.c
    [00:00:00] [CC] talise_jesd204.c
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_jesd204.c: In function 'TALISE_enableDeframerPrbsChecker':
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_jesd204.c:2026:17: warning: comparison is always true due to limited range of data type [-Wtype-limits]
    if ((polyOrder >= TAL_PRBS_DISABLE) &&
    ^~
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_jesd204.c:2028:23: warning: comparison is always true due to limited range of data type [-Wtype-limits]
    (checkerLocation >= TAL_PRBSCHECK_LANEDATA) &&
    ^~
    [00:00:00] [CC] talise_radioctrl.c
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_radioctrl.c: In function 'TALISE_setOrxLoCfg':
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_radioctrl.c:483:35: warning: comparison is always true due to limited range of data type [-Wtype-limits]
    } else if ((orxLoCfg->gpioSelect >= TAL_GPIO_00)
    ^~
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_radioctrl.c:513:28: warning: comparison is always true due to limited range of data type [-Wtype-limits]
    if ((orxLoCfg->gpioSelect >= TAL_GPIO_00)
    ^~
    [00:00:00] [CC] talise_rx.c
    [00:00:00] [CC] talise_tx.c
    [00:00:00] [CC] talise_user.c
    [00:00:00] [CC] spi.c
    [00:00:00] [CC] talise_config.c
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/profiles/tx_bw100_ir122p88_rx_bw100_or122p88_orx_bw100_or122p88_dc122p88/talise_config.c:358:2: warning: missing initializer for field 'overRangeLowPowerGainStepAttack' of 'taliseAgcPower_t' {aka 'struct <anonymous>'} [-Wmissing-field-initializers]
    },
    ^
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_agc.h:19,
    from C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/profiles/tx_bw100_ir122p88_rx_bw100_or122p88_orx_bw100_or122p88_dc122p88/talise_config.c:22:
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_agc_types.h:122:2: note: 'overRangeLowPowerGainStepAttack' declared here
    overRangeLowPowerGainStepAttack; /*!< AGC inner upper threshold exceeded attack gain step. Optional. Valid range from 1 to 31. Passing 0 will result in the reset value of 4. */
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/profiles/tx_bw100_ir122p88_rx_bw100_or122p88_orx_bw100_or122p88_dc122p88/talise_config.c:388:2: warning: missing initializer for field 'hb2UnderRangeLowThreshExceededCnt' of 'taliseAgcPeak_
    ' {aka 'struct <anonymous>'} [-Wmissing-field-initializers]
    }
    ^
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_agc.h:19,
    from C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/profiles/tx_bw100_ir122p88_rx_bw100_or122p88_orx_bw100_or122p88_dc122p88/talise_config.c:22:
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/rf-transceiver/talise/api/talise_agc_types.h:78:2: note: 'hb2UnderRangeLowThreshExceededCnt' declared here
    hb2UnderRangeLowThreshExceededCnt; /*!< AGC HB2 low overrange interval 0 threshold count. Optional. Valid range from 1 to 255. Passing 0 will result in the reset value of 3. */
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/profiles/tx_bw100_ir122p88_rx_bw100_or122p88_orx_bw100_or122p88_dc122p88/talise_config.c:321:23: warning: 'rxAgcCtrl' defined but not used [-Wunused-variable]
    static taliseAgcCfg_t rxAgcCtrl = {
    ^~~~~~~~~
    [00:00:00] [CC] app_clocking.c
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_clocking.c: In function 'clocking_init':
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_clocking.c:708:1: warning: label 'error_2' defined but not used [-Wunused-label]
    error_2:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_clocking.c:695:1: warning: label 'error_3' defined but not used [-Wunused-label]
    error_3:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_clocking.c:395:25: warning: unused variable 'rx_os_clkgen_init' [-Wunused-variable]
    struct axi_clkgen_init rx_os_clkgen_init = {
    ^~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_clocking.c:390:25: warning: unused variable 'tx_clkgen_init' [-Wunused-variable]
    struct axi_clkgen_init tx_clkgen_init = {
    ^~~~~~~~~~~~~~
    [00:00:00] [CC] app_jesd.c
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_jesd.c: In function 'jesd_init':
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_jesd.c:133:1: warning: label 'error_6' defined but not used [-Wunused-label]
    error_6:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_jesd.c:129:1: warning: label 'error_7' defined but not used [-Wunused-label]
    error_7:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_jesd.c:96:25: warning: unused variable 'rx_os_jesd_init'
    -Wunused-variable]
    struct jesd204_rx_init rx_os_jesd_init = {
    ^~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_jesd.c:81:25: warning: unused variable 'tx_jesd_init' [-Wunused-variable]
    struct jesd204_tx_init tx_jesd_init = {
    ^~~~~~~~~~~~
    [00:00:00] [CC] app_talise.c
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_talise.c: In function 'talise_setup':
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_talise.c:386:39: warning: comparison between 'taliseObsRxChannels_t' {aka 'enum <anonymous>'} and 'enum <anonymous>' [-Wenum-compare]
    if(talInit.obsRx.obsRxChannelsEnable != TAL_RXOFF)
    ^~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_talise.c:389:27: warning: comparison between 'taliseTxChannels_t' {aka 'enum <anonymous>'} and 'enum <anonymous>' [-Wenum-compare]
    if(talInit.tx.txChannels != TAL_RXOFF) {
    ^~
    [00:00:00] [CC] app_transceiver.c
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c: In function 'fpga_xcvr_init':
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:188:1: warning: label 'error_8' defined but not used [-Wunused-label]
    error_8:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:184:1: warning: label 'error_9' defined but not used [-Wunused-label]
    error_9:
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:122:21: warning: unused variable 'rx_os_adxcvr_init' [-Wunused-variable]
    struct adxcvr_init rx_os_adxcvr_init = {
    ^~~~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:112:21: warning: unused variable 'tx_adxcvr_init' [-Wunused-variable]
    struct adxcvr_init tx_adxcvr_init = {
    ^~~~~~~~~~~~~~
    At top level:
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:66:23: warning: 'rx_os_adxcvr' defined but not used [-Wunused-variable]
    static struct adxcvr *rx_os_adxcvr;
    ^~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/app_transceiver.c:65:23: warning: 'tx_adxcvr' defined but not used [-Wunused-variable]
    static struct adxcvr *tx_adxcvr;
    ^~~~~~~~~
    [00:00:00] [CC] headless.c
    In file included from C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:17:
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/platform/xilinx/gpio_extra.h:101:21: warning: 'struct gpio_init_param' declared inside parameter list will not be visible outside of this definition or declaration
    const struct gpio_init_param *param);
    ^~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/noos/drivers/platform/xilinx/gpio_extra.h:105:23: warning: 'struct gpio_init_param' declared inside parameter list will not be visible outside of this definition or declaration
    const struct gpio_init_param *param);
    ^~~~~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c: In function 'main':
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:198:19: warning: unused variable 'tx_dmac' [-Wunused-variable]
    struct axi_dmac *tx_dmac;
    ^~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:188:23: warning: unused variable 'tx_dmac_init' [-Wunused-variable]
    struct axi_dmac_init tx_dmac_init = {
    ^~~~~~~~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:178:18: warning: unused variable 'tx_dac' [-Wunused-variable]
    struct axi_dac *tx_dac;
    ^~~~~~
    C:/adi/no-OS/projects/adrv9009/build/app/adrv9009/src/app/headless.c:172:22: warning: unused variable 'tx_dac_init' [-Wunused-variable]
    struct axi_dac_init tx_dac_init = {
    ^~~~~~~~~~~
    [00:00:00] [CC] no_os_hal.c
    [00:00:00] [CC] util.c
    [00:00:00] [LD] axi_adc_core.o axi_dac_core.o axi_dmac.o clk_axi_clkgen.o axi_adxcvr.o axi_jesd204_rx.o axi_jesd204_tx.o xilinx_transceiver.o ad9528.o hmc7044.o gpio.o axi_io.o delay.o xilinx_gpio.o xilinx_spi.o talise.o talise_agc.o talise_arm.o talise_cals.o talise_error.o talise_gpio.o talise_hal.o talise_jesd204.o talise_radioctrl.o talise_rx.o talise_tx.o talise_user.o spi.o talise_config.o app_clocking.o app_jesd.o app_talise.o app_transceiver.o headless.o no_os_hal.o util.o
    make[2]: Nothing to be done for 'post_build'.
    [00:00:00] Done (build/adrv9009.elf)
    [00:00:00] adrv9009.elf uploaded to board

    C:\adi\no-OS\projects\adrv9009>

    hope this what you meant

    thanks

    ron

  • 0
    •  Analog Employees 
    on Jun 3, 2021 7:05 PM in reply to ron1

    Can you try to run:

    `make develop`

    This will open the IDE to edit the project.
    Can you try to put a breakpoint here: https://github.com/analogdevicesinc/no-OS/blob/8985cad9d88d4b78ab967381c99aa76b297e938c/projects/adrv9009/src/app/headless.c#L118
    A
    nd see if the program arrives at this point?

    Mihail

  • After I ran the command make develop
    I see I have two errors so can not compile,

    I would love to get help

  • 0
    •  Analog Employees 
    on Jun 3, 2021 8:31 PM in reply to ron1

    I just did a test on my side and `make run` should have the following output after running make:

    and
    `[00:00:00] adrv9009.elf uploaded to board`

    It shouldn't print: [00:00:00] Creating and configuring the IDE project and do the build again.

    There are 2 options:

    1: Try `make run TINYIIOD=y`

    or 

    2: Don't do `make run`. Do just: `make clean_all`, `make TINYIIOD=y` and `make develop` and run it from the program from IDE

    Mihail

  • I tried 

    and got the same  [00:00:00] Creating and configuring the IDE project and do the build again.

    and in the uart got 

    in option 2 

    After I ran the command make develop
    the program does not arrive at this point

  • 0
    •  Analog Employees 
    on Jun 3, 2021 9:30 PM in reply to ron1

    Are you getting Tinyiiod error: -1 from IDE too?
    Can you try to go step by step to get more information about where the error came from?