switchboard

Bypassing Broken SIP ALG Implementations

The SIP protocol is commonly used for IP telephone communications. Unfortunately it’s notorious for having issues with NAT traversal. Even some major vendors can’t seem to get it right. [Stephen] had this problem with his Cisco WRVS4400N router. After a bit of troubleshooting, he was able to come up with a workaround that others may find useful.

The router had built in SIP ALG functionality, but it just didn’t work. [Stephen] was trying to route SIP traffic from a phone to an Asterisk PBX system behind the router. The router just couldn’t properly handle these packets regardless of whether SIP ALG was enabled or disabled.

[Stephen] first tried to change the SIP port on the external VOIP phone from the default of 5060 to something else. Then he setup port forwarding on the router to the Asterisk box to forward the traffic to the Asterisk system on the original port. This sort of worked. The calls would go through but they would eventually drop after about 20 seconds.

The only thing that [Stephen] could get to work completely was to change the SIP port in Asterisk’s sip.conf file using the “bindport” directive. He changed it to some random unused high port number. Then he setup port forwarding on the router to forward incoming UDP packets on that port to the Asterisk system. This worked fine, but now all of the original phones behind the router stopped working because they were configured to use the default port of 5060.

Rather than re-configure all of the phones in the organization, [Stephen] made one change on the Asterisk system. He setup an iptables rule to forward all incoming traffic on UDP port 5060 to the new SIP port. Now all of the phones are working with minimal changes across the organization. It’s a lot of hassle to go through just because the router couldn’t handle SIP correctly, but it gets the job done.

Grinding A Bicycle Crank For Power Analysis

For [Mark] and [Brian]’s final project for [Bruce Land]’s ECE class at Cornell, they decided to replicate a commercial product. It’s a dashboard for a bicycle that displays distance, cadence, speed, and the power being generated by the cyclist. Computing distance, cadence and speed is pretty easy, but calculating power is another matter entirely.

The guys are using an ATMega1284 to drive an LCD, listen in on some Hall Effect sensors, and do a few calculations. That takes care of measuring everything except power. A quick search of relevant intellectual property gave then the idea of measuring torque at the pedal crank. For that, [Mark] and [Brian] are using a strain gauge on a pedal crank, carefully modified to be stiff enough to work, but flexible enough to measure.

A custom board was constructed for the pedal crank that measures a strain gauge and sends the measurements through a wireless connection to the rest of the bicycle dashboard. It works, and the measurements in the classroom show [Brian] is generating about 450 W when pedaling at 33 mph.

Video below.

Continue reading “Grinding A Bicycle Crank For Power Analysis”

DIY Parts Tumbler Cleans Your Parts Good

Part tumbling is a method of deburring and cleaning relatively small objects. This is done by capturing the parts and media inside a rotating container. The agitation continually moves the media around all surfaces and corners of the part, smoothing them out resulting in a uniform finish. The media can be anything from specialty ceramic shapes to ball bearings to even sand. This process can be done in either a wet or dry condition. Think about the beach, the rocks there are smooth. This is due to the waves repetitively rubbing together the sand and stones which result in smooth round shapes.

[imp22b] recently got into ammo reloading and needed a way to clean his used shell casings. The casings are brass and after a little research online, [imp22b] found that a wet tumbling process with stainless steel pins for media was a DIY proven method for this casing material. He then went on to find a commercially available tumbler to model his build after, in this case a Thumler Model B. There is certainly no need to re-invent the wheel here.

As you can see in the photo, aluminum extrusion was used as the frame. Mounted to the frame are 4 pillow block bearings with shafts between each pair. A motor drives one of the bearing-mounted rods which in turn rotates a container resting on the rods. [imp22b] started with a 1/15 hp motor that he had kicking around but that wasn’t powerful enough so he did have to step up to a 1/3 hp unit. The container is made from off the shelf PVC pipe pieces and holds the media and casings along with some water. A bit of Lemon Shine and Dawn detergents are also added and help clean the parts. After a few hours of tumbling, the casings look pretty darn good.

DIY Parts Tumbler

If you’re interested making your own simpler tumbler, check out this one that uses a hand drill or this one that uses a coffee can.

e-cigarette

How Many Puffs Does It Take To Kill An E-Cigarette?

Most of us have probably heard the old Tootsie Pop slogan, “How many licks does it take to get to the center of a Tootsie Pop?” [E-Smoker2014] had a similar question about his e-cigarettes. These devices are sometimes advertised with the number of puffs they are good for. [E-Smoker2014] had purchased an e-cigarette on a trip to Belgium that advertised 500 puffs. After a bit of use, he started to suspect that he wasn’t getting the advertised number of puffs in before the battery would die. Rather than just accept that the world may never know for sure, he decided to test it out himself.

