Bone Conduction Glasses 2.0 in Maker Faire Bay Area

 

Bone Conduction

After testing bone conduction headphone 1.0, I had an issue which the device itself was not stable on user’s head because of the shape that I designed in Fusion 360. However, I got a hint from one of my friend. Why do not you put your prototype onto glasses? I was shocked at what I have not even thought of such a simple solution. After all, I started working on new project called Bone Conduction Sunglasses 2.0. While I am soldering new thing, one of my teachers of electrical engineering recommended me to exhibit my prototype in Maker Faire Bay Area 2017.

Accepted

I did not expect the prototype accepted, but I got accepted! Therefore, I would be able to introduce my prototype in public. Thank you for everyone involved it, and Maker Faire!

img_3926

Appearance

There are two transducers which generate some vibrations based on the audio input from 3.5mm headphone jack.

img_4139

Test

Basically, these transducers that I am using on the bone conduction sunglasses are called surface transducers. What the surface transducers do is to vibrate any object to make sounds. As you can see on this video, sounds go outside. This is something I need to fix for next prototype.

In Maker Faire

There was a faire for makers from May 19 to 21. I also exhibit my bone conduction sunglasses in my booth. I had a desktop to explain what bone conduction is and how it works with an image.

img_4164

While I was exhibiting my prototype, I met 9 deaf people. These people gave me really good feedback after they tried. In addition, I got 10 times better result than I expected. Here is the result that I got through the Maker Faire. 8 of them could hear sounds through my device. One man who had an issue of Cochlea could not hear sounds. What I got from them is sounds through the bone conduction was better than some hearing aids that they are using.

screen-shot-2017-05-23-at-11-28-09-am

After all, I have come up with an idea to next step. I might be able to exhibit the Bone Conduction 2.1 in upcoming mini Maker Faire in San Jose. See you there!

My Bone Conduction Headphone 1.0 !!!

Since I started working on many bone conduction experiments and learning the details of the bone conduction, I have finally done my first prototype of the bone conduction headphone.

Struggling with Fusion 360

First thing I did was to make the box to cover the sensitive materials because the wires I soldered were really easy to torn. In order to make the box and fix that problems, I needed to study how to use a CAD called Fusion 360. In addition, what I wanted to output from my 3D printer was the top of the box and the body of the box, so it was really difficult to make these fit perfectly. After I failed it more than 10times, I finally could make these fit!!!

・Top of box

screen-shot-2017-03-01-at-11-57-32-pm

・Body of Box

screen-shot-2017-03-01-at-11-57-14-pm

Probably my 3d design is not good enough yet, but at least, it is ok because my objective which I want these to fit perfectly was accomplished.

My 3D printer, Da Vinci Jr 1.0w, worked perfectly like this picture below. Thanks.

s__45015043

Bone Conduction Headphone Prototype 1.0 is DONE!!!

After I made the box for my bone conduction headphone, I got my awesome dude.

s__45023234

Plus my bone conduction headphone,

s__45015042

equal this…

s__45015047

I feel like I should have made the flame of speakers and wires… But it will be next time!

What I will do to improve my prototype from now

・Design the better and more beautiful box, and design the flame for these two speakers.

・Design my own PCB layout to make the device lighter and smaller.

・Study deep learning (Maybe Tensorflow) to make something interesting happen.

 

The result of my bone conduction headphone 1.0

Bone Conduction Speaker Experiment using I2C

The more things I studied about TPA2016, the further curiosity I had got such as what is going to happen what if I connect bone conduction speaker instead of a speaker. In addition, while reading the data sheet of TPA2016D2, I had been stuck on some words which were Automatic Gain Control (AGC) and Dynamic Range Compression (DRC) because I have never heard of these words before. However, these words DRC and AGC seem to be really important to know to do the further experiment like the aim of this tutorial which is the experiment of bone conduction speaker using I2C.


○About AGC and DRC

Automatic Gain Control is able to make an output signal constant despite its input signal. For example, when multiple people use a microphone at the same time, the sound input levels are different because some of them might be farther than other people, but some of them might be using the microphone closer. In this case, AGC automatically adjusts the input level and makes the output level constant. The point is, the weaker input signal is, the stronger output signal is, and the stronger input signal is, the weaker output signal is. In addition, the gain on the TPA2016D2 can be selected -28dB to +30dB. Of course, -28dB outputs a silent sound and +30dB can output a louder sound.

Dynamic Range Compression is able to prevent a clipping noise when the sound volume is extremely high by compressing the dynamic range of audio signal and speaker. In addition, DRC can automatically adjust the audio signal level for the sound range that you want.


Once you understood these words, let’s get started with bone conduction speaker using I2C experiment.

○Requirements

・Bone Conduction Transducer

img_3669

・TPA2016

s__41000966

・3.5mm Headphone Jack

s__40984581

・3.5mm Audio Cable

s__40984584

・Arduino Uno

s__40984579

・A breadboard

s__40984582

・Some Jumper Wires

img_3670


○Circuit Diagram

bone-conduction-speaker-circuit-diagram

