FAIL of the day #1: Repair of NiMH charger

2014-01-01_16-25-22

When buying some GP branded NiMH rechargeable batteries about a year ago, a “GP PowerBank Travel” charger (model GPPB03GS) was included as a promotion. It’s a nice little charger that runs both off 220 V and 12 V (for use in car, I presume). It can charge 1-4 AA batteries, or 1-2 AAA batteries, with additional trickle charging after full capacity has been reached.

The charger worked well for some months, but one day after charging some batteries overnight the LED blinked red, and when removing the batteries it was clear something had gone wrong. See the melted plastic? Not good.

As this was very much an el-cheapo charger, one should probably not expect much from it. But I was still curious about how the 220V was brought down to more useful voltage levels, and if the internals would live up to safety standards. I was actually quite surprised at how complex and well designed the internals were:

Looking closer, there are three distinct parts of the PCB:

– 220V section, which is shielded with plastic blast shields towards rest of the electronics – nice! This is a classic Switched Mode Power Supply (=SMPS), with an optocoupler feedback loop. Looks like a SMD type TL431 voltage reference – very common in SMPS designs.

– 12V section, with some protection diodes, filter caps etc – but no other major components.

– Charger circuit, using an unknown controller IC. The markings have been shaved off. I just don’t understand why they go through the trouble of doing that… It’s not like this is some super classified product where the design should be kept secret at any cost.

A closer look at the components and PCB around where the plastic had melted does not give any clues of what has gone wrong – in fact nothing visible anywhere on the PCB indicates a catastrophic failure of the charger.

Bringing out the multimeter and measuring the output from both SMPS and 12V section shows that those voltages are all good – most likely the problem is instead in the unknown charging controller IC, or possibly some of the tiny SMD FETs, diodes etc that complement the charging IC.

So… given that this kind of charger cost next to nothing these days, I’ll leave it for dead for now. The SMPS works as it should, so maybe that part can be reused in some other project – I’ll stash it in the “possible-future-use” parts bin.

JBC CD-2BC soldering station unboxing

Got a new toy the other day…

After using the same ERSA MS 6000 soldering station for the past 20 (!) years or so, it was time to upgrade. Nothing wrong with the old one really, except that it was hard to get new tips and that heating it up took a minute or two.

Getting a Chinese rip-off from eBay would be easy, but if the next soldering station would also last 20 years, why not get something slightly better?

JBC has a good reputation and seemed to have good value for money. So – here are some pics from the unboxing. Enjoy!

Two dollar variable fan controller

Well – given current exchange rate, AU 2.59 = USD 2.33.. So it’s not quite a two dollar product, but pretty close. And “2.33 dollar fan controller” did not make for a nice subject line…

After the earlier post about variable 12V fan controllers, it might be worth looking at what is available on Ebay. Turns out you can get a variable controller delivered anywhere in the world for USD 2.33 – pretty amazing! It looks deceivingly like the Zalman Fan Mate 2 too:

Zalman Fan Mate 2 (left, USD 7) and eBay ditto (right, USD 2.3)
Zalman Fan Mate 2 (left, USD 7) and eBay ditto (right, USD 2.3)

The eBay controller only has one 3-pin male connector (where the fan connects), and then a soldered in wire with a 3-pin female connector, for attaching to the PC or other equipment.

The Zalman on the other hand has a 6-pin male connector on one end, a special Y-cable (it comes with the Fan Mate 2) is then needed to hook up the controller to fan and PC. Both variants of course work, the Zalman approach is maybe slightly better, as it allows the controller to be mounted closer to an inside corner, without the cables being in the way. Not a major difference though.

Looking inside the eBay controller, it is obviously different from the Zalman. For starters, it has a NEC B772 P PNP medium effect transistor in there, rather than a voltage regulator. I could not find a datasheet for that particular NEC device, but I am pretty sure it is more or less identical to ST’s 2SB772.

There is also a TL431 adjustable voltage regulator in there, together with a second SOT23 transistor market J6, it might be a S9014 NPN transistor (or equivalent).

So, in essence the eBay controller is also a linear regulator, but based off an adjustable regulator (rather than the fixed-voltage 7805 that the Zalman uses), with an extra power transistor to boost current. The extra transistor is needed, as the TL431 can only sink 100 mA on its own.

All good so far. But when reverse engineering the eBay controller, the schematic just doesn’t add up. Below is what the eBay controller looks like, with the above assumptions on components – and this is not a working circuit, as far as I can tell (or is it? Feel free to add your expertise in the comments!).

