5. Frequently Asked Questions
5.1. What exactly is contained in CENA? Some core/driver referenced in this documentation is missing in my CENA!
Semodia’s ControlEngine.Native represents a collection of loosely coupled C++ software components that can be easily and flexibly combined to facilitate various use cases.
However, it is important to note that you may only have purchased a subset of all components. In this case, those sources/headers will simply be missing. Please ignore non-applicable sections in this documentation if that should be the case.
5.2. How much does it cost? What are the license terms?
CENA is a proprietary software development framework created by Semodia GmbH. General service conditions for any software Semodia produces can be found on our website.
Cost and usage terms are very much subject to the conditions you or your company negotiated with Semodia GmbH. Generally speaking it is safe to assume that:
You may not make the source code publicly available
You may not make CENA available as a binary/library that enables third parties to use CENA
Specific terms and conditions apply on how you may distribute products/binaries that contain CENA
Our sales team will gladly answer any questions you may have and sort out any usage restrictions you may have questions on.
5.3. I already have a product that includes CENA. Can you please send me its/CENAs source code?
The precise terms of what are entitled to are defined in your purchase order. Depending on what you purchased from Semodia, you may be entitled to specific binaries/firmware, your project (but not CENA) or CENA as a product.
Please contact our sales team so we can help you figure out what you are entitled to and how we can provide you with what you need.
Broadly speaking the purchase of software development service from Semodia will not inherently entitle you to ownership of any source code, unless this was explicitly included in the offer. If you have purchased the CENA as an SDK, you may be entitled to the CENA.
5.4. What platforms does CENA run on? Does CENA run on RTOS like FreeRTOS, vxWorks, CubeMX?
CENA is a platform agnostic stack. That means that we take great care to avoid using OS specific capabilities when implementing the core functionality of our stack.
That said, we do provide some conveniences for Linux, BSD and Windows (Cygwin) - for example threads or mutexes. Our loose-coupling of these allows you to implement such functions however they are best suited to your OS.
Generally speaking, there are no restrictions for RTOS. Some CENA components may not be available (“ported”) for your platform, but we take great care the core functionality is not dependent on RTOS specific features.
5.5. Does CENA run with C99/C11? Can I use C++2011?
CENA is build on C++2017; you will need a compiler that fully supports C++2017.
For your reference, anything starting with GCC8 upwards should do the trick :)
5.6. How much Memory/CPU/Storage does CENA need
Since CENA is not an application, but a development framework, this question is hard to answer - you can program anything from a complex process module controller with hundreds of variables and functions down to “hello world” type applications.
If you use the MTP or NOA model cores, the size and resource footprint also depends on how you model your application. Particularly the OPC UA server with its many string variables can (but does not have to) significantly contribute to the memory footprint.
Please contact us with the specific restrictions of your platform and your usecase and we will be happy to consult you.
5.7. Why does CENA contain “Native” in its name?
CENA is the second generation of control engines created at Semodia. Predecessors where based on C# and did not support embedded targets very well. The main distinction of CENA is that it creates binary code native to the target platform - hence the name.
5.8. Can I export/import MTPs from CENA? How does the “Control Engine” relate other products like “MTP Import/Export” or the “MTP Engine”?
CENA currently has no import/export support for XML based configuration files built in.
The term MTP Engine and MTP Import/Export refer to distinct Semodia products that are not related to CENA.