There aren’t many details on this build, but you can tell what’s going on from the video below. [E-Smoke2014r] built a machine to artificially puff on an e-cigarette. The e-cigarette is hooked up to what appears to be vinyl tubing. This tubing then attaches to a T-splitter. One end of the splitter is hooked up to a DIY actuator valve that can open or close the port. The other end of the splitter is hooked up to more tubing, which in turn is attached to a plastic cylinder placed in a container of water.

To simulate breathing, the computer first opens the relief valve in the splitter. It then mechanically lowers the plastic container into the bowl of water, pushing out a bunch of air in the process. The valve closes, and the computer then raises the plastic container out of the water. This action creates suction that draws air in through the e-cigarette like a normal user would do with their lungs. The computer increases the puff count and then repeats the process, expelling any vapor out of the relief valve.

The results of the test indicated that [E-Smoker] could only get 59 puffs out of this particular e-cigarette before draining the battery. Not even close to the advertised 500 puffs. Maybe he should consider building his own e-cigarette vaporizer? Continue reading “How Many Puffs Does It Take To Kill An E-Cigarette?”

Flashing The ESP8266 In Windows

It’s only been a few months since the ESP8266 rolled out of some factory in China, and already the community is moving from simply getting custom firmware to work on the device to making the development tools easy to use. That’s huge – the barrier to entry is lowered, getting even more people on board with this very cool Internet of Things thing.

While the majority of the community is settling on using the Lua interpreter firmware, there’s still the matter of getting this firmware uploaded to the ESP. [Peter Jennings] of Microchess fame has been working on a Windows app to upload firmware to the ESP via a serial interface. There’s not much to it, but this will allow you to upload the community-created Lua firmware, set the WiFi credentials, toggle GPIO pins, and give you the ability to write a little bit of Lua in the same window.

If you’re looking for something that isn’t designed exclusively for Windows, there’s an alternative firmware flasher over on the nodemcu Github. This flasher also connects the ESP8266 to a network and uploads firmware. It’s a stripped-down programmer without a serial terminal or the ability to toggle pins, but there are plans for making this programmer cross-platform.

R/C Wheel Loader Clears Snow, Lifts People

For some people, R/C cars just aren’t enough. [djMedic2008] has gotten his hands on a monstrous 1/5 scale wheel loader. The loader weighs in at 500lbs, and can lift up to 250 lbs. It was built several years ago as a prototype by [Richard] at Tiny Titan Earth Movers.

The design is based upon huge machines made by companies like Caterpillar and Komatsu. The 4WD system is driven a DC motor through a worm gear reduction. Bucket operation and steering are both operated by a hydraulic system driven by an electric pump. Just like the full-scale machines, the mini loader uses an articulated steering system. The front wheels are locked in place while the entire chassis bends at the middle pivot point. This allows for a much stronger solid front axle.

loader-gearAfter several years of hard life, the loader came to [djMedic] in need of some TLC. The biggest issue was that the rear axle bevel gear had lost several teeth. This gear is under enormous loads when the loader is turning. A gear made of harder steel was the easy answer. Thankfully, you can order high carbon steel bevel gears from Amazon. The repair video gives us a look at the design of the loader. The main components of the machine are welded up from steel sheet and tube stock. This means that [djMedic] won’t have a hard time finding spare parts for his machine once he puts it to work clearing snow, dirt, or anything else that gets in its way!

Click past the break to see the loader in action!

Continue reading “R/C Wheel Loader Clears Snow, Lifts People”

Body Fat Measurement

DIY Electrical Body Fat Analyzer

Whether you are trying to drop some fat or build some muscle, it’s important to track progress. It’s easy enough to track your weight, but weight doesn’t tell the whole story. You might be burning fat but also building muscle, which can make it appear as though you aren’t losing weight at all. A more useful number is body fat percentage. Students from Cornell have developed their own version of an electrical body fat analyzer to help track body fat percentage.

Fat free body mass contains mostly water, whereas fat contains very little water. This means that if you were to pass an electrical current through a body, the overall bioelectrical impedance will vary depending on how much fat or water there is. This isn’t a perfect system, but it can give a rough approximation in a relatively easy way.

The students’ system places an electrode on one hand and another on the opposite foot. This provides the longest electrical path possible in the human body to allow for the most accurate measurement possible. An ATMega1284P is used to generate a 50kHz square wave signal. This signal is opto-isolated for user safety. Another stage of the circuit then uses this source signal to generate a 10ua current source at 50kHz. This is passed through a human body and fed back to the microcontroller for analysis.

The voltage reading is sent to a MATLAB script via serial. The user must also enter in their weight and age. The MATLAB script uses these numbers combined with the voltage reading to estimate the body fat percentage. In order to calibrate the system, the students measured the body fat of 12 of their peers using body fat calipers. They admit that their sample size is too small. All of the sample subjects are about 21 years old and have a similar body fat percentage. This means that their system is currently very accurate for people in this range, but likely less accurate for anyone else. Continue reading “DIY Electrical Body Fat Analyzer”