How We Built COVI

Senic
10 min readJun 21, 2017

--

We (Senic YC S13) just launched our second product COVI on Kickstarter!

COVI is a designer light that combines a speech interface and an open source based hub. As we’ve done with our first product NUIMO, we wanted to share with you the psychology, design, hardware and software that went into making COVI.

The post will follow a simple structure:

  1. Problem and Vision
  2. Core Features
  3. Industrial Design
  4. Electronics
  5. Software

1. Problem and Vision

We check our phones 100+ times a day and spend more than 8 hours a day looking at screens. Technology is amazing but we’ve formed a dependence on it which has led to a growing number of side effects, including social isolation, constant distraction and health problems.

We believe there needs to be a fundamental change in how companies design products (and business models) in order to make human wellbeing the non-negotiable factor in the design process.

Technology is a tool that should empower us. When we’re not using it, it should become invisible and let us focus on the things that matter — adding to our wellbeing by facilitating better relationships, accomplishments, health and our ability to just have fun.

Our mission is to offer alternative ways technology can be brought into a home that doesn’t grab our attention, but improves our wellbeing.

2. Core Features

We’ve now shipped several thousand devices of our first product Nuimo. Throughout this process, we’ve talked to hundreds of people on the phone, over Skype and via in-person visits to understand the things they care about. This feedback went straight into the development of our second product COVI.

Open Source Hub

We believe smart home should be open and have open sourced our software stack to promote this mission. We have included a rule engine that allows you to do things like tell your Sonos and Philips Hue to start every morning as an alarm clock or tell your lights to turn on automatically when you come home.

Designer Light

As we considered the concept of creating a piece of furniture, we researched how environments influence our psyche. People might not realize it, but light (along with music) is one of the main things that impact our physiology and moods. Cold light naturally causes our body to feel awake and focused, while warm light does the opposite. We wanted to create a light that understands these natural cycles and helps us to reset them.

Speech
By using graphical interfaces, we reduce our human senses and abilities to only utilizing vision. Humans are designed to be multi-sensory and the future of computer interaction will be multi-sensory. Speech is an amazing step forward, which is why we decided to integrate a speech interface into COVI that works with services like Amazon Alexa.

3. Industrial Design

The design of COVI was influenced by past learnings, UX design, manufacturability, cost, space and physics.

Conceptual Design Briefing

We channeled our learnings from our first product and the feedback from our customers into 5 requirements when starting the design process. We knew going in that COVI needed to:

1. Be Timeless
2. Be Welcoming
3. Be “Less but Better”
4. Naturally Blend Into Any Environment
5. Be Elegant

From there, we tapped into our knowledge of how to manufacture products and keep the costs reasonable while maintaining the highest quality materials and processes.

Form Factor Inspiration

The form factor came out of the idea that COVI should create a cozy atmosphere and have a timeless design with a modern twist that would look good in most homes.

We began by looking at different ways people have used fire throughout history. We found inspiration from coal miners in the south west of Germany where some of us were born (our co-founder’s father worked as a coal miner when he was 15 years old).

In the past, coal miners carried gasoline lamps that they would take underground to carry light with them. This was a huge inspiration for the lamp. We later also integrated a dimmer which mimics the knob of the gasoline lamp and controls the brightness of the light.

Like with NUIMO, we did most of our initial design iterations by hand, letting the shape emerge from our prototyping materials.

Glass Blowing

Glass is an incredible material, flowing into particular forms as a result of it’s unique properties. After making initial models, we designed together with our friends from Berlin Glas, a group of highly skilled craftsmen. Glass is hard to prototype because it has it’s own personality — but unlike plastics, it transmits over 90% of light and doesn’t age.

While prototyping with glass, you need a highly experienced team of glassblowers and excellent communications skills. When working with them, everything happens quickly and can be dangerous without proper training.

A lot of the connected or smart lamps that you find on the market today are made of Polycarbonate or other plastics — but our research has shown that these petrol based materials always have a huge negative impact on the light quality. Transmittance of glass at 10mm thickness always stays above 90%, while Polycarbonate is always below. If we really wanted to benefit from the visible range, we had to use glass. Also, Polycarbonate has the tendency to become brittle or yellow under exposure to sunlight. Given that we wanted to mimic natural light, glass was the only choice for COVI.

Glass’s purity, translucency and reflection is the reason why still today, it’s the number one choice for lighting designers and engineers all over the world.

Metal Turning

Since the foot of COVI needs to fulfill a lot of different functions, we decided on one of the most versatile materials there is — Aluminum. Aluminum acts as an interaction layer and housing at the same time. The base of COVI is turned and anodized by a German manufacturer who typically makes casings for camera lenses.

4. Electronics

