world leader in high performance signal processing
Trace: » dev

ADSP-BF548 EZ-KIT Quick Start: Development Environment


Host Set Up

This section discusses how the custom Ubuntu ISO was made, with specific versions of software. These instructions should work with the latest software available at the time of reading with minimal adaptation.

Skip this section if you are using the customised Ubuntu as that is already set up. Move on to the “Board Switches & Configuration” section.

  • Run the following apt-get installations:
    $ sudo apt-get -y install autoconf 
    $ sudo apt-get -y install bison 
    $ sudo apt-get -y install flex 
    $ sudo apt-get -y install gawk 
    $ sudo apt-get -y install intltool 
    $ sudo apt-get -y install libtool 
    $ sudo apt-get -y install linux-libc-dev 
    $ sudo apt-get -y install liblzo2-dev 
    $ sudo apt-get -y install libreadline5 
    $ sudo apt-get -y install libglib2.0-dev 
    $ sudo apt-get -y install libreadline-gplv2-dev 
    $ sudo apt-get -y install libncurses5-dev 
    $ sudo apt-get -y install pax-utils 
    $ sudo apt-get -y install rpm 
    $ sudo apt-get -y install texinfo 
    $ sudo apt-get -y install uuid-dev
    $ sudo apt-get -y install libgmp3-dev 
    $ sudo apt-get -y install libmpfr-dev
    $ sudo apt-get -y install libx11-dev
    $ sudo apt-get -y install g++ 
    $ sudo apt-get -y install libgtk2.0-dev 
    $ sudo apt-get -y install libglade2-dev 
    $ sudo apt-get -y install qt4-qmake
    $ sudo apt-get -y install libusb-dev 
    $ sudo apt-get -y install libftdi-dev
    $ sudo apt-get -y install bc 
    $ sudo apt-get -y install dejagnu 
    $ sudo apt-get -y install expect 
    $ sudo apt-get -y install psmisc 
    $ sudo apt-get -y install rsh-client 
    $ sudo apt-get -y install xvfb
    $ sudo apt-get -y install ckermit 
    $ sudo apt-get -y install diffstat 
    $ sudo apt-get -y install ftp 
    $ sudo apt-get -y install lrzsz 
    $ sudo apt-get -y install minicom
    $ sudo apt-get -y install ssh 
    $ sudo apt-get -y install openssh-server 
    $ sudo apt-get -y install subversion 
    $ sudo apt-get -y install tftp-hpa 
    $ sudo apt-get -y install tftpd-hpa
    $ sudo apt-get -y install tree 
    $ sudo apt-get -y install vim 
    $ sudo apt-get -y install xinetd 
    $ sudo apt-get -y install patch 
    $ sudo apt-get -y install git-core 
    $ sudo apt-get -y install qt4-dev-tools
    $ sudo add-apt-repository ppa:gnome3-team/gnome3
    $ sudo apt-get -y install gnome-disk-utility
  • Download the latest toolchain tarballs from toolchain files
    At the time of writing the files you need are:
    • blackfin-toolchain-uclibc-full-2012R2-RC1.i386.tar.bz2
    • blackfin-toolchain-2012R2-RC1.i386.tar.bz2
    • blackfin-toolchain-elf-gcc-4.3-2012R2-RC1.i386.tar.bz2
  • Extract all toolchain tarball files into the folder 'opt'
  • Copy the opt folder to your root directory
    You can do that with this command
    $ cp -a opt/uclinux /opt/uclinux

    You can also escalate nautilus to have root privileges to do this via the graphical user interface

    $ gksudo nautilus
  • Chmod opt folder to 777 (recursively)
    $ sudo chmod 777 -R /opt
  • Chown the folder to your username (recursively)
    $ sudo chown $USER -R /opt
  • Update your environment variables to include the new opt path
    $ cp ~/.bashrc ~/.bashrc_backup
    $ echo export PATH=$PATH:/opt/uClinux/bfin-uclinux/bin:/opt/uClinux/bfin-linux-uclibc/bin:/opt/uClinux/bfin-elf/bin >> ~/.bashrc
  • Update your account to have dialout access
    $ sudo adduser $USER dialout

This should set up your ubuntu environment with the necessary development software.

To test that the toolchains are correctly installed, first close the current terminal open, then open a new terminal and enter the following:

$ which -a bfin-linux-uclibc-gcc

and this should respond with:


