[Frank Zhao] put together a USB business card. It’s even got the instructions printed right on the silk screen of the PCB explaining how it should be used. He based the design around an AVR ATtiny85 microcontroller. It runs the V-USB package that handles USB identification and communication protocols. The rest of the hardware is pretty standard, the uC draws power from the 5V USB rail, with a couple of 3.6V Zener diodes to drop the two data lines down to the proper level.
Once plugged in it waits until it detects three caps lock keypresses in a row, then spews a string of its own keypresses that type out [Frank’s] contact information in a text editor window (video after the break). It’s not as reusable as the mass storage business card because [Frank] didn’t breakout the pins on controller. But we still enjoy seeing business cards that make you stand out.
This is a great project to tackle with your newly acquired AVR programming skills.
[youtube=http://www.youtube.com/watch?v=vX1tDk_iwOo]
[Thanks Harald]
i think the usb would be better on top and shorten the card a bit so it does not snag in the wallet and you can pull it out with a convenient tab :P
if it emulates a keybourd why don’t it open notepad on it’s own?
But I love the formfacter thats just awsome, I want a thumb drive in that formfacter.
Now if your gonna go with software starting instuctions in the card then make it a com port and turn than microcontroller into a mini BBS, old school interactive.
or just plug it in and it opens your website.
I’ve seen a few other people with similiar business cards, some with Resume’s as word files or some that type it out like this one. Nothing new here.
All of the Dept of Defense forbids USB devices like this, so I hope you don’t expect to give it to us at all.
@chris probably to keep mac/linux support
It’s just swell cause I always plug random auto-running USB devices that admit to being keyboard scanners into my computers, and I hope any prospective employers will too!
So… this is practically a USB keylogger. Hmm…
Also, I suspect the reason application launchers were left out was to support cross platform users.
Its just a keyboard, It’ll be reading the caps lock LED signal that is sent from the PC to all keyboards when caps lock is toggled, so the only keys it can log are caps, scroll, and num lock!
@Bill Porter: Yes, you raised the issue most sadly deprecating of such creativity. Especially in the wake of Stuxnet and similar, we’re not going to lightly consider plugging USB stuff into our machines anymore. Now, a card that had an OLED or E-Ink to scroll our CV/Resume before the eyes of a Headhunter might be a way around the USB Plague fears. That said, The craftsmanship and style of Frank’s card is proof of WHY he should be hired on the spot by a company that can use his talents properly.
Frank- I am PROUD to have you showing what folks in Hackerdom can achieve! I’m going to FW this to several headhunters that may find your work-and you interesting
where have the 2 zeners disapeared in the final design ?
On Mac OSX you need to press the key next to the Ctrl Key, or something like that when ever you plug in a new keyboard, how are you supposed to do that here?
@tim, I’m wondering that too… on the eagle there clearly are the zeners on the top layer, but are gone from the final PCBs. Maybe they are on the bottom side, hidden under the green rectangle thing?
Still think that the old card CD’s were the best possible option for this.
Clever idea, but it seems to me if he actually wants a job, he ought to put contact information on the outside of the card, as well. Otherwise, it’s like one of those jerk puzzles I used to give people I didn’t trust to puzzle my phone number from.
Every time I did that, I was met with a “Well if you’re not actually going to tell me, then screw you.”
Tbh, it prints out little more information than is on the card itself. Which is a shame!
Linux support?
Now open a terminal window and hit shift 3 times for windows or control three times for linux. Supply password when requested (run a fdisk command)
Although don’t think that would get you hired anywhere…
Another cool idea.
Have it emulate a keyboard and a mass storage device. Have the keyboard send commands to open a firefox or some other browser to a file on the mass storage device portion.
Hell for that matter make it emulate a mouse and make it open paint and “Draw” a business car for them as well as print off 100 copies.
hi guys
The first batch do not have the Zener diodes, it turns out that such a design will work on SOME computers but not ALL computers. I have only handed out three where I’ve attached Zener diodes as an afterthought.
The next batch will include the Zener diodes. The files I posted do include the Zener diodes.
All it does is a keyboard right now, not a keylogger. The most malicious thing I can pull-off is probably ALT-F4 (then followed by N for those “Are you sure” dialogs), or maybe the shutdown key. I heard somebody suggest “rm -f” too.
My contact information changes way too fast (UW’s coop program makes me move every 4 months), so all I want to put is a permanant email address on it. I can put a lot more text in memory but chose not to since I found it rather annoying to wait for it to type everything out.
Of course something with a more powerful chip with native USB would be able do a lot more. Although I think most computers will not auto execute anything. I have not tried multimedia key codes yet. Experimenting with those might let me make cool improvements.
Including the USB connector, this card is as big as a standard business card. I made sure it fit in a Rolodex.
Thanks for all the ideas and comments.
It looked like the solder on the USB pads was dangerously thick to me. It kind of looked like he was about to break off the tab in the port.
>> It’ll be reading the caps lock LED signal that is sent from the PC to all keyboards
Ah. That’s clever, though it’s still not something I’d want to plug into my computer.
But it’s just a keyboard. If someone handed you a keyboard off the street, you would trust its just a keyboard
you’re being over paranoid.
it’s a damn keyb emulator.
anyway, when u don’t trust something, just run it on a test machine or Virtual Machine, duh.
The PCB is VERY strong, it’s not ever going to snap.
The next batch will use 2.4 mm thick PCB instead of the standard 1.6 mm, which will make it even stronger.
hope that they put it in a company computer then have it go through the network and automatically put you on their payroll
Somebody did this but in a much more blackhat manner. The device I saw inputted keys to download/run (I don’t remember which) a backdoor on the computer.
Magic. Really?
Two things which would be entertaining:
1. VT100 animations.
2. data: url to deliver a graphical web page.
I’ve been kinda wanting to do one of these for a while, but I never liked the idea of the SMTs being on top of the board. I should think it’s rather simple to mill out holes for the components to be embedded in the PCB for reduced protrusion.
A few ideas:
http://erikslaboratory.net/drawings/SurfaceThrough.png
@Frank: Sorry, I should have worded that better. I meant it looked like you were going to break the USB port, not the PCB. The 2.4mm PCBs should do a much nicer job. Keep up the good work! =]
Small flaw: ipads don’t have an USB port.
The good news: the flaw lies with the ipad :)
I’m no fan of it but I hear in defiance of my logic businesspeople actually use ipads, and of course smartphones, so I fear you might need to update to putting a BT dongle on there (sigh), or at least print a QR code on the back?
Really clever idea! I don’t think it’s very practical, but props for an original idea.
Wouldn’t it be simpler and more flexible to make the card act as a mass storage device instead of a keyboard? Then the user would not have to open Notepad (the files on the card would appear automatically when plugged in with most OS setups), and you could include text, graphics, animations, etc. in the form of plain text, HTML which would open in a web browser and could include graphics and JavaScript interactivity. I guess the idea is to share your inventiveness in a surprising way, but I can’t see the benefit for anyone else to make these… you’re the inventor so it’s great.
Also, and no fault to your card, but there are so many annoying PCs that make the USB ports inaccessible except to tiny, narrow devices these days. The USB receptacles on the front of a desktop computer are usually surrounded by tons of crud that obstructs entry for many USB devices. I don’t think I could plug this into my computer at work since it’s a Dell with the flip-up panel on the front and upside-down, angled, highly restricted USB ports inside. I can’t even plug in many commercial USB devices. Perhaps it could be plugged into the back of the motherboard, but maybe not since there are many other cables plugged in very nearby (Ethernet, keyboard, video, mouse, etc.).
Blame the PC makers for making it so difficult. They should just put the USB ports on the front flush with the surface. Why conceal them deeply, mounted upside down and angled at 45 degrees toward the floor?
@eric johnson
yes, this would work but make the card vulnerable to flexing (the components could break their solder tabs)
solution:- RTV filled with silver and/or carbon particles, as it shrinks the conductivity goes up.
this stuff is extremely flexible and can withstand bending etc.
obtainable as “Durite tyre repair compound” for something like £1.29 at most garages.
Watch the fumes though…
this is also a neat way to make connections to flexible substrates, such as plastic coated ITO.
might work as a very low resolution positioner by measuring the resistance change as it bends?
haven’t tried mixing with BaTiO3 (dielectric powder) yet but it could work well, it does with EL phopshor..
This is a cute looking idea. Very inventive and close to original…
But…
Anyone using such a device received from anyone else, included ‘trusted associates’…
Is an idiot.
They are the kind that accept thumb drives off street hawkers and wonder how that virus got in…
let alone the keyboard monitor
Based on testing performed with the Teensy as part of the Hak5 Rubber Ducky project, The “detect capslock” technique does not work on all platforms.
I’m afraid the “detect capslock” technique also won’t work on my pc…
After years of little annoyances:
(Typing whole sentences without actually looking at the monitor, and afterwards noticing some kind of idiot pressed the caps lock somewhere halfway the sentence)
Just 2 weeks ago when I had my hot melt glue gun in my hands I permanently fixed that annoying key.
It’s like Superman III.
This is great but the card is still to thick and inflexible.
Now.
If this where made out of flexible and fold-able plastic of some kind that could adapt to fit many different usb port then you would have a product.
I am sure it will require extra memory but another way to automate things upon insertion would be to emulate an ISO 9660 (CDFS) CD file system so it would appear as a CD drive and most (Windows, anyways) PCs are enabled to have auto-started whatever is in AUTORUN.INF file. Most current 1.5″ LCD picture frames (keychain form factor) load their software this way. Looks like they make do with everything (including the install of the software they carry) in under 2MB.
Oh, and speaking about keychains again: I think it might be useful to shorten the card as others suggested to limit a chance to damage USB port (which will probably break before the PCB does) and make it 2″x1″ size – the standard size of a grocery store discount card. If there is also a conveniently located 5mm hole in it, some people may be tempted to actually put it on their keychain … In any case, a hastily drawn sketch here suggests that there is still enough room to make the signature 45 degree USB connector off of one of the corners. I am not 100% sure about the length of the USB part needed for proper connection but I have a Sony “MicroVault Tiny” 2GB USB drive (also made as a flat piece of a PCB) and it makes do with only 8mm length of the connector part, which looks shorter than Frank’s card’s USB connector.
In any case, good job, Frank!
what about using conductive thread to connect the spinning PCB section to the mainboard?
This stuff is good for tens of thousands of cycles, and could easily be hidden within the hinge without too much trouble then connected using 70C BiInSn alloy or conducting adhesive.
I also tried mixing the silver paint in the EL kits with conventional Araldite Instant Clear, and amazingly it does somewhat work although the resistance is over 50K/cm.
Perhaps this could be used to make Z-axis connections to LCDs and suchlike, just mask off the edges and PCB with Sellotape and apply carefully then peel off any excess with the tape when dry and panel properly supported.
Now would you look at that;
http://www.sparkfun.com/products/9147
It’s virtually made for you already, just begging to be flashed
Can I buy it?
Give them a regular card with a URL on it. If they say that they don t have internet or their internet s down, give them one of these.