Development environments

Imperix offers two software development kits (SDK) that allow generating run-time code for its programmable controllers.

Both kits contain all the needed tools for the rapid prototyping of power converter control techniques, including simulation, code generation, debugging and testing.

Various environments are supported, ranging from C/C++ coding to Matlab Simulink as well as Plexim PLECS.

Software development kits

Imperix offers two distinct sets of tools for embedded control software development: ACG-SDK and CPP-SDK. In addition, both SDKs also support editing the FPGA-based firmware.

 Hover to find out more.
Accelerate developments

Whether you prefer working from your usual simulation software or writing C/C++ code, our controllers can be programmed in just one click.

Overall, we observe that most users are able to get first satisfying experimental results after just a tens of hours in the lab.

Work on multiple hardware

With imperix’s solutions, the same run-time code can be used on either B-Box RCP or B-Board PRO.

This results in a complete portability of your code and significant savings in time and developments efforts.

Leverage an open framework

Unlike many development tools, our software allows you to implement, modify, tweak or test anything that comes to your mind.

What’s more, you can even customize the FPGA firmware. This can be particularly useful for demanding or complex applications.

software development kits (SDK)

The two kits contain all the necessary tools to support the quick and easy development of embedded control software. This ranges from the development environments themselves, to simulation models, compilers, supporting libraries, as well as debugging tools.

Simulation and code generation from Simulink *
Simulation and code generation from PLECS **
C/C++ code development environment
BBOS operating system
BB Control utility software
User-editable area inside the FPGA (Kintex 7)
Stacked operation (multiple B-Boxes)

* Requires a valid MATLAB license issued by MathWorks as well as: Embedded Coder, MATLAB Coder and Simulink Coder.
** Requires a valid PLECS license issued by Plexim GmbH (either Standalone or Blockset) as well as a PLECS Coder license.

Volume pricing

When multiple licenses are related to the same customer, degressive pricing applies, according to the overall purchase history. The table below shows the proposed volume discounts:

Volume discounts


All controllers can be flashed up to 20 times with this free-of-charge license. This authorizes firmware upgrades during the entire system lifetime in production environments.

Licensing policy


These licenses allow unlimited access to the controllers. All software licenses are:

  • Target-locked (i.e. tied to the controller unit)
  • Lifetime (no renewal fees, free software updates)
  • Usable on an unlimited number of computers

In multi-B-Box configurations, only the master unit must be licensed. The master is the controller hosting the user-defined CPU program.


All controllers can be flashed up to 20 times with these free-of-charge licenses. This authorizes firmware upgrades during the entire system lifetime in production environments.


C/C++ programming provides a quick way to begin coding a converter control without requiring any additional software. This approach also offers slightly superior performance over automated code generation, thanks to a (normally) better code efficiency.

For teaching applications, learning how to write code for embedded control also reveal to be an important aspect of any power electronic courses.

  • Superior performance

Programming the B-Box RCP using C/C++ code generally offers superior performance over the graphical approach.

  • Improved flexibility

With the C/C++ SDK, there are virtually no limitations to what can be implemented.

  • Teaching

C/C++ programming offers a convenient way to either learn, understand or teach about the constraints of hard real-time.


In addition to the C/C++ coding approach, the development of your control can be implemented thanks to Simulink™-based coding.

With blockset for Simulink™, you can code your converter control within minutes. Relying on the capabilities of PLECS™ or SimPowerSystems™, you’ll be also able to run a realistic PC-based simulation of your converter along with its controller’s behavior. Then, program your B-Box RCP or B-Board PRO controller in seconds (literally!) and start working on your real prototype, whether it has been assembled with imperix power modules or any custom hardware.

  • No programming skills needed

Automated code generation is truly easy to achieve! Learning a programming language is entirely dispensable.

  • Accurate simulations

The Simulink and PLECS blocksets contain simulation models that guarantee accurate simulation results.

  • Facilitated code maintenance

The ability to conduct both the simulation and control generation tasks from the same files greatly simplifies code maintenance.

Related products

Want to know more?

For all questions related to our software, feel free to get in touch with our technical team. We're here to help! Online demos can also be organized upon request.

Alternatively, you can always download and install the software. As our licenses are hardware-related, our software is essentially unrestricted and all features can be tested free of charge.