Author Archives: Anool Mahidharia

Endurance Test Machine Is Not Quite Useless

via hardware – Hackaday

It seems [Pete Prodoehl] was working on a project that involved counting baseballs as they fell out of a chute, with the counting part being sensed by a long lever microswitch. Now we all know there are a number of different ways in which one can do this using all kinds of fancy sensors. But for [Pete], we guess the microswitch was what floated his boat — likely because it was cheap, easily available and replaceable, and reliable. Well, the reliable part he wasn’t very sure about, so he built a (not quite) Useless Machine that would conduct an endurance test on the specific switch brand and type he was using. But mostly, it seemed like an excuse to do some CAD design, 3D printing, wood work and other hacker stuff.

The switches he’s testing appear to be cheap knock-off’s of a well known brand. Running them through the torture test on his Useless Machine, he found that the lever got deformed after a while, and would stop missing the actuator arms of his endurance tester completely. In some other samples, he found that the switches would die, electrically, after just a few thousand operations. The test results appear to have justified building the Useless Machine. In any case, even when using original switches, quite often it does help to perform tests to verify their suitability to your specific application.

Ideally, these microswitches ought to have been compliant to the IEC 61058 series of standards. When switches encounter real world loads running off utility supply, their electrical endurance is de-rated depending on many factors. The standard defines many different kinds electro-mechanical test parameters such as the speed of actuation, the number of operations per minute and on-off timing. Actual operating conditions are simulated using various types of electrical loads such as purely resistive, filament lamp loads (non-linear resistance), capacitive loads or inductive loads. There’s also a test involving a locked rotor condition. Under some of the most severe kinds of electrical loads, a switch may be expected to last just a few hundred operations. But if the switch is used for low power applications (contact current below 20 mA), then it is expected to last up to its mechanical endurance limit. For most microswitches, this is usually in the range to 100,000 to 300,000 operations.

Coming back to his project, his first version was cobbled together as a quick hack. A 3D-printed lever was attached to a motor fixed on a 3D-printed mount. The switch was wired to an Arduino input, and a four-digit display showed the number of counts. On his next attempt, he replaced the single lever with a set of three, and in yet another version, he changed the lever design by adding small ball bearings at the end of the actuator arms so they rolled smoothly over the microswitch lever. The final version isn’t anywhere close to a machine that would be used to test these kind of switches in a Compliance Test Laboratory, but for his purpose, we guess it meets the bar.

For those interested, here is a great resource on everything you need to know about Switch Basics. And check out the Useless Machine in action in the video below.

Filed under: hardware, Tech Hacks

One Soldering Controller To Rule Them All

via hardware – Hackaday

If your favourite programming language is solder, they you’ve surely worked your way through a bunch of irons and controllers over your hacker existence. It’s also likely you couldn’t pick one single favourite and ended up with a bunch of them crowding your desk. It would be handy to have one controller to rule them all. That’s just what [sparkybg] set out to do by building his Really Universal Soldering Controller. His intent was to design a controller capable of driving any kind of low voltage soldering iron which used either an in-line or separate temperature sensor (either thermocouple or resistive PTC).

This project has really caught on. [sparkybg] announced his build about two years back and since then many others have started posting details of their own Unisolder 5.2 builds. [zed65] built the version seen to the right and [SZ64] assembled the boards shown at the top of this article.

The controller has been proven to work successfully with Iron handles from Hakko, Pace, JBC, Weller, Ersa, as well as several Chinese makes. Getting the controller to identify one of the supported 625 types of iron profiles consists of connecting two close tolerance resistors across the relevant pins on the 9-pin shell connector. This is a brilliant solution to help identify a large variety of different types of irons with simple hardware. In the unlikely situation where you have a really vague, unsupported model, then creating your own custom profile is quite straightforward. The design is highly discrete with an all analog front end and a PIC32 doing all the digital heavy lifting.

To get an idea of the complexity of his task, here is what [sparkybg] needs to do:

