Picture of Knock Block
Knock Block: a modern knocking framework

Man has long wrestled with Time. Also, with knocking on things and not getting the time of day. We propose a knocking platform through which these fundamental needs are met. This is illustrated with the Knock Block KUI and accompanying Clock Knock Block application. The Knock Block possesses realistic knocking action with a human-like variation in frequency and amplitude of knocks.

Just knock on the Knock Block, or even the surface on which it's resting, and it will knock back the time to you. First it will knock the number of hours, and then the quarter hours.

If you knock several times, the Mock Knock Block application will take over, and repeat back your knocking pattern.

Remove these adsRemove these ads by Signing Up

Step 1: Inside the Knock Block

Picture of Inside the Knock Block
What's inside that rich mahogany exterior? An Arduino that reads vibrations from a piezoelectric sensor and relays back information with a solenoid tapping against the resonant lid of the block. It's all powered by one or two 9V batteries.

Parts list:
- any Arduino can handle this
- a TIP31C high current transistor for the switch
- the exotically named Jameco 191172-001 solenoid, prized for its low price ($3!) and current
- a Measurement Specialties DT-series piezo film element (pretty sure that's the model)
- a 1M ohm resistor (your mileage may vary)
- 9V battery
- block case of your choice
Draftmen8887 months ago

Video really very useful.


Enjoyed that video. Thanks.

Very cool.

Hey, great project! Very simple idea but a rich human-computer interaction.

I am having a big problem using a piezo sensor in a project I am working on. I just cant get it to sense anything practically. If I hold it and flick it I get a big spike of course, but once I tape it to a surface I can knock all I want and I get almost nothing, maybe 5-6 out of the 1023 of the analog sensing range from the arduino.

Can you explain how you're attaching it a little better. I just dont know what I'm doing wrong. Thanks for your help.

jkestner (author)  AdielFernandez2 years ago
Ours is just taped to a hard surface inside. In the Knock Block, we only need to sense whether or not it was knocked, not how hard, so dynamic range doesn't matter much. We set the threshold at 20 and that filtered out false positives.

Keep in mind that the Arduino's sampling rate may be too low to capture the high-frequency waveform produced by knocking a piezo. Our rich mahogany case probably helped deepen it. You could try smoothing out the sharp waves with a capacitor, if it is just a sampling-rate issue.
My gut tells me that the sampling rate isnt the issue as when I clamped the piezo into some helping hands it managed to get the vibration into the right part of the sensor because it seemed nice and sensitive then.

The capacitor sounds interesting. What rating would you recommend and how would you recommend I connect it?

n0ukf5 years ago
Ok, how many of us hobbyists have a CNC router?
hintss n0ukf4 years ago
how many have makerbots?
jkestner (author)  n0ukf5 years ago
Actually, one of the team is working on a $100 CNC router. But of course, it can be just as fun to experiment with found containers.
jeff-o5 years ago
Also, how do you set the time?
jkestner (author)  jeff-o5 years ago
Ah, you spotted the weakness! Right now, you have to set the starting time in the source code so that when you upload the code, you start at the right time. Not optimal if your battery dies. An improvement would be to write a setup function that's called at power-up to set the hour, and then the minute. With knocking, of course.
hintss jkestner4 years ago
or upload at midnight?
qwertyboy4 years ago
knock block rocks all blocky rocks!
 Well, the video is nice and dramatic.
AndyGadget5 years ago
You may be interested in my take on the Knock Block.
(PLEASE don't call it a schlock mock knock block ;¬)

Big Nasty 5 years ago
if you hit it with a sword, will it say "boing boing" then tell you the time?
H3xx Big Nasty 5 years ago
sklemp5 years ago
This is such an awesome project. 

How long does the battery last in it? I can't imagine it would drain them too quickly. Also, would it be possible make a plug on it to plug it into say a USB port for charging only?

buteomont5 years ago
This is a great idea! The only suggestion I can make is that you may want to put a reverse-biased diode across the solenoid, to keep the back EMF from destroying the transistor. Apparently the particular transistor that you are using can handle it, but a less robust one might not.
jkestner (author)  buteomont5 years ago
Good point! I didn't put one in while prototyping, and forgot it after that.
jo_mo5 years ago
This is great. I got it to work with a servo too. Use the servo library to attach it and use two settings for on and off. Increase the delay between "high" and "low" to let the servo swing into position.
Squid Tamer5 years ago
I love all of the tongue twisters in the video.
BobS5 years ago
Your block seems to be from 'rubberwood', not mahogany. Rubberwood is a very nice hardwood cut from rubber trees. Natural rubber is not much in demand anymore, so the plantations are being cut down, mostly for oil palms
Koosie5 years ago
Thats awesome! A knocking block, lol Now you have something to "talk" morse code to.
Berkin5 years ago
That video was epic win. 5 stars!
jeff-o Berkin5 years ago
Video Win! Embed it on the first page!
srhadaham5 years ago
I have no intentions of making this item, due only to my lack of skill Having watched the video I love the knock block but alas my knocks will have to go unused until i acquire the skills required to harness their true potential
crapflinger5 years ago
it'd be nice to have a parts list and a video...i could see adding a bunch of these together and having an automated xylophone
jkestner (author)  crapflinger5 years ago
There's a Vimeo link on the intro page. I've added a parts list to step 1.
AndyGadget5 years ago
I really like this. Novel, well built, attractive and a total time-waster. BRILLIANT! I can't see any amplification on the piezo. What sort of voltage peaks do you get from it?
jkestner (author)  AndyGadget5 years ago
Thank you. Our piezo has peaks of 20+V if you really flick it. We tempered this with a 1M ohm resistor. (I've added schematics to steps 3 and 4.)
ycc21065 years ago
The shape maybe too foppish, sophisticated...
MarcosLE5 years ago
The wood block is awesome!! I want one. I think this could be extended to have phantom knocks to confuse your friends and co-workers.
or just don't put it in a block...and hook it all up to the door of your house...that way when someone knocks back