Using the NAI Software Support Kit 1.x

You have the SSK 1.x package downloaded and want to build an application with it. This guide covers setting up your development environment and writing and building an application against the NAI SSK 1.x naibrd API.

NAI SSK 1.x is intended for use with boards such as: 75G5, 68G5, 64G5, 68ARM1, 64ARM1, 75INT2, 79G5.

This guide does not cover:

Not sure if SSK 1.x is right for your hardware?

See Choosing the Right SSK — an interactive guide that recommends the correct SSK family and package based on your board, OS, and deployment style. For a breakdown of what’s inside the SSK 1.x package itself, see the SSK 1.x Package Guide.

If you have not already NAI recommends using the NAI Embedded Soft Panel to kickstart development. Via a GUI it allows users to quickly configure and operate NAI products. The API Logger tool within the NAI Embedded Soft Panel will allow you to kickstart writing your program as it will record the API calls made as you use the GUI to configure and operate your hardware.

If you do not yet have your hardware you can still use the NAI Embedded Soft Panel to kickstart your development via the Demo Panel.

If you do not yet know details about your hardware and have already started using the NAI Embedded Soft Panel you can skip to Starting Development. If you want help setting up the environment you can simply pick your preferred OS and follow the corresponding instructions before continuing to Starting Development. The code you write will be fully portable.

To download the NAI Software Support Kit click here.

Environment Setup

These sections will explain how to setup your environment to begin development for your chosen OS. If you do not know what OS you will use yet simply pick your preferred OS, all written .c files are fully portable.

Starting Development

NAI recommends starting with the NAI Embedded Soft Panel (ESP) to kickstart development. Its GUI lets you quickly configure and operate NAI products, and its API Logger tool generates the corresponding API calls as you exercise the hardware — a useful jumping-off point for your own code.

When you are ready to write code, the SSK ships a selection of sample applications you can build, run, and use as templates. The full collection is available in the Sample Applications tab. For board-level functionality across module families, NAI also provides standalone guides on interrupts, watchdog timers, NAI ethernet protocols, BIT, multicore applications, and backplane reset.

For the SSK 1.x library API reference, see Software Support Kit 1.x Library API Documentation.

Running NAI sample applications

When you launch an NAI sample application on the target, it presents a configuration menu that asks where the application is running and how it should reach the modules. See Running Applications from the Target for the full walkthrough — organized by application location and connection type.

Connecting to the System

For the cabling, network reachability, terminal access, file transfer, and NAI Ethernet Listener prerequisites needed to get the board ready to communicate with your application, see Connecting to Boards — it covers the cross-compile flow used by SSK 1.x targets (PetaLinux 2014.2 host, Linux host with PCI driver, VxWorks 6.9, Windows host) and includes the HDMI/MIL adapter board details, standard serial terminal settings, detailed minicom setup, and the EEPROM IP-setting walkthrough. On older boards the EEPROM utility is named mbeeprom_util (legacy); on newer boards it is naiMBEEPROMUtil — both work the same way.

Building and Running a Project

Next Steps: Sample Application Guides

Now that the SSK is built and you can run the sample applications on your hardware, the Sample Applications section of this site is where development begins in earnest. The Using NAI SSK 1.x Sample Applications overview walks you through the board connection menu and introduces the guide categories.

Each individual sample application guide is designed to be more than a demo walkthrough — it is a practical reference for writing your own code. The guides break down every API call sequence step by step, with annotated code snippets that you can lift directly into your own application. They cover configuration, data transfer, interrupt setup, communication protocols, and diagnostics for each module type, along with troubleshooting tables for common errors. The complete source file is included with every guide so you can see how the individual snippets fit together in a working application.

When you are ready to move from running samples interactively to deploying your own application, the guides also explain how to replace the sample’s interactive board connection menu with hard-coded connection logic suited to your specific hardware configuration. The Opening a Software Handle to Your Board guide provides the full set of board access API calls and configuration options for automating this process.