eBay variable fan controller - except that the circuit is a bit weird.. Need to re-check those PCB traces!
eBay variable fan controller – except that the circuit is a bit weird.. Need to re-check those PCB traces!

So…. either I made incorrect assumptions regarding what SMD components are used in the eBay controller, or I just didn’t check closely enough how the PCB traces were connected. Time to bring out the multimeter to check those traces – more to come on this topic.

Fritzing vs circuits.io vs Eagle – comparing schematics editors

During the recent work on the one dollar variable fan controller, I looked into options for documenting the work.

I have never really used CadSoft Eagle enough to get comfortable with it, and whenever I used it it seemed to be overkill for what I wanted to do. Still, it is usually still seen as the best software for this kind of work.

But maybe there are other options.. In particular I thought the more basic editors sounded promising – let’s give them a try. Disclaimer: Nothing near a full review was made of the different services. The verdicts below are instead based on 15-20 minutes use of each service, and no reading of any manuals or help pages.

Circuits.io

This would be the new kid on the block. Mix schematic editor with GitHub and you get something like Circuits.io. You can follow circuits created by other people, fork your own variants of other people’s circuits etc. Very nice concept, but it also seemed to have a lot of limitations..

circuits.io one dollar fancontroller
Circuits.io used to create a one dollar variable fan controller

For example, I failed mirroring the 7805 in the circuit to the right. Having the output to the left feels very awkward.. I am sure there are ways around it, but even though I really searched for it, I also failed to find a traditional 7805 symbol such as the one in the second image, and was left with the one used in the top schematic. Fail.

Traditional 7805 symbol
Traditional 7805 symbol

There for sure are nice things about circuits.io though. Having an entirely browser based editor is a very nice concept. It might be too early days for it now, but good things come to those who wait… I also liked the feature where you, given a PCB board design, can get files for 3D printing or milling a custom case for your board. Nice!

The fan controller project can be found at http://www.circuits.io/circuits/4841. Go fork it!

Fritzing

This is also a pretty new project, with a lot of promise. It is obviously geared towards hobbyists that might not have a ton of experience in electronics design, but it is still kind of nice.

One dollar variable fan controller, using Fritzing
One dollar variable fan controller, using Fritzing

With a slogan of “from prototype to product” it is clear that the Fritzing team is trying to cover it all. Not sure I would want to go this route with a full project though – I always get suspicious about software that offer a link to some third party service (in this case for manufacturing of PCBs). It probably works perfectly fine – I just feel left without the control I want to have.

Breadboard view in Fritzing
Breadboard view in Fritzing

The schematics editor is nice (better than circuits.io), and I even like the slightly silly feature where you can get a breadboard view of the circuit. Probably not a bit useful for an experienced electronics hacker, but still kind of cute.

The fan controller project can be found at http://fritzing.org/projects/one-dollar-variable-fan-regulator

Eagle

