USB Rotary Phone: A Lync to the Past

usb rotary phone[Ivan] is fed up with all this rampant virtualization. When his company took away his physical desk phone in favor of using MS Lync, he was driven to build a USB rotary phone. His coworkers loved it and one of them asked [Ivan] to build another. The build log focuses on converting his coworker’s vintage brass and copper number that must weigh a ton.

He had to do a bit more work with this one because it had rusted out inside and a few of the contacts were bent. The good news is that the speaker and microphone were in working order and he was able to use them both. After restoring the stock functionality, he added a USB sound card and created a USB keyboard using a PIC32MX440F256H.

The rotary phone’s dial works using two switches, one that’s open and one that’s closed when no one is dialing. Once dialing is detected, the open switch closes and the closed switch clicks according to the dialed digit (ten clicks for 0). [Ivan] also reads the switch hook state and has added debouncing. This gave him some trouble because of the quick response expected by the PC bus, but he made use of interrupts and was allowed to keep his seat.

Please stay on the line. [Ivan]‘s videos will be with you shortly.

[Read more...]

Make that C64 Keyboard Work as a USB Keyboard

keyboard-to-usb-mapping

Let’s face it, we all have keyboard peculiarities. Don’t try to deny it, everyone who types a lot has an opinion of the keyboard they stroke so frequently. We know [Brian Benchoff] swears by his model M, and we’re guessing he was the one that bumped into [Evan] and convinced him to write about his conversion of a Commodore 64 keyboard for use as a USB device.

This is not [Evan's] first rodeo. We recently saw him fixing up the worn off letters of his own model M. But this time around there’s some clever microcontroller work at play. Apparently mapping 122 keys using an Atmel AVR 32u4 chip (built in USB connectivity) is quite a task. Luckily someone’s already worked out all kinds of good things and is sharing the love with the Soarer’s Keyboard Controller Firmware. Of course it handles scanning, but also includes debounce, muxing, and the trick to scan more keys than the uC has pins for. We still don’t fully understand that bit of it. But [Evan] did post the config file he’s using so perhaps after we get elbow-deep in the code we’ll have a better understanding.

If you give this a try, we want to hear about it. Anyone have any modern keyboards they’re in love with? Leave a comment below.

Solderdoodle is an Open Source, USB Rechargable Soldering Iron

solderdoodle

Battery powered soldering irons are nothing new, but what about a soldering iron that can recharge via USB? [Solarcycle] realized that it might be handy to be able to recharge a portable soldering iron using such a ubiquitous connector and power source, so he developed the Solderdoodle.

The core component of the Solderdoodle is a Weller BP645 Soldering Iron. The heating element is removed from the Weller and placed into a custom case. The case is designed to be 3d printed. The STL files for the case are available if you want to make your own.

The Solderdoodle does away with large, disposable batteries and replaces them with a lithium ion battery pack. The battery contains no built-in protection circuitry in order to save space. Instead, this circuit is added later. [Solarcycle] appears to be using a circuit of his own design. The schematic and Gerber’s are available on his website.

The Instructable walks through all of the steps to build one of these yourself if you are so inclined. If you don’t have the spare time, you can fund the project’s Kickstarter and pre-order a production model. It’s always great to see a new commercial product with an open design.

[via Reddit]

Simple Touch Controller Frees Up USB Port

touch screen demonstration using text

[typ.o] was working on a Raspberry Pi project and found himself running short on USB ports. The project required a touch screen interface, which takes up one of the ports. Since he was only using the screen in text mode, he decided to ditch the original USB controller and make his own.

The ever popular Attiny85 is deployed to handle the task, and is interfaced between the resistive touch panel and the Raspberry pi, using only three pins from the GPIO port. The Attiny85 runs off the 3 volt supply from the raspi, so no level shifter is needed, helping to keep his board super simple.

The calibration and calculation of the touched character location is done by a Python script running on the raspi. [typ.o] is a fan of the KISS principle, and it shows. Be sure to check out his site for all source code, schematics and a video demonstrating this simple but effective solution.

An Audio Based USB Oscilloscope and Signal Generator for $20

SoundScope

Are you interested in building a 20kHz 2-channel oscilloscope and a 2-channel signal generator for only $20 with minimal effort? Be sure to check out [Jan_Henrik's] Instructable that goes over how to build this awesome tool from a cheap USB audio card.

We have featured tons and tons of DIY oscilloscopes in the past, but this effort resulted in something very well put together while remaining very simple to understand and easy to build. You don’t even need to modify the USB audio card at all. One of the coolest parts of this build is that you can unplug your probe assembly from your USB audio card, and bring it wherever your hacking takes you. After the build, all you need is [Christian Zeitnitz's] Soundcard Oscilloscope program and you are good to go. One of the major downsides that is often overlooked when using an audio based oscilloscope, is that it is “AC coupled”. This means you cannot measure low-frequencies (including DC signals) using a sound card. Be sure to heed [Jan_Henrik's] advice and do not use your built in audio card as an oscilloscope. With no protection circuitry, it is a sure fire way to fry your computer.

What analog projects have you built around an audio interface? We have seen such an interface used for many different applications, including a few fun medical related hacks (be sure to keep safety your first priority). Write in and let us know!

A Wireless Computer Remote that Emulates a USB Keyboard

PCRemote

If you are anything like [Antoine], you would love to be able to control your PC with a simple hand-held remote control from anywhere in your house. [Antoine] wrote in to tell us about his wireless computer remote that emulates a USB keyboard, making it suitable for any device that uses a USB keyboard.

His blog post is very well written and contains a ton of design information and background on the project. He initially wanting to easily control his PC’s music from anywhere in his house without needing to be within line of sight of his computer. The end result is a very handy remote that can be used to change music, video, and even launch applications on his computer. The system consists of a base station for his remote that connects to the computer and acts as a USB keyboard, and the remote itself. The base station uses V-USB on an Arduino to interface with the computer, and VirtualWire to handle the wireless protocol for the remote. For those of you who don’t know about VirtualWire (now superseded by RadioHead), it is a very cool Arduino library that lets you easily use raw wireless interfaces (also called vanilla wireless interfaces).

Without going into too much detail here (be sure to see the actual post for more information), the remote itself was redesigned after the initial proof of concept to maximize battery life. The final power consumption is very impressive, resulting in a battery life of more than two years! This remote system is very well put together and contains many aspects that can easily be reused for other projects.

GPIB To USB, With A Python API

GPIB

If you’re not so daft as to think Arduino-based oscilloscopes and multimeters are actually useful for all but the simplest tests and measurements, you just might have some big iron sitting around your workbench from the likes of HP, or Tektronix. You might have noticed a strange port on the back of these machines, labeled GPIB or IEEE-488. This is the standard interface for these devices, and if you’ve ever priced out a USB to IEEE-488 converter, you can see why [Steven] thought it would be cheaper to build his own.

This build is an update to an earlier version we saw a few years ago. Since then, [Steven] has taken some advice from the community and replaced a bunch of resistors with proper GPIB line driver ICs, and generally cleaned up the firmware.

Because a USB to GPIB adapter is only one small part of the tools necessary to connect these old measurement devices to a modern computer, [Steven] has also been working on InstrumentKit. It’s a Python library that takes all the standardized instrument commands and wraps them up in an easy to use API. You can check out the docs for InstrumentKit here, or just look through the board files and firmware on the Github