Allowing Users to Tune Subwoofers Using a Mobile Device
Coderus created a mechanism that would allow Bowers & Wilkins users to tune their subwoofers using a mobile device.
At a Glance
- We designed and delivered first-class solutions to integrate into B&W speakers’ firmware.
- We created a new custom toolset to support the rapid development of all embedded devices.
- There was an integration of MATLAB code with iOS and Android working in parallel with DSP and firmware teams.
- We supported the B&W project’s management life cycle, from product initiation to prototype, release, evaluation and analysis.
The Challenge
Bowers & Wilkins challenged us to design and develop a mechanism that would allow users to tune their subwoofers using a mobile device. This algorithm works by taking a series of recordings of a calibration signal at various positions in the room where the audio equipment is situated. The firmware was developed in parallel with the research team and built so that it runs efficiently on both iOS and Android platforms.
There were various technical differences between iOS and Android that would affect how we could integrate the algorithm being written in MATLAB, which is a software environment suited to data analysis, processing and modelling. Part of the challenging process was to prove the viability of the mobile handset.
The Methodology
The methodology we used played a vital role in the development of the application. We had to allow the Bowers & Wilkins team to iterate quickly on the algorithm and gather diagnostic information on its performance. Based on this, we produced an abstraction layer for the code to provide a stable interface to the application, minimising the impact of regularly updating the algorithm.
Initially, we needed a concept app to prove that the mobile handsets would be viable. We included a variety of settings to allow the Bowers & Wilkins team to change the parameters of the algorithm and app without requiring updates.
The algorithm output was also accessible to be analysed by their engineers. The concept allowed the user experience and app flow to be explored, helping to feed into the algorithm development. For instance, the application was updated to automatically retry with adjusted parameters under certain conditions. In order to allow the algorithm to be developed in parallel with the firmware, we added a feature that allowed plating the calibration signal through the mobile device’s headphone port.
Frequent communication with our partners is always important to us. The teams worked very closely, with regular discussions on the algorithm, its performance and the user experience required to complete the tuning process. The Bowers & Wilkins research team was given access to every iteration of the app on both platforms, allowing them to provide feedback to include in the next sprint. This was particularly important due to the parallel nature of the development.
The Tech_
- We used Objective-C in the development of the algorithm to support iOS.
- MatLab algorithms were optimised to use MatLab C runtime to best fix mobile requirements.
- Native Development Kit (NDK) and Java were used in the development of the algorithm to support Android.
- We used both manual and automated testing as part of the development process to design, test and deliver applications that can be integrated into speaker firmware according to industry standards.
- On both iOS and Android, we created an abstract layer to allow advanced user control of network configurations.
The Coderus team was dedicated to offering a first-class piece of technology that was tailored to the needs of Bowers & Wilkins. We produced a concept app that would allow for testing of various APIs, algorithms and other features of each platform. We then worked to create the consumer application, from concept through to product release, with a focus on delivering results efficiently, effectively and on time.
We took a unique approach to the creation of a new custom toolset to support the rapid development of Bowers & Wilkins technology-enhanced products. This toolset has now been designed to support a broad range of embedded devices, part of the new media range.
We ensured a smooth, agile project development process from product initiation to product completion and release. By collaborating efficiently and effectively with our clients and making sure we were meeting all their expectations, we were able to deliver desirable end results on time.
As with every client we support here at Coderus, we were able to support the management of the Bowers & Wilkins product development life cycle, according to both the needs of the client and of the end-user. The client has the option to opt into our support and maintenance package if interested.