Lip Synching Robot

9,056

110

35

About: Sanuki udon is one of "Japanese taste". it is a food made of noodles of popular wheat in Japan. And my soul food. I'm not good at English. So I am studying English .

This is a robot that lip-synching to the music and the voice .
It responds with sound hit the keyboard .
Please put in the vicinity of the radio and speaker .
Figure to be lip-synching to the music is very cute .

I hope you enjoy it !

Step 1: Material

  • Arduino Pro mini 3.3v/8Mhz (Arduino Pro mini has a 4 pin.)
  • 8 x 8 Led Matrix (32mm x 32mm)
  • Sound Sensor Detection Module LM393 Chip Electret Microphone For Arduino
  • USB cable
  • LED Gradation Light (100 yen shop)
    LED Gradation Light contains a 1.5V × 3 pieces of battery .If you do not use the USB cable is connected to the battery .

Step 2: Cut the USB Cable

Step 3: Check the Power Supply of 5V

You check with a tester that the 5V can be taken from the USB cable .

Step 4: To Make a Hole

Step 5: ​You Pass Through the USB Cable Into the Hole .

Step 6: Fixed With a Binding Band.

Step 7: Pull Does Not Come Off Also .

Step 8: Give Power to the Arduino.

USB 5V(+) to Arduino RAW
USB GND(-) to Arduino GND

Step 9: Connect the Microphone

Microphone +5V to Arduino VCC.
Microphone OUT to Arduino A4.
Microphone GND to Arduino GND.

Step 10: Replace the LED Matrix

It is very difficult.
Please to solder by bending the legs of the LED matrix as shown in the photograph .

Please note the position of the LED matrix of projection .

Step 11: Solder Is Difficult

Step 12: You Can Press the Case Put the LED Matrix .

Step 13: Sketch

Step 14: Attach Paste the Double-sided Tape on the Back of the Microphone

Secure the Matrix LED with an adhesive to the case .

Step 15: Done!

Please try to adjust the microphone when the face does not change .

It defines the facial animation in the first part of the sketch .
Please enjoy to change the face:-)

6 People Made This Project!

Recommendations

  • Trash to Treasure

    Trash to Treasure
  • Arduino Contest 2019

    Arduino Contest 2019
  • Tape Contest

    Tape Contest

35 Discussions

0
None
Nguyễn ThếL

Question 10 months ago

Thanks for share.

I have a Arduino pro mini 5v and matrix led anode, and i got this. Pls! help :(

IMG_20180617_144820.jpgIMG_20180617_144838.jpg
5 answers
0
None
HuyH39Nguyễn ThếL

Answer 3 months ago

Bác có thể hướng dẫn e chi tiết ko. E kém tiếng anh quá nên không hiểu

0
None
SANUKI UDONHuyH39

Reply 3 months ago

Tôi không nói tiếng việt
Vui lòng sử dụng Google Dịch.

0
None
SANUKI UDONNguyễn ThếL

Answer 10 months ago

When using 5 V Arduino, please put the current limiting resistance.LED matrix is an anode and a cathode .I'm using a cathode .
Fix for the anode .Please try modified.I LED matrix of the anode does not confirm because it does not have :-p
goodluck:-)

void display()
{
cat < 7 ? cat++ : cat = 0;
digitalWrite( *(rows + cat), !LOW );
for ( ano = 0; ano < 8; ano++ ) {
digitalWrite( *(cols + ano) , !(*(layer + ano) >> cat ) & 0x01 );
delayMicroseconds(50);
digitalWrite( *(cols + ano), !LOW );
}
digitalWrite( *(rows + cat), !HIGH );
}

0
None
Nguyễn ThếL

10 months ago

Thanks for share, SANUKI UDON. I make it, that really cool, can you give me a code with blue led matrix robot

And i fix this code with matrix 8x8 Anode, replace this code:

// 8 x 8 matrix LED

// ROW side cathode , COLOMN side of the anode

byte pins[17] = { -1, 9, 8, 7, 6, 5, 4, 3, 2, 17, 16, 15, 14, 13, 12, 11, 10};

const static byte cols[8] = {pins[ 9], pins[14], pins[ 8], pins[12], pins[ 1], pins[ 7], pins[ 2], pins[ 5]};