“I have around 200 microseconds to stop the power, wait for the TC voltage to come to its real value, connect the amplifier to this voltage, wait for the amplifier to set its output to what I want to read, take the measurement from the ADC, disconnect the amplifier from the TC, run the PID, and eventually turn the power back on. The millivolts to temperature calculation is done using polynomial with 10 members. It does this calculation using 32bit mantissa floating point numbers and completes it in around 20 microseconds. The whole wave shaping, temperature calculation, PID and so on is completed in around 50-60 microseconds. RMS current, voltage and power calculations are done in around 100 microseconds. All this is done between the half periods of the mains voltage, where the voltage is less than around 3 volts.”

The forum is already over 800 posts deep, but you can start by grabbing the all important schematic PDF’s, Gerbers, BoM and firmware files conveniently linked in the first post to build your own Unisolder5.2 controller. This Universal Controller is a follow up to his earlier project for a Hakko T12/T15 specific controller which gave him a lot of insight in to designing the universal version.

[sparkybg] has posted several videos showing the UniSolder5.2 controlling several types of Irons. In the video after the break, he demonstrates it controlling a Weller WSP80.

Filed under: hardware

Unlocking 12V Quick Charge on a USB Power Bank

via hardware – Hackaday

[Robert Nixdorf] frequently needs to use this high-end audio recorder, but it sucks dry a set of eight AA batteries in just a few hours. Obviously a longer lasting solution was required, and he started scouring the web looking for an answer. He bought a Quick Charge power bank and then hacked a Digispark to negotiate with the power bank to provide 12V output to Quick Charge his audio recorder.

Qualcomm’s Quick Charge system is designed to provide increased output voltages to reduce charging time in QC compatible devices such as mobile phones powered by their Snapdragon range of SoC’s. Depending on how the end-point negotiates with the charger, either 5V, 9V or 12V outputs are supported.

You can dig into the details in Qualcomm’s Quick Charge Patent [PDF] which shows how the system works. Quite simply, the voltage provided by the charger depends on the signals set on the D+ and D- data pins during the initial handshaking phase. [Robert] found it easy to get his QC charger to provide the required voltage by using a 3V3 voltage regulator and a resistive divider. But a more permanent solution would be needed if he wanted to use it on the field.

His parts bin revealed a Digispark board and he set about hacking it. He isolated the VUSB from the rest of his board since it would get pulled up to 12V when in use. And then replaced the existing 5V regulator with a 3V3 one. This required several bodges which he has documented on his blog. Some simple code flashed on the ATtiny85 handles all of the handshaking and sets up 12V output to run his audio recorder. A single charge on the power bank now lasts him almost 12 hours, so he’s pretty satisfied with the hack.

Quick Charge is currently at version 4 and supports USB-C and USB-PD hardware such as cables and connectors. But it seems using USB-C hardware outside of the current USB-C specifications is deprecated, with reports suggesting Google is asking OEM’s not to use Quick Charge but stick to USB-PD. Let’s hope this gets settled one way or another soon.

Thanks, [Frank] for the tip.

Filed under: ATtiny Hacks, hardware

Taking Apart a Vintage Oscilloscope

via hardware – Hackaday

After getting a power supply and a multimeter, the next piece of gear a hacker would want to add to their bench is the oscilloscope. Nowadays, even the cheapest ones cost a few hundred dollars yet pack in the features. At the other end of the scale, if you can pony up close to a  million dollars, you can help yourself to an oscilloscope capable of 100 GHz bandwidth and 240 GS/s sampling rate. With that perspective, it becomes interesting to take a look at this video (embedded below), where [Jack Ganssle] shows us the Philco 7019 Junior Scope which was introduced way back in 1946. It seems the Philco 7019 model was an identical re-badged version of the Waterman Model S-10-A PocketScope.

[Jack] is familiar to all of us as an embedded systems engineer, but in this video he does a teardown of this vintage analog model. He starts off by walking us through the various controls, of which there are not a lot, in this “portable” instrument. At around the 3:40 mark in the video, he’ll make you wince as he uses a screwdriver and hammer combo to smash another ’40’s vintage CRT just so he can show us it’s innards — the electron beam source and the horizontal and vertical deflection plates. The circuit is about as bare-bones as it can get. Besides the CRT, there are just three vacuum tubes. One is the rectifier for the power supply, a second one is used for the vertical amplifier while the third one is the free running horizontal sweep oscillator. There is no triggering option — you just adjust the sweep frequency via a potentiometer as best you can. It does have internal, external and line frequency function selection, but it still requires manual adjustment of the sweep oscillator. There’s no blanking signal either, so the return sweep is always clearly visible. This is evident from the horizontal burn mark on the phosphor of the CRT after decades of use. It’s amusing to see that the vertical position could be adjusted by moving a magnet attached to the side cover.

