Embedded Linux system development support
Building an embedded Linux system requires experience. If you are new to Linux, you may ask yourself multiple questions:
- Which tool shall I use to build the root filesystem for my embedded Linux project? Buildroot, OpenEmbedded, or others? Should I reuse an existing distribution instead?
- How can I add and cross-compile my own applications?
- Which C library shall I use? Do the small footprint ones have all the features I need?
- What’s the best choice between the multiple graphical libraries that are available?
- What kernel version shall I use?
- What’s the standard way of starting up my system and its services?
- How can I manage the insertion of external devices?
- What tools can I use to debug my applications and the whole system?
If you need help with any of the above questions, we are the right people to ask for help. First, we answer customer questions like these very often in our Embedded Linux training sessions (see also our training materials and conference presentations).
Second, building embedded Linux systems is our job. We do it all the time, either for internal or for customer projects, for example:
- We built lots of filesystems for use in our Embedded Linux training sessions.
- We’re doing flash filesystem benchmarks for the CE Linux Forum. Our root filesystem contains all the tools to manipulate flash partitions, and was built with Buildroot.
- When we worked on boot time reduction for another customer, we also gave them an automatic way of building a much faster root filesystem. We also conducted on-site consulting work on system development.
- When we developed a graphical demo for Atmel on one one of their evaluation boards, we reused an existing mobile distribution, simplified automatically generated startup scripts (saving tens of seconds of boot time), and used OpenEmbedded to fix to recompile and replace components which sources had to be patched.
- We also have experience building embedded systems on x86 hardware. We built a root filesystem for Vossloh Cogifer (formerly Siema), using the Gentoo distribution to include only the components we needed. We also added sound support to their system.
Here typical services we could offer to you:
- System development jumpstart
- After getting familiar with your needs and with your constraints, we could create a ready-to-use system building environment, allowing you to quickly build your root filesystem and your applications in a reproducible way. We would support you during the project lifetime, allowing you to focus only on your product’s added value, not on the underlying software and system architecture.
- System architecture consulting
- At the beginning of your project, once the specifications are available, we could spend a few days helping you to make the best decisions about system architecture, data organization, building tools, system libraries and components, source control systems. By relying on our experience about community solutions, you would save several weeks or months of research and experiments, and make good decisions from the start.
- System development support
- At any stage in your project, you could hire us to supply technical support to your development teams, ensuring that their issues are quickly resolved, and that they can stay focused on their real, value-added job. We usually support you from Europe, but we can easily adapt to overseas working hours and make ourselves available at least during half of your working day. We can also travel to your own location when needed.
We can also implement demos and prototypes.