FrontPanel SDK Release Notes
Latest Release (FrontPanel 6.1.0)
The configurations below are the official build and distribution targets for the API, samples, and applications in this release. Many similar configurations are known to work (e.g. other Linux distributions), but these are the ones we build and validate against. Note that the cells mean different things per column — see the legend below the table.
| OS | C/C++ | PYTHON | JAVA | RUBY | C# | Platform |
|---|---|---|---|---|---|---|
| Windows 10, 11 (x64) | MSVS 2022 | 3.11+ | 11+ | – | Yes | Yes |
| Windows 11 (ARM64) beta | MSVS 2022 | 3.11+ | 11+ | – | Yes | Yes |
| macOS 11+ Intel and Apple Silicon | Apple Clang 17 | 3.11+ | 11+ | Yes | – | Yes |
| Ubuntu 24.04 LTS (x64) Linux 6.8.0-48 | gcc 13.3.0 | 3.11+ | 11+ | Yes | – | Yes |
| Ubuntu 22.04 LTS (x64) Linux 5.15.0-1013 | gcc 11.4.0 | 3.11+ | 11+ | Yes | – | Yes |
| Rocky Linux 10.1 (x64, RHEL 10) Linux 6.12.0-124.8.1 | gcc 14.3.1 | 3.11+ | 11+ | Yes | – | Yes |
| Rocky Linux 9.3 (x64, RHEL 9) Linux 5.14.0-472 | gcc 11.5.0 | 3.11+ | 11+ | Yes | – | Yes |
| Raspbian 12.0 (ARM64-Raspberry Pi, Bookworm) Linux 6.6.31 | gcc 12.2.0 | 3.11+ | 11+ | Yes | – | – |
The Windows ARM64 distribution of FrontPanel Platform is released as a beta. See Known Issues below for a USB driver limitation that affects devices with pre-WCID firmware.
Language columns (C/C++, Python, Java, Ruby, C#): These describe the FrontPanel API bindings for each platform. The C/C++ entry is the compiler used to build the native libraries; the Python and Java entries are the minimum runtime versions required (any newer version works); Ruby and C# show availability (Yes / –).
Platform column: “Yes” indicates that the FrontPanel Platform application is available for that operating system. FrontPanel Platform is an Electron-based application that includes the graphical Device Manager and hosts TypeScript/JavaScript GUI applications such as the bundled examples and any custom apps you develop.
Deprecation Notices
The following deprecated methods have been removed in FrontPanel 6.0.
okCFrontPanel::IsFrontPanel3SupportedokCFrontPanel::EnableAsynchronousTransfersokCFrontPanel::GetHostInterfaceWidth– Migrate to these methods:okTDeviceInfo::wireWidthokTDeviceInfo::triggerWidthokTDeviceInfo::pipeWidthokTDeviceInfo::registerAddressWidthokTDeviceInfo::registerDataWidth
okCFrontPanel::IsHighSpeed– Migrate tookTDeviceInfo::usbSpeedokCFrontPanel::GetBoardModel– Migrate tookTDeviceInfo::productIDokCFrontPanel::GetDeviceMajorVersion– Migrate tookTDeviceInfo::deviceMajorVersionokCFrontPanel::GetDeviceMinorVersion– Migrate tookTDeviceInfo::deviceMinorVersionokCFrontPanel::GetSerialNumber– Migrate tookTDeviceInfo::serialNumberokCFrontPanel::GetDeviceID– Migrate tookTDeviceInfo::deviceIDokCFrontPanel::GetDeviceCount– Migrate toOpalKelly::FrontPanelDevices::GetCountokCFrontPanel::GetDeviceListModel– Migrate tookTDeviceInfo::productIDokCFrontPanel::GetBoardModel– Migrate tookTDeviceInfo::productIDokCFrontPanel::GetDeviceListSerial– Migrate toOpalKelly::FrontPanelDevices::GetSerial()okCFrontPanel::OpenBySerial– Migrate toOpalKelly::FrontPanelDevices::Open()
Changelog
- SZG-HUB1450 support added.
- The SDK, HDL designs, simulation libraries, and language APIs are now installed from the FrontPanel Platform application using the Download Development Kit button located in the side bar.
- Python 3.11 is now the minimum supported Python version. Support for 3.9 and 3.10 has been dropped.
- Java 11 is now the minimum supported Java version.
- New Pythonic API (beta) python wheel. The existing Python Binding API continues to work unchanged, so no immediate migration is required.
- New Idiomatic C# API (beta) nuget package. The existing C# Binding API continues to work unchanged, so no immediate migration is required.
- Counters, and DES examples sources have been updated to demonstrate AXI transfers using the FPGADataPortAXI class.
- New PerfTest example was added to demonstrate AXI transfer performance profiling.
- Eye diagram display for FP-GEN3-USB devices.
- Model Context Protocol support (beta).
- Improved flash write performance for most FP-GEN1-USB and FP-GEN2-USB devices.
- Added FMC EEPROM write functionality for XEM8350.
Known Issues
- Windows ARM64 is a beta distribution. Devices whose firmware supports WCID (Windows
Compatible ID) work normally on Windows on Arm, because Windows recognizes them and loads its
own built-in driver. Devices running pre-WCID firmware require the Opal Kelly USB driver, which
Windows on Arm will not install, so those devices do not appear in FrontPanel Platform. Updating
the device to a WCID-capable firmware resolves this where an update is published for your model —
see FrontPanel Firmware and
Troubleshooting.
Previous Releases
FrontPanel 6.0.0
- Ubuntu 20.04 LTS support has been removed from FrontPanel 6+ went end-of-life 2025-04-30.
- Rocky Linux 8 support has been removed.
- Raspian 10.0 support has been removed.
- nVidia TX2 support has been removed on Ubuntu 18.04.
- The FrontPanel Application (FrontPanel Classic) has been removed from the SDK package. Release 5.3 is the continuing maintenance release for the application.
- The FrontPanel Platform is now the supported application for managing FrontPanel-based devices.
- FrontPanel Platform Example application sources added for Counters, DES, PipeTest, and RAMTester
- Wire, Trigger, and Pipe Methods have been moved into a new FPGADataPortClassic class.
- New GetFPGADataPortClassic and GetFPGADataPortAXI methods have been added to FrontPanel class.
- Example source have been updated to use the new FPGADataPortClassic class.
- FrontPanel::Error code has been replaced with OpalKelly::ErrorCode
Known Issues
- Configuration Flash programming for USB Gen 2 devices (e.g. XEM6310) is inoperative. Planning a fix for 6.1 release.
loadConfigurationFromMemory()andloadConfigurationFromFile()methods of theIFPGAConfigurationJavaScript API interface throw an exception when optionalprogressCallbackis not defined.- DESTester.rb Ruby example sources are not migrated to the new 6.0.0 API. Planning to fix in 6.1 release.