Post Go back to editing

Getting started with IIO drivers for AD5380 with Linux

I need to control an AD5380 from an embedded Linux platform, such as the Nvidia Jetson TX2, which has an SPI interface. I also need to control it from a standard PC for R&D purposes. I understand AD has Linux device drivers for this DAC, as well as an EVAL-SDP-CB1Z USB interface board.

Can you help me get started in the right direction? I have not used SPI from a standard PC or Linux system previously, only via a microcontroller.

Specifically:

  • Should I be able to compile and use this IIO driver directly on an embedded Linux computer that has SPI, like the NVidia Jetson TX2?
  • For R&D purposes, can you recommend a USB to SPI interface adapter that will allow me to use this IIO driver on a standard Linux PC to control the AD5380?
    • Alternatively, will the EVAL-SDP-CB1Z give me a straightforward way to communicate with the EVAL-AD5380SDZ via USB in Linux? Would I use the IIO driver with the EVAL-SDP, or does the EVAL-SDP provide some higher level interface, like a virtual serial port?
    • Ideally, I would like to "directly" interface to the AD5380 via a USB to SPI adapter and use the IIO driver--not communicate through a virtual serial port. This would be the most similar to directly controlling the AD5380 via an embedded computer like the Jetson TX2 or a DSP.


typo
[edited by: joncox@alum.mit.edu at 5:04 PM (GMT 0) on 25 May 2020]
Parents
  • Hi ,

    1. Yes, you will need to port this driver to your own linux flavour running on NVidia Jetson TX2 which has a physical SPI. This means you'll have to provide some way of configuring some driver parameters via device tree (or equivalent), and compile the kernel with the driver (or as a module). It seems you are new to this, here's a good (also long) starting point https://bootlin.com/doc/training/embedded-linux/embedded-linux-slides.pdf

    2a. The evaluation software that comes with the EVAL-SDP-CB1Z andEVAL-AD5380SDZ only runs on Windows. This software can be used to evaluate the hardware and is an easy introduction to the device and its registers and operation modes. But you cannot use this board+software combination to do something custom that you probably would like https://www.analog.com/media/en/technical-documentation/user-guides/EVAL-AD5380SDZ_5382SDZ_UG-757.pdf So to answer your questions, no, it will not give you a straightforward way to communicate to the board on Linux. Even on Windows, it's limited to demonstration purposes. You wouldn't use IIO with EVAL-SDP, you would use IIO on your own Jetson board, configure the kernel to build IIO framework and ad5380 driver and you connect an IIO client like iio-oscilloscope to your board via physical medium of ethernet or serial line.

    2b. Your Nvidia Jetson TX2 likely has ethernet or serial port or you can even connect an IIO client locally from the linux running on the Jetson, you don't need any USB-SPI adapter.

     Regards

Reply
  • Hi ,

    1. Yes, you will need to port this driver to your own linux flavour running on NVidia Jetson TX2 which has a physical SPI. This means you'll have to provide some way of configuring some driver parameters via device tree (or equivalent), and compile the kernel with the driver (or as a module). It seems you are new to this, here's a good (also long) starting point https://bootlin.com/doc/training/embedded-linux/embedded-linux-slides.pdf

    2a. The evaluation software that comes with the EVAL-SDP-CB1Z andEVAL-AD5380SDZ only runs on Windows. This software can be used to evaluate the hardware and is an easy introduction to the device and its registers and operation modes. But you cannot use this board+software combination to do something custom that you probably would like https://www.analog.com/media/en/technical-documentation/user-guides/EVAL-AD5380SDZ_5382SDZ_UG-757.pdf So to answer your questions, no, it will not give you a straightforward way to communicate to the board on Linux. Even on Windows, it's limited to demonstration purposes. You wouldn't use IIO with EVAL-SDP, you would use IIO on your own Jetson board, configure the kernel to build IIO framework and ad5380 driver and you connect an IIO client like iio-oscilloscope to your board via physical medium of ethernet or serial line.

    2b. Your Nvidia Jetson TX2 likely has ethernet or serial port or you can even connect an IIO client locally from the linux running on the Jetson, you don't need any USB-SPI adapter.

     Regards

Children
No Data