Assembly the components by following this circuit diagram. Remember that the goal of this experiment is to use I2C. I2C pins on the Arduino are A4 pin (SDA) and A5 pin (SCL), so connect each pin to the pins on TPA2016.


○Programming

Before you look up the code below, you should download two libraries which are wire library and TPA2016 library. (Go to Arduino IDE -> Sketch -> Include library -> Manage Libraries -> Search these libraries and download them). After restarting Arduino IDE, go to File -> Example -> then you see “Adafruit TPA2016 Library and click on it. You will get the exactly same code below.

In the serial monitor, you should get this result.

TPA2016 Audio Test
Gain = -28
Gain = -27
Gain = -26
Gain = -25
Gain = -24
Gain = -23
Gain = -22
Gain = -21
Gain = -20
Gain = -19
Gain = -18
Gain = -17
Gain = -16
Gain = -15
Gain = -14
Gain = -13
Gain = -12
Gain = -11
Gain = -10
Gain = -9
Gain = -8
Gain = -7
Gain = -6
Gain = -5
Gain = -4
Gain = -3
Gain = -2
Gain = -1
Gain = 0
Gain = 1
Gain = 2
Gain = 3
Gain = 4
Gain = 5
Gain = 6
Gain = 7
Gain = 8
Gain = 9
Gain = 10
Gain = 11
Gain = 12
Gain = 13
Gain = 14
Gain = 15
Gain = 16
Gain = 17
Gain = 18
Gain = 19
Gain = 20
Gain = 21
Gain = 22
Gain = 23
Gain = 24
Gain = 25
Gain = 26
Gain = 27
Gain = 28
Gain = 29
Gain = 30
Left off
Left On, Right off
Left On, Right On
Setting AGC Compression
Setting Limit Level
Setting AGC Attack
Setting AGC Hold
Setting AGC Release


○Result

The sound from bone conduction speaker worked well! While the gain increases from -28dB to +30dB, the sound correspondingly becomes louder and when the speaker does not touch anywhere, you cannot hear any sound. Which means I2C also worked well between TPA2016 and Arduino. Pretty cool!

Lastly, check and watch the result video below.

Adafruit TPA2016 with Arduino

When I have been looking around a website called Adafruit, I could find an interesting board which made me excited and buy it immediately. Until TPA2016 ships to my home, I was googling how to use it. However, I could not find the simple tutorial which is used with Arduino, so I am trying to show you my experiment about TPA2016 with Arduino.

○Requirements

・TPA2016 (Stereo 2.8W Class D Audio Amplifier)

s__40984580

・Arduino Uno

s__40984579

・3.5mm Stereo Headphone Jack

s__40984581

・3.5mm Audio Cable

s__40984584

・A Speaker ( 8rm, 0.5W )

s__40984585

・A Breadboard

s__40984582

・Some Jumper Wires

s__40984583


○Assembly

s__40992771There are 10 pins on the TPA2016, so combine with the male headers which come with the kit from Adafruit to the 10 pins. Besides that, there are two terminal blocks in the kit, so do the same as the males headers. After all, solder them to completely connect with the TPA2016.

(The terminal blocks might not be required because it depends on what types of speaker you have. In my experiment, I use the speaker above, so there is no way itself can connect to the terminal block, so I am NOT going to use that.)


 

s__41000963

 

The setup looks like this. Put the TPA2016 and 3.5mm Headphone Jack on a breadboard.

 

 

 

 


○Circuit Diagram

s__41000965

I wrote the circuit diagram that is easier to see how it looks like. In this circuit diagram, the Arduino could be working as a power supply (5V).


s__41000964

If you can connect everything correctly, you get a similar one like the image above. Well, the phone that is being connected with the 3.5mm headphone jack was supposed to be on the image… But I took the picture by using the phone, so it is not on there.

I could make a sound through my phone, but the sound was very small and the sound quality was horrible. Do you have any advice to make this experiment better? If so, let’s discuss about this topic in the comment area.

 

How to Create an Effective Header of the Website

Your website is basically the face of your business. If you have the website that does not look great for users, the users might lose the attention for your business even if you do a great business. Especially, the header of your website can be the most effective thing that the web developers should care about. Therefore, the more effective header the website has, the better interest the users might get. Personally, as a person who wants to be an IoT engineer, I thought that it was better to know how to create an effective header of a website by using HTML and CSS, so I want to share you about the very simple and effective header of the website.

  • The achievement

In this article, I will try to show you how to create a navigation bar on the main image and adjust the size of the image. (The original image size is 1920px * 1080px) Caution: Care about the copyright. I got this image from https://www.canva.com/ I highly recommend you to get some free images from there. You can also design the image that you want.

the-header

  • HTML Code

The HTML is the language which is used to create web pages. By adding tags and elements, something you added appears on the website. Basically, what you code in head tag is unable to see on the web. However, without coding them, your website might get bugs, can not get more traffics through the keywords, so on. In the body tag, you code something appeared on the website like a navigation bar, some links, some images, so on.

 

  • CSS Code

The CSS is the language that can control the layout and the styling of the web pages. Even though the way to code is totally different from HTML, CSS is very important to make up your website. Without CSS, your website might be looking like the lines of some text.