CadSoft Eagle is a professional schematics editor and PCB layout tool. The free version does have some limitations (PCB size and # layers, among others), but they are pretty generous and won’t cause any problems for most hobbyist projects.

The UI feels a bit dated, to be honest. But also quite efficient, given the vast number of components available. Seems lots of people also create their own Eagle libraries with various components, so there is a good chance you can find, download, install and use existing libraries. Otherwise it’s not too hard to create your own, half an hour of fiddling around with libraries left me with a working one. Nice!

Of the three tools Eagle is by far the best, even when considering the somewhat steep learning curve. Give it an hour and you will be able to create fairly complex circuits. PCB layout is still a bit of an art, no matter what product you use – you just have to learn as you go along, and from mistakes. Eagle does have some nice tools for eliminating the most obvious errors though – once again, nice.

All in all, going forward Eagle will (still) be the preferred solution around here.

One dollar variable fan controller

2013-08-09_22-06-40_copyWhile trying out various computer and network gear, I quite often find the fans too loud. They are of course there for a good reason, but experience tells that the device usually works just fine with less cooling. Best case one or more fans can be removed altogether, even though that is typically not recommended. They are of course put there for a good reason..

Anyway, I have repeatedly found myself looking for an easy solution to control the speed of regular 12V fans. Something that is just plug-and-play. Ideally also cheap or even free.

Going through a 7805 data sheet for other reasons, I suddenly realised that a 7805 set up in variable voltage configuration (figure 4 in the data sheet) should work great as a fan controller. These 12V fans usually run just fine down to 5-6 volts, but at lower rpms, and thus quieter. Just what was needed!

The circuit is quite basic:

7805 based variable fan controller
7805 based variable fan controller

The circuit is pretty clever – by shifting the ground to a higher level than the common ground/0V level, we get the voltage regulator to output between ca 6V and 10.5V. The component values were ones I had in my junk box, making a point of only using scavenged parts (don’t forget a heat sink for the 7805!) plus a little piece of strip board, the cost for me was actually zero. Nice!

A possible drawback of the design is the fact that a linear regulator like the 7805 will get rid of all (well… most anyway) excess energy as heat. A proper heat sink is thus definitely needed. An option would be to use some kind of low drop-out voltage controller (to get the upper limit closer to 12V), but it would have the same issue with heat dissipation. A better/easiesr option is probably to use one of the many PWM fan controller ICs available (here is Maxim’s list, there are plenty others too), it deals with at least some of the heat waste issues. You might be able to get some free samples too if you just want to play around with them. Most of them are not too expensive though.

All working well thus, and the story could have ended there.. However, a week or two later i was pulling apart an old PC when I found a couple of Zalman Fanmate 2 controllers… Too much of a coincidence not to see what made them tick.

Zalman Fan Mate 2, variable fan controller
Zalman Fan Mate 2, variable fan controller

After pulling one apart it turns out it is using exactly the same circuit as above! They did go a bit cheap and skipped the smoothing caps though, seems to work fine anyway – the fans won’t care much about some noise on their power line.

Also, the heat sink seems quite small and the controller is only specced to 6W, which is half of what the 7805 should be able to handle (it can handle 1A, so 1A*12V = 12W max power, with a proper heat sink).

Interestingly enough the Zalman controller costs ca USD 7 – not a huge amount of money, but one dollar to buy the components of your own (or even zero!) is a lot better..

Some additional shots of the Zalman controller:

TI LaunchPad Stellaris and Anaren CC2530 Zigbee BoosterPack kit

I recently got the chance to evaluate the Anaren AIR CC2530 BoosterPack Kit, which is a ZigBee eval platform for TI’s LaunchPad products, i.e MSP430 and Stellaris.
Kudos to the good folks at element14 for providing the kit as part of their RoadTest program.

The review is found at element14’s site, but also here for completeness. I will also post further developments using the kit here on the blog, as described in the review I have some ideas around a cat-detector… So many projects, so little time.

The review follows below.
Continue reading “TI LaunchPad Stellaris and Anaren CC2530 Zigbee BoosterPack kit”

Superprobe meets vintage multimeter

One of the first tools I built myself many, many (decades!) years ago was a logic probe. At the time things like yellow LEDs were still a bit rare and cool, but this baby had both red, yellow and green LEDs to indicate TTL logic levels. It was a true rat’s nest of wires – and everything stuffed into one of those plastic cases for one-time travel toothbrush that you (used to) get at some hotels. A stiff copper wire was glued to one end of the case. Ugly as h-ll, but it worked quite nicely.

Years have passed, and I actually found that probe a year or so ago. It still worked, but with access to things like multi-channel logic analysers and digital storage oscilloscopes, that probe was sent to rest at the place where electronics never return from.

Still, the basic concept of a logic probe IS kind of nice. And as some people have taken this concept and extended it to include a bunch of other tools in the same circuit, I thought I’d spend some time building a new probe.

It’s really just a Superprobe in a somewhat unique (probably not, but I like the concept..) case. The Superprobe exists in various flavours, the ones I’ve liked best so far are the original onethe MKII one, and the one from Dangerous Prototypes.  The one I built is a mashup of the three, dropping the voltage reg (as I feed my probe from a USB cable, which provide a stable +5V that the PIC can use. Adding programming headers á la the DP probe was a must-have. But dropping the display resistors, seems to work just fine without them.

The project really kicked off when I was cleaning out some boxes of old stuff, and found the first digital multimeter I ever bought, probably around 1985 or so. It is a total piece of junk, was probably the same back then, but still expensive at the time. Interestingly enough, the main ADC chip of the DMM was a MAX131CPL – which is still available for purchase today!!

Off to work then.
After ripping apart the DMM and stripping away all components, LCD, daughter boards etc (all through-hole components, of course. This is pre-SMD times.) I was left with some space in the DMM that should nicely handle the Superprobe circuitry. It might even be possible to squeeze a Dangerous Prototypes Part Ninja in there, and then multiplex the display between the two tools… Nah, one thing at a time, I’d rather finish the probe first.

It all comes together quite nicely, with a mini USB jack providing power to the probe, the probe’s two push buttons are hot glued to the upper left/right sides of the case, making it easy to operate them both when the meter is on a table, and when it’s held in hand (in that caseit’s actually possible to operate the whole probe with a single hand, using thumb and index finger, while the probe rests in the palm. Nice!).
The input jacks from the original DMM are re-used and soldered to the input and Gnd of the probe, with one of the original mechanical range switches wired as on/off for the probe.

Works like a charm, the pictures below show the probe while in use.
Only one small glitch, not sure what’s going on. When the probe is turned off, it needs a minute or two before it agrees to turn on again. Some capacitor that need time to discharge, I guess. Thinking about adding a reset button.. should be an easy thing to add, just hooking pin 1 to ground through a small push button.

All in all – nice little project that is likely to be quite useful up ahead.

Reverse engineering Macbook Air FaceTime camera, part 1

A severely cracked 13″ Macbook Air display came my way some time back. The LCD panel was obviously damaged, but it would be interesting to see what makes such a great display tick, and maybe parts of it could still be used? I believe the display came from a Late 2010 Macbook Air (which would indicate an A1369 type construction), but can’t be sure. Anyway – ideas included

  • Keeping the back lighting (assuming it works) and camera, mounting the whole display on a flexible arm next to the work bench. Given the high intensity of the back lighting, it could then (maybe) provide ambient lighting AND video recording of whatever was being worked on. Maybe with a LED light and camera on a separate flexible arms.
  • If the LED backlighting drivers were toast, there should still be some nice white LEDs in there for scavenging.
  • Same thing for the camera, I believe it to be a 640×480 pixel device, nothing too exiting but could still be useful.

Turns out it’s not entirely easy to disassemble these displays. They are sealed together with very strong tape. Heating the bezel helps a lot, but it’s still a fair amount of work – and given the delicate components beneath the bezel, you might want to think twice before doing this on a laptop you care about.. Some good instructions found here, btw. Results so far:

2013-02-19_10-41-22_smallPrying the bezel open…

…before applying heat with a hot-air SMD rework station (regular heat gun would probably also work, if you are careful):
2013-02-19_10-44-38_small

Voila! Bezel is free:
2013-02-19_10-56-14_small

Now the tricky part. The cable from the cable is a thin wire with some kind of textile cover, for strengths I assume. It goes through the hinges and there is no way (as far as I can tell) to get the cable through there, without cutting off the (very small) connector that normally connects to the computers Left I/O (a.k.a. LIO) board. Cut.

Now the whole camera assembly can be removed. It also includes the ambient light sensor, which communicates over I2C. Unknown protocol for that one though – one for the future to investigate..

2013-02-23_22-55-38_small
Very tiny 6-pin connector, normally going to the LIO board.
2013-02-19_13-11-34_smallCamera module exposed in the top part of the screen. Held in place with 2 small screws.


2013-02-23_22-32-08_smallCamera board. 

2013-02-19_13-17-59_smallThese things are small – fingers included for scale reference.

With six wires in the cable it’s pretty clear that 4 are for USB (+5V, Gnd, Data+, Data-) and 2 for I2C. That cable is however crazy small – it’s about 2 mm diameter. Once the outer layer is off, you see 6 even thinner cables. 2 are black, 4 transparent. Which ones are which?

Google is your friend. Turns out there are schematics to be found if you Google long enough. Turns out you need schematics for the LIO board though, in order to get the pinout of the camera/ALS cable, and it’s nowhere to be found for the A1369. Did find a schematic for the A1370 model though (same computer but 11″ screen), with a bit of luck that cable is the same between models.

The 2 black ones are prime candidates for +5V and Gnd. Cutting away the insulation revealed that the cables are shielded, with a center wire that is barely visible to the eye. It took several attempts before I had separated the wires from the sheilding, and then done the same with the other 4 wires. Soldering these onto an old USB cable was then easy (but ugly!!):

2013-02-28_14-09-48_small

Still, it doesn’t work. The camera is not recognised on an iMac with latest OSX, nor on a Windows 8 laptop. Happened to have a Raspberry Pi lying on the work bench, tried it too with same result: nothing.

But wait… doing a “tail -f /var/log/messages” on the RPi showed that it DID recognise the camera, but that the camera wanted more power than a non-powered USB hub could provide! Placing the camera into the RPi’s regular USB port made it appear nicely when doing a “lsusb” command.

Still, it didn’t work when I connected the camera to the Windows or iMac machines – strange.

Also, the RPi loose contact with the camera after a while – no idea why. Could maybe be a bad USB cable (it’s from an old mouse using USB 1.1 – maybe that’s a problem??), or is there too much noise introduced by the ugly splicing of cables that I’ve done? No idea… More investigation needed. Anyway, the camera enumerates with USB id 05ac:850a, which indeed is an Apple FaceTime camera – nice!