One Software Architecture To Run Them All
i.MX 6DualLiteWebsite visit
Evoca Group is a worldwide leader in manufacturing, specialized food and beverage vending machines. With its headquarters in Valbrembo, Italy, Evoca Group proposes a unique coffee culture with its long-established technological leadership in vending machines.
To keep their leading position on the market and the trust of their numerous customers as an OEM, Evoca needs to permanently innovate and propose solutions that are at the same time at the forefront of technology as well as robust and scalable.
Witekio software experts accompany the brand’s R&D and product development for 6 years now.
It all started from re-building a complete software system for one of the product lines, including an immersive user experience and Cloud connectivity for telemetry and update. It then expanded to finding and implementing technical solutions to handle multiple payment solutions.
One of the key outcomes of this long-term collaboration is a software platform to ease and accelerate innovation. The first machine has been out on the market for 5 years now and there is a whole product range that now works with the same common code base.
The software challenges:
The Witekio response:
The Wittenborg 9100 was an interesting and challenging project, where we worked in close collaboration with Evoca to define and implement a powerful and reliable system and software for the next 10 years of Evoca Group machines.
A new robust and modular software architecture designed for code re-use
As a first step in the collaboration, Witekio provided a complete system integration service, including both low and high level software development and support.
The first vending machine range we collaborated on is called “9100” and is based on NPX i.MX 6DualLite design.
Our objective was to build one generic and modular software architecture and to develop our code with code re-use in mind, all this to minimize development for the next product ranges.
Robustness: choice of technological stacks Linux + Qt as well as our experience at developing industrial code. Our code is tested, and we anticipate unknown to develop code that is resistant to corner-cases.
We customized a Linux Yocto1.6 BSP to run on the new Evoca vending machine. In addition to BSP customization, we also enabled Wifi, Bluetooth and multimedia and video decoding on Evoca reference design.
On the application side, our engineers used Qt to create the intuitive interface featuring a user-friendly 10’’ HD touch screen. The application is architected as a set of libraries enabling its simple implementation on future Evoca Group products.
Having this common software platform allows:
- From 60 to 90% code re-use from one product to another
- Secured and up-to-date software on 100% of a product line
- Average time to market moved from 15 months to 5 months for a new product
Figure 1 : Share of code reuse thanks to embedded software platforming
On the Cloud side, Evoca wanted to have a full system to administrate and monitor the machine fleet. The Witekio engineering team helped develop the cloud solution, integrating some third party solution related to specifics for the vending machine vertical.
Integrate different payment solutions (cashless, credit card, change giver, etc)
Payment is a significant chunk of smart vending machines use cases. It often involves different solutions and their associated specificities and challenges.
Evoca wanted to address different scenarios. Cashless (online/offline), change giver, credit card, we master all the different payment solutions, their implementation and their challenges.
Our engineers are familiar with complex smart vending machines user scenarios like contactless payment badges that are rechargeable with credit card.
We helped identify the different use cases, find the right solutions and integrate them into the software system.
Long term collaboration and knowledge transfer
A team of 5 to 6 expert engineers has been working on the Evoca projects for 6 years now. This helped build strong long-term collaboration with a deep knowledge of the software platform and high skills on the different software layers. It allows to gain time and efficiency on successive innovative projects.
Over the years our team also played an active role in Evoca’s own team growth and gain in technical knowledge. On every project our team anticipates the knowledge transfer. Evoca team are not locked. Our code is clean, tested, documented and our team organizes trainings for a progressive hand-over.
Investigate technologies, externalize R&D
Evoca, like any other company that is cutting-edge in its field needs constant inspiration and investigation of new trends, new materials, new techs. Witekio teams regularly investigate new technologies to check how they could apply to vending machines and what added-value they could bring to Evoca, to Evoca’s customers and to the end-user.
Evoca Group is a leading multinational company in the out-of-home coffee machine sector, providing comprehensive range of coffee machines and payment solutions for the Vending, Horeca and OCS markets.