The Oscilloscope Museum website hosts the Instruction Manual for this model, as well as a sales brochure which makes for very interesting reading after viewing [Jack]’s video.

Thanks, [Itay], for the tip.

Filed under: hardware

Dummies Guide to Reverse Engineering

via hardware – Hackaday

[Juan Carlos Jiménez] has reverse engineered a router — specifically, a Huawei HG533. While that in itself may not sound substantial, what he has done is write a series of blog posts which can act as a great tutorial for anyone wanting to get started with sniffing hardware. Over the five part series, he walks through the details of identifying the hardware serial ports which open up the doors to the firmware and looking at what’s going on under the hood.

The first part deals with finding the one or several debug ports on the hardware and identifying the three important pins – Rx, Tx and GND. That’s when he shows novices his first trick – shining a flashlight from under the PCB to find the pins that have trace connections (most likely Rx and Tx), those that don’t have any connections (most likely CTS and DTR) and those that have connections to the copper pour planes (most likely VCC and GND). The Tx signal will be pulled up and transmitting data when the device is powered up, while the Rx signal will be floating, making it easy to identify them. Finding the Baud rate, though, will require either a logic analyser, or you’ll have to play a bit of a guessing game.

Once you have access to the serial port and know its baud rate, it’s time to hook it up to your computer and use any one of the several ways of looking at what’s coming out of there — minicom, PuTTY or TeraTerm, for example. With access to the devices CLI, and some luck with finding credentials to log in if required, things start getting interesting.

Over the next part, he discusses how to follow the data paths, in this case, looking at the SPI signals between the main processor and the flash memory, and explaining how to use the logic analyser effectively and decode the information it captures. Moving further, he shows how you can hook up a USB to SPI bridge, connect it to the flash memory, take a memory dump of the firmware and read the extracted data. He wraps it up by digging in to the firmware and trying to glean some useful information.

It’s a great series and the detailed analysis he does of this particular piece of hardware, along with providing a lot of general tips, makes it a perfect starting point for those who need some help when getting started on debugging hardware.

Thanks, [gnif] for posting this tip.


Filed under: hardware, how-to

Ikea Standing Desk Goes Dumb to Smart on LIN Bus

via hardware – Hackaday

IKEA’s products are known for their clean, Scandinavian design and low cost, but it is their DIY or “assemble it yourself” feature that probably makes them so popular with hackers. We seem to receive tips about IKEA hacks with a consistent regularity. [Robin Reiter] has a Bekant Sit/Stand motorized table with buttons to raise and lower the surface, but it doesn’t have any memory presets. That’s a shame because it requires a lot of fiddling with the up/down buttons to get it right every time. It would be nice to press a button, go grab a Coffee, and come back to find it adjusted at the desired height. With a little bit of hacking, he was able to not only add memory preset buttons, but also a USB interface for future computer control.

The existing hardware consists of a PIC16LF1938 micro-controller with two buttons for movement control and a LIN bus  protocol which communicates with the automotive grade motors with integrated encoders that report position values. After a bit of sniffing around with his oscilloscope and analyzer, he was able to figure out the control codes for the motor movements. For some strange reason, however, the LIN signals were inverted, so he had to introduce a transistor signal inverter between the PIC master and the Arduino Nano that would act as a slave LIN node. Software was made much easier thanks to an Arduino library developed by [Zapta] for the LIN Bus signal Injector, The controls now have four buttons — two to replicate the original up/down movements, and the other two to act as memory presets.

The code, schematic and a simple wiring layout are posted on Github, in case there are others out there who’d like to replicate this hack. Check out the video after the break where he gives a walk through the code.

Filed under: hardware, home hacks