Otherwise something has gone wrong. If there are any issues refer to the following pages toolchain:installing and installing_linux for solving potential problems but at the time of writing, these instructions work on a clean installation of Ubuntu 12.04 (32 bit).

Please also consult those pages if you are interested in installing the elf toolchain (discussed on page Application Binary Interface).

You can actually install the development environment on most linux distributions (Gentoo for example). You can find out more by going to Installing Linux to find instructions specific to your distro.

You can also install the Toolchains in Windows. To find out more about this go to Installing the Blackfin Toolchain in Linux.

Board Switches & Configuration

When in certain configurations, several of the switches and jumper can cause unexpected behaviour while going through this guide so it is recommended to reset the board to default configurations. The following switch configurations are listed numerically, however the switches are present all over the board in different positions and orientations. This section of the guide will not go into detail as to what each switch does or its exact location, as this information is covered in the BF548 EZ-KIT overview page BF548 EZ-Kit Getting Started

This section will just cover the settings required for default usage. You will find that the switches are labelled on the boards, and each switch is numbered. To reiterate, when working with dip switches, ON means the switch is away from the number.

SW2 - Keypad Enable - Default Positions               
1 (ON) board image
2 (ON)
3 (ON)
4 (ON)
5 (ON)
6 (ON)
7 (ON)
8 (ON)  
SW4 - Rotary Encoder Enable - Default Positions
1 (ON) board image
2 (ON)
3 (ON)
4 (OFF)
SW5 - Push Button Enable - Default Positions       
1 (ON) board image
2 (ON)
3 (ON)
4 (ON)   
SW6 - CAN0 Enable - Default Positions                   
1 (OFF) board image
2 (OFF)
3 (ON)
4 (ON)
SW7 - UART Enable - Default Positions                   
1 (ON) board image
2 (ON)
3 (ON)
4 (OFF)
SW8 - Audio Loopback Test - Default Positions    
1 (OFF) board image
2 (OFF)
3 (OFF)
4 (OFF)
5 (OFF)
6 (OFF)
7 (OFF)
8 (OFF)
SW14 - LCD/PPI Configuration - Default Positions
1 (ON) board image
2 (ON)
3 (ON)
4 (ON)   
SW15 - CAN1 Enable - Default Positions                 
1 (OFF) board image
2 (OFF)
3 (ON)
4 (ON)   
SW16 - Peripheral Control Enable - Default Positions
1 (ON) board image
2 (ON)
3 (ON)
4 (OFF)
SW17 - LCD Module Configuration - Default Positions
1 (ON) board image
2 (OFF)
3 (ON)
4 (OFF)

You will need to ensure that the jumpers are also configured correctly. Ensure there is no jumper on JP1 (UART Loopback), JP2 (SPI1 Enable) and JP3 (Ethernet Speed).

Once the jumpers and DIP switches are correctly configured, the DSP Boot rotary encoder switch must be set to 7 to begin this guide. This involves turning the blue SW1 (also labelled DSP BOOT on the board) to 7 with the long groove running down the side of the knob indicating which number is selected. 7 is to set it for performing a UART boot.

Required Cables & Tools

Prior to actually beginning development, the board must be properly connected. The cables necessary to complete this guide include:

  • Power supply that came with the board
  • Serial to USB cable (or equivalent serial cable)
  • SD memory card (at least 135mb)
  • SD card reader
  • Ethernet cable (for the network peripherals sections)
  • Headphones / Speakers (for the audio peripherals sections)
  • Microphone (for the audio peripherals sections)

The ethernet cable or SD memory card are not strict requirements for developing with the ADSP-BF548-EZKIT as files can be moved via RS232 however to simplify & speed up development while reduce debugging problems, they are highly recommended and this guide will make use of the memory card heavily.

Ensure that the memory card is formatted using the FAT format with a 135mb partition.

Once you have the required cables & memory card, to connect and configure your system:

  • Connect the serial port on your host computer to the serial port on the board using a serial cable
  • Connect the ethernet jack on your board to your local network (or directly to host PC) with an ethernet cable
  • Connect the power cable to the board to power it on

There will be several files necessary to complete this guide, they are all on the custom Ubuntu ISO and by default in the Blackfin folder.

Further Reading

More detailed information is covered in the BF548 EZ-KIT overview page BF548 EZ-Kit Getting Started. This includes details on the hardware peripherals.