Post Go back to editing

Problems with using the Pluto as a Standalone Device

Hey,

I've managed to use my ADALM-PLUTO with Python, but I'm trying to get it to work standalone now and having issues.  Trying the shell script method:

https://wiki.analog.com/university/tools/pluto/devs/usb_otg

Bash scripts don't seem to work, the LED blinks according to the wiki, but the file does not get created on the thumb drive.  I have checked:

  • thumb drive formatted as FAT32
  • script was made in Ubuntu using nano/terminal, and I have verified the EOL characters are "\n"
  • filename is "runme0.sh", so there is the .sh at the end as per:  RE: Adalm Pluto Standalone Executable using OTG

I gave up and tried following the C build steps here:

https://wiki.analog.com/university/tools/pluto/devs/embedded_code

However, I had a few problems:

  • The wiki asks for the Linaro i686 package, but I needed to use the x86_64 package, or the terminal won't recognize the files
  • I upgraded to the 7.5.0 version instead of the 7.2.1 version, I don't remember my reasoning for this, but as I'm using firmware version 0.35, it seemed like the right thing to do

When I compile the example, I get an error that it can't find stdint.h, and if I compile with the -ffreestanding flag (a fix I found on Stack Overflow), it fails and can't find string.h, so obviously there is something else wrong here.  I'm using an Ubuntu VM host, so I'm using the command on the wiki page that starts with arm-linux-gnueabihf-gcc.  I also made sure that my sysroot download is 0.35.

I'm completely out of ideas, any pointers or recommendations would be greatly appreciated.

Parents
  • The wiki asks for the Linaro i686 package, but I needed to use the x86_64 package, or the terminal won't recognize the files

    The generated application needs to be targeted for Pluto and not your Desktop. If you compile for x86_64 it won't run on Pluto.

    I upgraded to the 7.5.0 version instead of the 7.2.1 version, I don't remember my reasoning for this, but as I'm using firmware version 0.35, it seemed like the right thing to do

    This shouldn't really matter.

    -Travis

  • When I install the i686 package, this is what I get:

    The file is there in the file explorer too, and is listed as an executable, so I don't know what to do here.  The best answer I could find on Stack Overflow was that the compiler version was likely 32-bit and my machine didn't support 32-bit software.  I tried installing 32-bit compatibility packages, build-essentials, and some libstdc-dev packages, but no dice. I figured the i686 and x86_64 were the cpu architecture of the system I ran the compiler on, not for, which is why I switched packages, but I get why that wasn't the right thing to do.

    Any ideas?

Reply
  • When I install the i686 package, this is what I get:

    The file is there in the file explorer too, and is listed as an executable, so I don't know what to do here.  The best answer I could find on Stack Overflow was that the compiler version was likely 32-bit and my machine didn't support 32-bit software.  I tried installing 32-bit compatibility packages, build-essentials, and some libstdc-dev packages, but no dice. I figured the i686 and x86_64 were the cpu architecture of the system I ran the compiler on, not for, which is why I switched packages, but I get why that wasn't the right thing to do.

    Any ideas?

Children