A bottle that offers smart device app
control over Bluetooth

About

About

A bottle, that opens new possibilities to outdoor enthusiasts, can boil water or keep the contents at the ideal hot beverage drinking temperature for extended periods of time with a battery. The bottle is a powerful tool for outdoor enthusiasts, where there is typically limited access to fire and electricity.

We attempted to make it take commands from companion iOS and Android app. It was, of course, more complicated than simply interfacing a connection from the mobile to Google Home.

Challenges

Challenge

To discover the travel mug from the app so that the app user can connect it to and access the control screen

To connect the bottle to an external interface in absence of a keyboard to enter a pin or authorization code.

To send packet and checksum security to exchange data and reject any unauthorized attempt to control the mug

To connect the bottle to an external interface when an official SDK is missing to access it’s hardware components

Solution

Solution

We solved the issue of bottle discovery by using Bluetooth LE Services since the device was undiscoverable to regular Bluetooth interfaces. With Bluetooth LE, it can be connected in seconds

We send the checksum in every data packet. The checksum is sum of the all the bits of the data packets. If the sum is greater or smaller than the checksum, the mug rejects command.

We contacted the hardware team to help in this regard. They provided us with low level hardware codes. We created SDK out of it for the team to develop apps and make further development possible.

App Controlled

The app can initialize the hot bottle, brew a fresh cup of coffee, keep the content at a constant temperature.

Set Temperature

Set the temperature in either Celsius (C) or Fahrenheit (F) from the app itself in the unique speedometer interface

Menu Screen

The menu screen displays all the actions that the bottle can do along with the voice commands for each action command.

Turn-on Bluetooth

The Bluetooth turns on, programmatically, whenever a user attempts it to connect with one of the Bluetooth device.

swift
Language

C#

Xcode
Editor

Xcode

android studio
Editor

Visual studio

BLE
Communication

BLE

circular icon
3rd Party library

Circular slider

knob icon
3rd Party library

Knob

Aftermaths

Aftermath

The development of SDK by our team made many people to develop app for the bottle. Not to mention, our development team could develop apps for iOS and Android with the same SDK we developed from the codes we received from the hardware vendor