Choosing the Right SSK
The NAI Software Support Kit (SSK) ships in two active families — SSK 1.x and SSK 2.x — plus a number of dedicated legacy SSKs for older products. Each family has multiple OS-specific packages. This page walks you through picking the right one in three steps:
- Identify the board your application will run on (the SBC).
- Identify the operating system on that SBC (or on the host PC, if you’re communicating remotely).
- Choose the matching package from the Downloads page.
For details on what’s inside each SSK family, see the SSK 1.x Package Guide and the SSK 2.x Package Guide. To learn how to use the SSK once you have it, see the Software Development Guide 1.X or Software Development Guide 2.X.
Glossary
- SBC (Single Board Computer): a board with its own onboard processor — e.g. 68ARM4, 75ARM1, 68INT6, 67PPC2, NIU3A, CIU3. Your code runs here in onboard deployments.
- I/O board: a board with no onboard processor — e.g. 75G5, 68G5, 67G6, 68G6. Used as a slave inside an SIU chassis, or accessed from a host PC over Ethernet.
- NIU / CIU: complete motherboards with an integrated processor. They’re standalone SBCs in their own right, not chassis. All currently available NIU and CIU products use SSK 2.x.
- SIU: a multi-board system populated with a master SBC plus one or more I/O boards (slaves) on a backplane. SSK choice depends on the SBC inside.
- Onboard: the SSK application runs on the SBC itself.
- External / remote host: the SSK application runs on a separate Windows or Linux PC and talks to the board over Ethernet.
Interactive picker
Answer the three (or four) questions below and the form will recommend the exact SSK package and download link for your setup. The narrative sections further down cover the same logic in more detail.
Quick decision tree
flowchart TD A[Start: what hardware do you have?] --> B{Hardware type} B -->|Standalone board, NIU, or CIU| D[Treat the product itself<br/>as your SBC] B -->|SIU multi-board system| C[Identify the master SBC<br/>inside the SIU] C --> D D --> E{Gen5 or Gen6?} E -->|No — older Gen2/3/4| L[See Legacy boards<br/>below] E -->|Yes| F{Where will your<br/>application run?} F -->|On the SBC<br/>onboard| G{What onboard OS?} F -->|On a separate<br/>Windows PC<br/>over Ethernet| W[Windows Library<br/>Software Support Kit<br/>SSK 1.x or 2.x —<br/>match the board] F -->|On a separate<br/>Linux PC<br/>over Ethernet| X{Which board?} G -->|PetaLinux 2014.2| H1[Linux Library for ARM<br/>Processor Software<br/>Support Kit<br/>SSK 1.x] G -->|PetaLinux 2018.2<br/>or 2023.2| H2[PetaLinux Library<br/>Software Support Kit<br/>SSK 2.x] G -->|VxWorks 6 — ARM| H3a[VxWorks Library for<br/>ARM Processor Software<br/>Support Kit<br/>SSK 1.x] G -->|VxWorks 6 — PowerPC| H3b[VxWorks Library for<br/>Power PC Software<br/>Support Kit<br/>SSK 1.x] G -->|VxWorks 7| H4[VxWorks Library<br/>Software Support Kit<br/>SSK 2.x] G -->|DEOS| H5[PetaLinux Library<br/>Software Support Kit<br/>SSK 2.x +<br/>matching DEOS BSP] X -->|75INT2 family<br/>CentOS host| X1[Linux Library<br/>Software Support Kit<br/>SSK 1.x] X -->|68INT5 / 68INT6<br/>Ubuntu host| X2[Linux x86 Software<br/>Support Kit<br/>SSK 2.x]
Step 1 — Identify your SBC
The SSK is chosen for the SBC that runs your application. Three cases:
Standalone SBC (single board with onboard processor). This is your SBC. Examples: 68ARM4, 75ARM1, 68INT6, 67PPC2.
NIU or CIU. These are motherboards with an integrated processor, not chassis. Treat them as standalone SBCs. All currently available NIU and CIU products (CIU3, NIU1A, NIU2A, NIU2A-ES2, NIU3A, NIU3E) use SSK 2.x.
SIU (multi-board system). The chassis contains one master SBC plus one or more I/O boards (slaves) on a backplane. The SSK is picked based on the master SBC inside — not the slaves. The SSK on the master handles communication with slave boards over the backplane, even when those slaves run a different (often older) firmware. For example, an SIU built around a 68ARM4 master with 75G5 slaves running PetaLinux 2014.2 or baremetal still uses the PetaLinux Library Software Support Kit (SSK 2.x) because that’s what the 68ARM4 master needs.
Note
If you’re not sure which board in your SIU is the master, check the system manual (e.g. SIU34S Manual, SIU32S Manual, SIU36S Manual) — the master SBC will be identified in the product overview section. Choosing the right SSK for an SIU can require additional consideration beyond what’s in this guide; if in doubt, contact NAI.
Step 2 — Pick by SBC family
| SBC family | Examples | Default SSK family |
|---|---|---|
| Gen6 ARM | 68ARM4 | SSK 2.x |
| Gen6 Intel | 68INT6, 68INT6H | SSK 2.x |
| Gen6 I/O (no SBC) | 67G6, 68G6 | host-side: SSK 2.x via Windows / Linux x86 |
| Gen5 NIU / CIU motherboards | CIU3, NIU1A, NIU2A, NIU2A-ES2, NIU3A, NIU3E | SSK 2.x |
| Gen5 Cortex-A53 ARM | 64ARM1, 68ARM1, 75ARM1 | SSK 1.x or 2.x — depends on PetaLinux version |
| Gen5 Zynq ARM | 68ARM2 | SSK 2.x (PetaLinux 2018.2) |
| Gen5 Intel | 68INT5 | SSK 2.x (Ubuntu host) |
| Gen5 PowerPC | 67PPC2, 68PPC2, 75PPC1, 75SBC4 | SSK 1.x or 2.x — depends on VxWorks version |
| Gen5 I/O (no SBC) | 64G5, 75G5, 68G5 | host-side, or controlled by a master SBC inside an SIU |
| Pre-Gen5 (legacy) | see Legacy boards | SSK 1.x or dedicated legacy SSK |
Step 3 — Pick by operating system
Once you know the SSK family from Step 2, the OS determines the specific package. Names below match the exact entries on the Downloads page.
| Target OS | Where it runs | Package |
|---|---|---|
| Windows | host PC, talks to board over Ethernet | Windows Library Software Support Kit (SSK 1.x or 2.x — match your board) |
| Linux x86 (CentOS) | host PC, talks to board over Ethernet | Linux Library Software Support Kit (SSK 1.x) |
| Linux x86 (Ubuntu) | host PC, talks to board over Ethernet | Linux x86 Software Support Kit (SSK 2.x) |
| PetaLinux 2014.2 | onboard SBC | Linux Library for ARM Processor Software Support Kit (SSK 1.x) |
| PetaLinux 2018.2 / 2023.2 | onboard SBC | PetaLinux Library Software Support Kit (SSK 2.x) |
| VxWorks 6 (ARM SBC) | onboard SBC | VxWorks Library for ARM Processor Software Support Kit (SSK 1.x) |
| VxWorks 6 (PowerPC SBC) | onboard SBC | VxWorks Library for Power PC Software Support Kit (SSK 1.x) |
| VxWorks 7 | onboard SBC | VxWorks Library Software Support Kit (SSK 2.x) |
| DEOS | onboard SBC | PetaLinux Library Software Support Kit (SSK 2.x) + matching DEOS BSP |
| LabView | host PC (Windows) | LabView Library Software Support Kit (SSK 1.x) |
Linux x86 — CentOS vs Ubuntu
The Linux Library Software Support Kit (SSK 1.x) was developed against CentOS 7 (used by older Intel SBCs like the 75INT2). The Linux x86 Software Support Kit (SSK 2.x) was developed against Ubuntu (used by 68INT5 and 68INT6). The development guides assume those OSes when describing prerequisites, package managers, and build commands. If you run a different distribution, expect some adjustment — but the libraries themselves work on most modern x86 Linux systems.
Multi-board chassis — a worked example
You have an SIU34S with one 68ARM4 master and four 75G5 slaves. The 75G5s came with PetaLinux 2014.2 onboard, and you want to write an application that reads data from all four 75G5s.
- The application runs on the 68ARM4 master, not on the 75G5s.
- The 68ARM4 runs PetaLinux 2023.2 → PetaLinux Library Software Support Kit (SSK 2.x).
- The SSK 2.x library on the master knows how to talk to the 75G5 slaves over the chassis backplane — you don’t need to install a separate SSK on each slave.
- The 75G5 PetaLinux image on the slaves is irrelevant to your application’s SSK choice.
Onboard vs external
flowchart LR subgraph External["External / remote host"] PC[Windows or Linux PC<br/>Application + SSK] end PC <-->|Ethernet| Board1[SBC or I/O board] Board1 -->|Backplane<br/>PCIe / VME| Mods1[I/O modules] subgraph Onboard["Onboard"] SBC[SBC<br/>Application + SSK] SBC -->|Backplane<br/>PCIe / VME| Mods2[I/O modules] end
External is the typical development workflow: your Windows or Linux PC runs the application and SSK, and reaches the board over Ethernet. This is also a valid deployment model — the Windows Library Software Support Kit (both SSK 1.x and SSK 2.x) is primarily an Ethernet client and may not include PCI driver support for boards installed inside the host.
Onboard is the typical production workflow: the application runs directly on the SBC and talks to slave / I/O boards over the chassis backplane. This is what an SIU is designed for, and what the BSP + SSK 2.x stack supports for DEOS / PetaLinux / VxWorks 7 targets.
Legacy boards
Some older Gen2 / Gen3 / Gen4 boards have driver support in SSK 1.x (Windows package) so they can be used with the generic SSK 1.x toolchain. Boards not on this list have dedicated, board-specific SSKs that ship separately and no longer receive updates — get those from the corresponding product page on naii.com.
Legacy boards confirmed in SSK 1.x
The current SSK 1.x Windows driver includes board support for:
- 64-series: 64C2, 64C3, 64D1, 64D2, 64D3, 64E3, 64PPC1
- 74-series: 74SD5
- 75-series: 75C3, 75D3, 75DS2, 75INT2
- 76-series: 76C2, 76CS3
- 99-series: 99ARM1, 99ARM2
This list is not exhaustive — check the SSK 1.x Package Guide for the authoritative current list.
If your product isn’t listed above (e.g. 75DL1, 75SD1, 78CS2, 73DS2, 74SD1, 64CS4), it has its own dedicated legacy SSK. Visit the product page on naii.com to download it.
Quick reference
| You have… | Use |
|---|---|
| Just a Windows PC and a Gen5/6 board, want to talk over Ethernet | Windows Library Software Support Kit — pick SSK 1.x or 2.x to match your board (see Step 2) |
| 68INT5 or 68INT6 SBC running Ubuntu | Linux x86 Software Support Kit (SSK 2.x) |
| 75INT2 SBC running CentOS | Linux Library Software Support Kit (SSK 1.x) |
| 64ARM1, 68ARM1, 75ARM1 with PetaLinux 2014.2 | Linux Library for ARM Processor Software Support Kit (SSK 1.x) |
| 64ARM1, 68ARM1, 75ARM1 with PetaLinux 2018.2 or 2023.2 | PetaLinux Library Software Support Kit (SSK 2.x) |
| 68ARM2 (Zynq) | PetaLinux Library Software Support Kit (SSK 2.x) |
| 68ARM4 (Gen6 NXP ARM) | PetaLinux Library Software Support Kit (SSK 2.x) |
| PowerPC SBC on VxWorks 6 | VxWorks Library for Power PC Software Support Kit (SSK 1.x) |
| ARM SBC on VxWorks 6 | VxWorks Library for ARM Processor Software Support Kit (SSK 1.x) |
| Any SBC on VxWorks 7 | VxWorks Library Software Support Kit (SSK 2.x) |
| Any SBC on DEOS | PetaLinux Library Software Support Kit (SSK 2.x) + matching DEOS BSP |
| LabView application (Windows) | LabView Library Software Support Kit (SSK 1.x) |
| NIU or CIU (CIU3, NIU3A, NIU2A, etc.) | SSK 2.x — pick the package matching the OS you’ll run on it |
| SIU chassis (SIU34S, SIU32S, etc.) | Pick by the master SBC inside — see Step 1 |
| Pre-Gen5 board listed in Legacy boards | Windows Library Software Support Kit (SSK 1.x) |
| Pre-Gen5 board not listed there | Dedicated legacy SSK from naii.com |
Related
- Downloads page — actual download links for every package mentioned here
- Software Development Guide 1.X — how to use SSK 1.x once installed
- Software Development Guide 2.X — how to use SSK 2.x once installed
- SSK 1.x Package Guide — what’s inside SSK 1.x
- SSK 2.x Package Guide — what’s inside SSK 2.x
- Connecting to Boards — host-to-board connection details
- NAI Embedded Soft Panel — try-before-you-build GUI tool
