Those who develop embedded products are frequently faced with the
challenge of having to rewrite most of the software when their applications are
to be adapted to other computer modules. Module manufacturers can give them
valuable help by standardizing access for their hardware to a certain degree.
One way of doing this is by using K-station, a software toolkit made by
embedded PC specialist Kontron that comes with a developer’s library. K-station
saves developers a great deal of time due to its comprehensive library, ready-made
functions and applications, and user-friendly interface.

K-station acts as a software library and a toolkit that provides developers drivers and code, as well as completely encapsulated functions.
The process of standardisation has now come a long way in the embedded computing
field in terms of mechanics and electronics: if a developer wishes to adapt his
application to a powerful new Computer-on-Module system and trusts in the COM
Express standard, these days he can be sure its standard form factor and connectors
will still fit in with his design. Which saves time and development costs, of
course.
The thing is, these advantages are partly negated when it comes to the
software used in the application. After all, when you develop an embedded
product, you can’t just buy a board, install the software, and off it goes; a wide
range of minor configuration settings and adaptations still need to be found before
the application will run as intended.
Less software
standardisation
The work already starts at the BIOS level, in fact. It may be that a
developer wants to alter the default settings for a particular application so
that the firm’s own logo will appear when the system boots up; or he might want
to adapt BIOS to older software still in use, or activate a TPM (Trusted Platform
Module). Such activities all mean extra work before the application code can be
finalized.
The reason for this is that, unlike hardware, the degree of
standardization that exists in low-level software is not quite as advanced. If an
exchangeable module operates in conjunction with another CPU, developers have
to rewrite most of the software, particularly in cases where the functions are
very closely connected to the processor, for instance.
In other words, they have to repeat all the time-consuming steps already
completed for what was basically exactly the same application; from searching
for the right commands in a programming manual to conducting tests and
incorporating new programming in the application code as a whole.
A good deal of effort on the part of developers would be saved if they
were able to draw on existing drivers and codes when logically integrating
certain standard functions ? much like a baker or pastry cook employs certain
types of baking mixtures and flour to make his creations, no longer needing to
mix these himself.
Both of them save valuable time and are able to concentrate on more original
aspects of their work that are also more central to it as a result.
For this to happen, it is necessary for the degree of standardization
and modularization that is steadily increasing in the hardware sector to catch
on in the software field as well. Embedded manufacturers are in a position to
stop this gap, for they acquire the practical knowledge necessary for this when
developing their own products.
This knowledge ought to pay off for them, particularly as manufacturers’
hardware products are growing increasingly similar. By providing their
customers the software material they will need in a simple way, manufacturers
can add even more value to their modules and win some important extra points compared
with the competition.
A toolkit
with software support
K-station, produced by embedded-computer manufacturer Kontron, is one
example of such added value. It’s a type of software toolkit in which Kontron has
disclosed parts of its own intellectual property to customers so as to
facilitate their work, and includes a large number of function modules.
Downward-compatible to JIDA, K-station acts as a software library and a
toolkit providing developers drivers and code in addition to completely
encapsulated functions. What is especially convenient for users is that they
can easily pick the tools required at different stages of development via a
user-friendly interface and then add them to their own applications.
This set of tools provides a particularly high amount of support
regarding the transition from development and functional testing in the
reference application to the actual application. The source code it provides
serves as a sample for developers; once the functions have been tested in the
reference application and found to be okay, it is very easy for developers to
transfer them to their own applications via the shell tools and then incorporate
them.
A language such as C, C++, C#, or Java can be used for the purpose. APIs
may be accessed very simply by invoking a specific process, for example.
K-station
functions
K-station offers a wide range of additional functions on top of these. Using
K-station, developers can monitor the temperature, voltage, and ventilation in
their hardware, for instance, or program limit values and threshold value
switches.
Besides this, a standardized hardware watchdog is available to them as
well as a smart battery management facility that includes a means of checking
the charging level and intelligent discharging of a number of batteries, which
will no doubt be of interest to programmers who develop mobile devices.
The “Kioports” function also makes it easier to integrate GPIO pin
access. Take “K-flash,” for instance, which makes it easier to save and replicate
BIOS images on devices, reset default values, or set a customer-specific boot
logo. This is an easy and convenient procedure that does not involve any time-consuming
adapting of BIOS using the module manufacturer’s own service.
An additional benefit for software developers is that the tools in this
kit all work in a uniform way; they can be used in the same manner, regardless
of the platform on which Kontron’s Computer-on-Module runs. In other words, there
is better portability, and less development effort is required.
K-station also provides numerous functions for incorporating security features
in an application. A support team, for example, can track the serial number,
runtime, the boot counter, and repair details for quality assurance purposes
via a standardized information area on the board.
What’s more, Kontron’s toolkit allows a TFT link to be made via JILI
(Intelligent LVDS Interface) along with EDID support (Extended Display
Identification Data).
Many of the functions available in K-station and its predecessor, JIDA32,
are now being used successfully on a day-to-day basis. Embedded specialist
B-plus GmbH, which is also one of Kontron’s sales and design partners, has a
customer that employs these K-station tools to manufacture, program, and
maintain devices, for example.
While the devices are being assembled, the BIOS settings that have been
selected are also transferred to new assemblies by means of a memory stick. This
way, a “cloned” assembly can be created very quickly whose BIOS is already
parameterized with all the settings that are required for it, thereby saving a
huge amount of time.
Since the terminals operate without a monitor, the remote control tool
is employed in the field in the event of maintenance or parameterisation being
necessary. It also includes a full set of commands at the manufacturing stage in
order to parameterize the connected system from a host PC (such as a laptop or netbook),
conduct fault analyses, or run minor software updates.
In another customer’s case, the uniform interface resulted in
considerable savings being made in terms of time and money.
“We were able to
transfer the low-level software produced several years ago for a Kontron
Computer-on-Module to Kontron’s new nanoETXexpress-SP very easily. It wasn’t
even necessary to adapt the software code,” sais Thomas Limbrunner, head of development
at b-plus.
Decreasing time to market
As for the application side, support for the K-station toolbox is
implemented in BIOS as a standard feature on every Kontron board. K-station therefore
puts a useful range of auxiliary tools at the developer's disposal that not
only speed up the development of applications using a Kontron board, but also make
it faster and more efficient to manufacture devices and conduct
maintenance/parameterization in the field.
To sum up, support kits enable developers to create the software for
their applications faster and more easily, regardless of the programming
language used, the operating system employed, and the hardware. So now software
developers are also able to benefit from increasing modularization and standardization
on the embedded market.
Hubert Hafner is Product
Manager Computer-on-Modules at Kontron