Parallel to defining the final shape of COVI, we started with the schematics of the electronics. The electronics and mechanical components of COVI needed to be in harmony to create the final product we had in mind, requiring our entire team to work closely.

Basic Layout

The central electronics unit is a system on module (SoM) which needed to have enough computing power to run our operating system, application, servers and in future potentially support beam forming and speech recognition algorithms.

Furthermore, we wanted to have WiFi, Bluetooth Classic and BLE in order to connect smart devices (like Sonos, LIFX, NUIMO and others).

We use multiple microphones to record the voice of our users, pre-process it and send it to Alexa Voice services for recognition. We then output the intent of the command via our own speaker system.

Central Processing Unit

The Senic Hub is powered by a Nano Pi Neo, a tiny but powerful single board computer equipped with an Allwinner H3 CPU, 512 MB DDR3 RAM. We pack it with a 2 GB high speed memory card that stores our operating system and software stack. We also extend it with high class Wi-Fi and Bluetooth Classic/Bluetooth 4.0 dongles to provide stable and reliable wireless connectivity.

LEDs

In order to mimic natural light, we needed to have a wide range of LEDs so that we could map a circadian cycle. These LEDs range from cold white (~5000 K) to warm white (~3000 K), allowing us to mix colors and create a full spectrum— similar to sunlight.

Beamforming
In order to talk to COVI, we capture the voice of the user with a couple of microphones, filtering out noise and environmental echoes. We then send this input to our speech service partners for processing. Once we get the underlying meaning of the speech input command, a response can be generated.

In the first step, we used off-the-shelf DSPs to do acoustic echo cancellation (AEC), Direction of Arrival (DOA) to detect the direction of the speaker, beamforming, de-reverberation and background noise suppression. Later on, we plan to do this processing on our own custom module.

After getting the answer from something like AVS (Alexa Voice Services), the audio response is amplified and outputted through a compact high quality speaker with class D amplifiers located in COVI’s base.

Speech Processing
For the speech interface of COVI, we designed two different “triggers”. The first is Amazon’s well-established trigger word (“Alexa”) and the second is a capacitive touch sensor so you can just lightly touch the base of the lamp before you make a command.

Amazon is providing their speech recognition module, Alexa Voice Service (AVS), available with echo devices, as a service, for third party hardware and software integration. We decided to start working with them to get a better understanding of new paradigms of VUI — Voice User Interface. We used Alexa AVS Sample App to put together the first version of our speech interaction.

Once the trigger word or tap occurs, the audio is captured via our microphone and the audio input is pushed to AVS. AVS replies back with the appropriate response, such as providing a weather update or changing the music track. This response is communicated to the user via a spoken response (e.g. responding to a question) or by triggering the requested action (e.g. play a Sonos playlist or turn on a Hue bulb). As we continue researching and working with voice interfaces, we plan to include other options like Watson or even a custom on-board voice interaction kit.

5. Software

To build COVI for ease-of-use, programmability, updatability and power, we had to make a lot of technical decisions on the software side. Some decisions were clear from the beginning, while others required a thorough understanding of what our smart home users need and a realistic awareness about the limited resources of a startup when building out software.

Basic Architecture

The basic software stack for COVI is shown below. In designing the software, we wanted to make sure that we could open source the code base — but still maintain quality standards for privacy, reliability and stability.

Operating System: Linux

In keeping with our plan to open source our system as much as possible, we made a decision to use Linux, a great open source operating system. We chose it because it’s considered very stable and has support for various hardware platforms that are important to our developers and users. We’re using the latest Linux Kernel 4.10 and building our own distribution to have full control over which tools become part of the Linux subsystem. Having as few as possible tools running lets us reduce the amount of moving the parts and thus achieve a high system availability.

Programming Language: Python

Python.org

Why did we decide Python was the right programming language for the Hub? A better question might be: Why shouldn’t we use Python? If you take a deep dive into the open source smart home world, you will find a number of do-it-yourself projects and Python is often the language of choice for these DIYers. This adoption of Python is primarily due to the shear number of readymade libraries and Python’s high portability to different operating systems. In addition, Python is easy to learn and extremely powerful and expressive as a programming language. The Python ecosystem that has already been adopted by more than 2 million developers.

For an extended look into our software stack you can find our developer documentation (which is constantly being added to and growing) here.

Summary

Bringing together design, electronics and software is no easy task — but developing smart home technologies that care about the wellbeing of the user is our greatest mission.

We hope that this gives you some overview of how we built COVI and maybe even inspiration for your own product. If you have any questions or ideas, please feel free to reach out to us at hi@senic.com.

If you want to support our mission, please back our Kickstarter campaign today.

Tobias & Team Senic.

--

--

Senic

We’re a hardware startup based in Berlin. We care about natural user interfaces, local manufacturing and user experience.