xpcc has had a very exciting year with the introduction of Resumable functions 
and the following improvements of almost all drivers to be non-blocking (see 
the last change logs).
We (the RCA [1]) have used xpcc in our two robots to achive the Vice 
Championship in the International Eurobot Competition in Switzerland, so that 
was very exciting and a lot of fun.

The major refactoring that we started about 2 years ago to generate the 
architecture library out of templates using our device files [2] has proven 
itself to the right tool to deal with the many small differences between 
peripheral drivers of a microcontroller family.
However, the integration of this highly custom solution into our build system 
SCons with a lot of custom code is getting to the point where we are fighting 
SCons more than we should and this is always a sign that something is wrong.
In fact,we wanted to uncouple the generation of the custom framework out of our 
templates from the actual build process for a long time now, since that would 
also enable us to use a build system other than SCons to compile and link the 
application code.

@dergraaf has been working on a new library builder concept which will deal 
only with the framework generation and customization and module composition, 
but not compilation.
Under with concept, we can group functionality as modules and declare 
dependencies between them.
So the `xpcc/architecture` folder would be one module, `xpcc/ui` might be 
another module.
Your project will have a configuration file declaring which modules are needed 
and how they should be configured.

We will continue this development of xpcc under a new name, since XPCC is 
originally the name for the IPC protocol that we use in our robots [3] and it 
has always been awkward that the framework was named after it.
The new framework will be licensed under GPL with a linking exception and will 
be called `modm` (pronounced modem).
modm stands for `modular object-oriented development for microcontrollers` [4].

xpcc.io and its repositories will remain in place until this transition is 
completed, hopefully until the end of this year.
Then xpcc will stand for the protocol and modm for the framework.


[1]: http://www.roboterclub.rwth-aachen.de/cms/
[3]: http://xpcc.io/api/group__xpcc__comm.html
[4]: https://github.com/roboterclubaachen/modm
xpcc-dev mailing list

Reply via email to