This is an old revision of the document!
Analog Devices Kuiper Linux is a distribution based on Raspbian for the Raspberry Pi. It incorporates Linux device drivers for ADI products, and is created with ease of use in mind.
The reasoning behind creating this distribution is to minimize the barriers to integrating ADI hardware devices into a Linux-based system. When starting with a generic Linux distribution, the kernel typically would have to be rebuilt with the desired drivers enabled. While this is not difficult for an engineer that is familiar with the process, it can be a daunting task even when everything goes right.
ADI Kuiper Linux solves this problem, and includes a host of additional applications, software libraries, and utilities including:
While Rasbpian targets Raspberry Pi platform boards, ADI Kuiper Linux supports several other platforms including the Digilent Zedboard, TerASIC DE10-Nano, and Digilent Cora.
The BOLD is what you should type. It's not too much more than Special Agent Oso's three special steps, and it also allows you to go for that specialty coffee you have been craving.
For different platforms you'll need different images. Currently we provide a single pre-build image, that can work on Raspberry Pi platforms for now.
279097240dec7156ff5e15b7ce0b8a25
b160453396e482234094a92134769ec6
4e2d2d290f6c55666a91246afb42d6c8
f5dcc9a192ef4597d73d532046320306
9018cf78e783ae5cdd37a85aa9b0ad64
e98f3beb2928572a5e28bc16807011e8
Now, depending if you are using Linux or Windows, follow these instructions to write the file to your SD card.
The default user for the graphical desktop environment is the “analog” user, the password for this user is “analog”. The password for the “root” account is “analog” as well.
User | Password |
---|---|
root | analog |
analog | analog |
A Note on Security: The Raspberry Pi and other small Linux platforms are fantastic tools, but can represent a network security gap if used improperly. ADI Kuiper Linux starts out configured in a fairly open state - a simple root password, SSH login enabled. This isn't an issue if the Raspberry Pi does not have internet access or is behind a firewall, but if you are going to connect to your network, it's a good idea to change the password to something secure. Refer to this article on Raspberry Pi Security: Securing your Raspberry Pi
On first boot, there are a few things that should be configured first. Click the ADI triangle start menu, Preferences, Raspberry Pi Configuration. Enter the root password when prompted, this will bring up a configuration menu. Under Localisation, set the Locale, Timezone, Keyboard, and WiFi Country appropriately (Not doing this may result in connection failures.)
Reboot the system after this step for changes to take effect, before doing anything else. (It's a bit disconcerting when you see see strange symbols show up as you edit a configuration file because the keyboard language is set incorrectly…)
The system will likely need to be configured according to what devices are connected to the platform board (for example, an AD7124-8 ADC connected to a Raspberry Pi) The most straightforward way to do this for Raspberry Pi is to edit the config.txt file, which is located in the boot partition. This is a FAT partition that is accessible in Linux, Windows, or MacOS. Any text editor can be used, including the Mousepad editor that is included with Kuiper Linux. Using the Raspberry Pi itself also avoids problems with USB encryption, often present on company computers. Connect a keyboard, mouse, and monitor to the Raspberry Pi and connect power. The ADI Kuiper Linux desktop should appear.
Before editing, it is a good idea to make a backup of the original file, just in case something goes wrong (which it won't, but still…) Open a terminal and enter the following command (noting that “analog@analog:~ $” is the prompt, and does not need to be typed):
analog@analog:~ $ sudo cp /boot/config.txt /boot/config.backup analog@analog:~ $ sudo mousepad /boot/config.txt
This will bring up the text editor. At this point, the appropriate device tree overlays can be included, for example, add the following line to enable the ADXL345 3-axis SPI accelerometer, noting that the lirc-rpi lines are shown for reference, and any line beginning with “#” is ignored:
# Uncomment this to enable the lirc-rpi module #dtoverlay=lirc-rpi dtoverlay=rpi-adxl345
This usually represents a default overlay, with SPI port and interrupt mapping defined in the kernel source. A number of other overlays are included with Kuiper Linux, for individual devices and various reference designs. Alternative configurations can be created by cloning and editing the appropriate dts file.
After editing config.txt, reboot for changes to take effect.
If any IIO devices are attached and were enabled in config.txt, run iio_info to verify that the drivers loaded properly. Example:
analog@analog:~ $ iio_info Library version: 0.21 (git tag: 1c0781b) Compiled with backends: local xml ip IIO context created with local backend. Backend version: 0.21 (git tag: 1c0781b) Backend description string: Linux analog 4.19.86-v7l+ #3 SMP Tue Sep 1 19:43:06 UTC 2020 armv7l IIO context has 2 attributes: local,kernel: 4.19.86-v7l+ uri: local: IIO context has 5 devices: iio:device0: ad7127-8 (buffer capable) 8 channels found: voltage0-voltage1: (input, index: 0, format: be:u24/32>>0) 6 channel-specific attributes found: attr 0: filter_low_pass_3db_frequency value: 3 attr 1: offset value: 0 ... ...
Details for ZedBoard/Cora/other Xilinx platforms, DE10-Nano, other Intel platforms.
Derive from AD-FMC-SDCARD for Zynq & Altera SoC Quick Start Guide?