const static byte rows[8] = {pins[13], pins[ 3], pins[ 4], pins[10], pins[ 6], pins[11], pins[15], pins[16]};

0
None
ernesto emanuelm

2 years ago

Hello sorry i'm a noob on this but i'm trying to replicate this project,

am i doing it right? so far i have compiled the code and put it the proto but all the matrix gets iluminated, not the shape of smiley

1 reply
0
None
SANUKI UDONernesto emanuelm

Reply 2 years ago

Thank you for trying.
Is the orientation of the LED Matrix correct?
Is it correctly wired?
I think that you can give advice if you send me a picture.

0
None
radhikasy

2 years ago

Does it work with UNO? If yes how do the connections look?

3 replies
0
None
SANUKI UDONradhikasy

Reply 2 years ago

Yes.
Please wire to Arduino UNO with the same pin number as Arduino MINI. Mini is 3.3V,UNO is 5 V,please put a resistance of 100 ohms to 150 ohms for each of the 8 pins on the right or left side of the 8x8 LED matrix.

Because I am far from good at English, I am sorry if I could not tell you what I wanted to do well.

0
None
radhikasySANUKI UDON

Reply 2 years ago

oops... i just tried connecting to uno without resistance.. not sure what would happen

0
None
georgi-iliev

2 years ago

Hi! I'm ready with the hardware part of the project but I have problem with the software. When I try to compile the code this error appears:

C:\Users\PC\Desktop\LipSynchingRobot\LipSynchingRobot.ino:22:77: warning: narrowing conversion of '-1' from 'int' to 'byte {aka unsigned char}' inside { } [-Wnarrowing]

C:\Users\РC\Desktop\LipSynchingRobot\LipSynchingRobot.ino: In function 'void setup()':

LipSynchingRobot:165: error: 'display' was not declared in this scope

exit status 1

'display' was not declared in this scope

I'm new to arduino and I don't know how to fix it. Could you help me with this?

0
None
BobbyF21

2 years ago

Having issues, if i wire it your way i am unable to make the circuit
work. I rewired it to use tutorials with pictures and text. I worked
out my pin out with setting low and highs and output or not to determine
all the pins. This makes all other script work but for some reason when
i change the const static byte cols to my pins it just turns on all
led's. I have checked the polarity is not the wrong way around as if i
swap them over some led are being powered on 2 rails and dim.

// ROW side cathode , COLOMN side of the anode
const static byte cols [9] = { 2,7,17,5,10,16,11,14};

// 2-dimensional array of column pin numbers:
const static byte rows [8] = { 9,8,4,3,15,13,12,6 };

2 replies
0
None
BobbyF21BobbyF21

Reply 2 years ago

Also tried swapping the const static byte to int with no luck (the 9 instead of an 8 is a mistake i changed it and it makes no diference)

0
None
SANUKI UDONBobbyF21

Reply 2 years ago

To change the sketch to your message I now in the picture.Please try an original program once.

>// ROW side cathode , COLOMN side of the anode

>const static byte cols [8] = { 2,7,17,5,10,16,11,14};

>// 2-dimensional array of column pin numbers:

>const static byte rows [8] = { 9,8,4,3,15,13,12,6 };

IMG_20160911_080040.jpg
0
None
ramclear

2 years ago

Same here....as soon as I power up, the whole matrix lights up.

2 replies
0
None
SANUKI UDONramclear

Reply 2 years ago

LED matrix is an anode and a cathode .
I'm using a cathode .

Fix for the anode .
Please try modified.
I LED matrix of the anode does not confirm because it does not have :-p

void display()
{
cat < 7 ? cat++ : cat = 0;
digitalWrite( *(rows + cat), !LOW );
for ( ano = 0; ano < 8; ano++ ) {
digitalWrite( *(cols + ano) , !(*(layer + ano) >> cat ) & 0x01 );
delayMicroseconds(50);
digitalWrite( *(cols + ano), !LOW );
}
digitalWrite( *(rows + cat), !HIGH );
}

0
None
SANUKI UDONSANUKI UDON

Reply 2 years ago

I think that it heal if symptoms such as photos .I tried to run the anode of the program to the cathode of the LED matrix .

IMG_20160911_080111.jpg