We have built the supplementary iOS application for the upcoming Bluetooth LE device of DreamOn startup. Originally aimed to the end-users, the app also proved to be a valuable tool while debugging the device.
There is one thing that is common for Bluetooth LE applications project - the lack of the actual device. It will go through a number of prototypes, available as a bare circuit board before the hardware design is finalized. The prototypes hang, drop connection and can be “bricked” by an unfortunate firmware update.
Also, normally hardware developers are located in China and product owners in USA. Adding software developers from yet another geographic location and timezone seems too much of a hassle and not worthwhile of other benefits. Our team, however, proves this wrong on the regular basis.
Using our experience our developers were able to build the application without physical access to the device. Although hardware developers have provided the reference code for Bluetooth layer, we have eventually rewritten it from scratch.
The purpose of device is to make a person fall asleep faster and sleep more deeply. It creates a unique pulse that physically calms your body to sleep so you can wake feeling more rested. Since device has a single hardware control, an "on" button, the application acts as the main controller for the device. Users can calibrate the pulse intensity and setup an alarm if needed.
Additionally device acts as a sleep tracker: by analyzing data from built-in accelerometer it detect person's sleep phases. Application processes this data further using Tudor-Locke method and displays user's sleep activity neatly.
Hidden from the end-users the application also has built-in hardware debugging capabilities. It was heavily used by the DreamOn team during there extensive sleep testing.
DreamOn team launched the successful Indiegogo crowdfunding campaign and plans to start shipping the devices early 2019. We continue to improve user experience on iOS and have plans for building Android application soon.