Category Archives: mobile phones

How to build a solar panel charger with LiIon battery backup and USB output

Ah, solar power. The tingly feeling of getting free energy and saving the environment.

My HD2, the HTC phone/device I own at the moment, has its own reserve of four batteries to switch in case I need to make an intense use without a mains plug handy, yet I wasn’t satisfied as I didn’t have a renewable source of energy for charging it if those batteries died altogether, namely a decent solar panel; let’s face it, the solar chargers you see on eBay simply suck, they are built around teeny tiny solar cells capable of maybe 40mA @ 5V, and actually have an internal battery which does all the job, and that you’re supposed to charge at your mains at home before going out, because the builtin panel is going to take a couple of days in full sunlight to fill that battery, let alone being able to charge both backup battery, and phone battery, while you’re using your phone, which is actually the ideal usage scenario, as you’re going to need the backup battery when there is no sun, during the night.

My first attempt at building a solar charger was by using a 1W (5V@200mA) solar panel, that was exactly the same size of my HD2, but wasn’t enough in my opinion, since movie playback takes more than 200mA for itself, and there is nothing left to charge the phone. So I have that one set aside (and for sale, if you’re interested), but then I discovered this solar panel that outputs 700mA@5V, obviously bigger, but that is what I needed to playback movies, and at the same time charge both the phone battery and the charger internal backup battery.

So this page is a chronicle of my experience, and a DIY tutorial about building such contraption with the smallest expense possible.

First of all, the shopping list:

  1. Digital multimeter to check the project as it develops, to avoid discovering any mistakes when it’s too late
  2. Soldering iron
  3. Hot melt/hot glue gun, you wll be using at least a full stick of glue
  4. Solar panel (obviously), the bigger the better. You need a 5V model (higher voltage models are fine only if you add a voltage regulation circuit which I am not going to cover in here), and buy the one with the biggest current rating available, my 700mA one is pretty impressive in itself but you may be able to find better. You can go with lower output, but then it makes no sense to add a backup battery because it won’t be powerful enough to charge everything
  5. “Naked” female USB-A port, you can easily take it out off an old, not working motherboard, or hub
  6. Electrical wires, preferably in the standard colours red and black, but as you can see I used white and green since I only had those spare, as long as you remember which colour is which polarity (in my case, white is positive and green is negative)
  7. Two Schottky diodes (to stop the backwards flow of current to the solar panel and from the solar panel to the battery; you don’t need to buy them, just desolder off an old motherboard, an old phone charger, whatever
  8. A LiIon battery, my choice fell on a 18650 “Ultrafire” 3000mAh battery, but anything 3.7V with decent capacity is ok, really
  9. A protected charging circuit (a circuit that takes a variable voltage input and outputs static 4.2V, and has “flowback” protection, I got it by disassembling an OEM desktop charger for my old Nokia batteries); in alternative, just buy a “protected ultrafire”, costs more but delivers both things in less the hassle; in this case you will need just one diode.

Here is the step by step photoguide:

monocristalline solar panel 700mA 5V
This is the panel I bought, roughly 16x16cm, big, but a little powerhouse
18650 ultrafire 3000mAh
The Li-Ion battery I bought, it's a 18650 stylus battery, 3000mAh capacity, more than double of my own phone's battery
Li-Ion charging pretected circuit front
Front of the internal board I took off a desktop LiIon charger
rear liion protected charging circuit
The rear of the charging board, I soldered my own wires, I can still use the nokia small plug to power it; later I also soldered new wires for the battery output
female USB-A connector
The polarity of the USB-A connector; for it to be recognised as a charger, you need to short circuit the central pins, that are usually for data, by tinning them together
solar panel charger backup battery scheme
This is the sexy hand-drawn electrical scheme of the whole charger; after drawing it, I realized that the diode marked in red is not necessary, so I wasted one piece of electronics, no big deal; UPDATE: there is a diode coming out of the positive pole of the battery, this is to prevent direct-flow of current into the battery from the solar panel, so that the battery is charged only by the protection circuit. If you use instead a protected UltraFire, the battery will be directly in parallel to the panel, so you won't need any additional diode.
rear solar panel diode and female usb
This is the basic version of a solar charger, without battery backup system, it gives 5V output from the USB port blocking back flow of the current inside the solar panel with the diode
solar panel protection diode
You can see through the hot glue how the diode is soldered; it comes out of the positive pole of the panel, and the white stripe is located on the far side from the panel
two diodes on the solar panel
Here I added another diode thinking it was necessary for the back flow protection to the backup battery charging circuit (which happens if the battery poles go back into the power input of the charging circuit, in a failing attempt of the battery to charge itself); anyway, the first diode is enough to prevent it. The soldering stinks and I know it.
negative pole 18650 soldered
I was able to tin the wires to the negative pole of the ultrafire battery, it's not very solid but a little hot glue helped out
hot glue on 18650 negative pole
Here, a slab of hot melt glue on the negative pole, to keep the tinning in place and isolate it
spring for positive pole of 18650 battery
I literally wasted half an hour trying to tin the positive pole of the 18650, with no luck; in the end I devised this ugly spring, by attaching a small piece of metal to the wire...
18650 positive pole with spring attached
...and then applying it against the positive pole and keeping it there with hot melt glue... it worked!
solar panel charge with battery backup rear
After sticking all the components to the rear of the panel (I used more than a stick of melt glue) this is how it looked like
solar panel charger front look
This is how it looks from the front... nothing different, you can barely see the led and usb port on top
detail charging led and usb port solar panel charger
This is a close detail of the area where the charging led and USB port lie
solar panel charger with backup battery in action
This is the reward for the hard work: solar panel at sunlight (not direct sunlight but enough); you see the detail of both the charging led being lit green (which means the charging circuit is powered by the solar panel, and the backup battery is fully charged, otherwise while charging, it would be lit red), and the HTC HD2 with the lit orange charging led

UPDATE (9/29/11): several visitors asked me how to change the procedure in order to build a vanilla solar chager with no backup battery; easily done: take the circuitry scheme above, ideally remove the part regarding the battery, the charging control PCB, and the cables coming and going to these, and you’re set.

UPDATE (11/4/11): mpigio in the comments pointed out a serious flaw in the electrical scheme: the protection circuit was useless, since the battery was directly in parallel with the solar panel; I just added a diode coming out of the battery, so this is finally safe.
On a side note, as other pointed out in the comments, instead of digging for a recharging protection, you may just buy a protected 18650, that is a battery that has its own integrated protection circuit.

UPDATE (11/9/11): adding here something I needed to clarify in the comments more than once. Obviously, with no sun whatsoever, it’s the backup battery that gives the output voltage: this will not be 5V like a normal USB port, but at max 4.2V, and down to 3.7V or even less. Now, most devices should still consider this as a valid charging voltage (my HD2 did) even if for technical reasons they won’t charge up to 100%, but someone in the comments reported about it not being enough for a GPS navigator, which didn’t consider enough even the 4.8V that four 1.2V AA rechargeable batteries in series gave; in this cases it’s needed a voltage regulator (of the “boost” or “step-up” kind) that can take lower, variable voltages and always outputs 5V, so you can connect it to the USB port. This component should be safe to be the last and only one connected to the USB port, so that both solar panel and backup battery converge into it, and only a regulated, constant 5V output is given from the port.


With this setup you can charge anything which has a USB charging cable, be it iphone, ipod, ipad, mp3 player, every htc phone… you can even attach a USB hub to it if the panel is powerful enough, and charge more than one device at the same time!

Since the desktop charger had its own charging plug, I can use a standard Nokia charger to charge the backup battery.

Dual sim mod for HD2, how-to, and disable auto connection setup

HD2, great phone, really. Shame it’s not dualsim, and no wonder there are people wanting to make it work with two different mobile numbers. Same thing did I, and this guide is to recount my findings, especially thanks to the italian member mannyy at XDA forums.

First things first: do NOT buy the insanely expensive adapters you find on the internet, it would be plain stupid to spend 70 euro on a little piece of plastic, when a full-fledged dual sim chinaphone with TV, radio, camera and bluetooth costs less than that.

There are two kind of dual-sim adapters on the market, no matter the brand, the “cutting” and “no cutting” versions, where either you have to cut the chip out of the SIMs to insert the in a single adapter, or you plug both integer SIMs into a bigger one without having to cut anything. The adapter I bought off ebay (the auction has been cancelled in the meantime, but you can find it from chinese shops on the internet) is the Magicsim “iphone 3g dualsim” no cutting, but I also own a Magicsim 23th-A cutting, which I have been told by mannyy at XDA that works correctly on the HD2 as well; the 26th should work as well.

magicsim 26th
This is the MagicSim iphone 3G dualsim; I spent 8USD something on it, including shipping from China
magicsim 26th hd2
Peeled off the cover from the adhesive strip, adapted both SIMs, this is how the MagicSim fits into the HD2
HD2 back metal cover
Interior of the metal back cover of the HD2; I marked the areas where the second SIM, and the chip, overlap the embossed metal frame, hence you cannot close the cover; you will need a diamond bur mounted on a dremel, or equivalent, to drill out those parts of the frame

As you can see, I didn’t actually drill the cover interior… in fact, in the end I avoided using the dual sim adapter at all, because I use my “SIM1” for my job, and since it goes offline when I switch to the other SIM, I’d rather not lose important work calls while I’m doing personal calls, this is why for the time being I will keep using a second phone for that.

Now, onto the operational part.

dualsim hd2 menu1
Main menu of the dual sim adapter; just tap on either SIM1 or SIM2 to switch between them; the one with the asterisk is the currently active card
Dualsim hd2 menu 2
This is the second level menu under "Dual mode"; make sure you have "STK mode" selected and DO NOT activate 007 mode

WARNING: DO NOT select 007 mode from the Dual Mode menu!!
007 mode is very useful in those phones that support it, since it doesn’t replace the SIM card menu, and you can switch between the SIMs by dialing either 001 or 002 and then hanging up, which is undoubtedly faster than going everytime in the menu; to disable 007 mode, you’d have to dial 007 and then hand up, and the STK menu will be back. Yet, the HD2 does NOT support 007 mode, you will get stuck into it and will not be able to disable it nor switch between SIM cards, so if you are silly enough to activate it even after reading this, there’s a way that worked for me: put the adapter inside another phone, and try disabling it by dialing 007, calling and then immediately hanging up. For me it didn’t work with a Nokia 3310, but it worked with a Nokia 7210, so I could disable it succesfully. I also wrote a mail to MagicSim support, and Cindy from their support (I always wonder why chinese people working in helpdesks always have american names) sent me a documentation doc, which says to create a new contact in your phonebook, called 007 and with number 007, and then save it to SIM memory (not phone memory), and it should switch off 007 mode and go back to STK mode.
Another method contained in that DOC file, was to switch from 3g mode to GSM mode in the phone settings, and reboot the phone, then the STK menu should reappear… but in my case, I already had 3g disabled.

Dualsim hd2 menu 3
Make sure that "Not connected" under "NO. Hide" is disabled, like this

Another detail to keep in mind: I do not have any data plans on my phone, so I have 3g disabled, to save battery, hence what I’m going to say could change for those with 3g enabled. Under the “NO. Hide” menu, make sure it says “Not Connected”, instead of “*Not Conneted” (in other words, there must be no asterisk). If I enable that (asterisk shows), when I switch between the cards, the phone sayd there is no SIM card, and cannot complete the switch, and I have either to reboot the phone, or activate and deactivate “Airplane mode” to reboot just the radio. If instead I have no asterisk under this option, the switch between SIM cards completes succesfully in about 30 seconds.

Disable Automatic connection network setup

Now, the next worst problem I faced, is that whenever I switched SIMs, the phone automatically started the network connection setup with my mobile carrier; I do not have any data plans, so if the phone has the ability to connect to the internet via the SIM, it means I waste a lot of money, so what I did before, once per ROM flash, was to wait that the connection setup finished, then go into:
Manila settings > Wireless > Menu > Connections > Advanced tab > Network selection
and from there make sure that both entries read “Office network”, that way the Edge/3g connection of the SIM card is never used and I don’t waste money.

Yet, when you continually switch between the cards inside the dualsim adapter, the auto connection setup always kicks in, and other than a bother to the eye, it also compells you to go into that wireless settings loop each time to select “Office network”. Not feasible. You need a way to disable altogether the network setup wizard.

EDIT (28th Sept 2010): you can ignore the last paragraph of this guide, I was overdoing it; member xlr8me at XDA found the “easy” way: from Manila settings, open the Communications Manager, then Data Connection, and from the menu button untick the “auto-configuration” line.

The app that configures the network is /Windows/ConnectionSetupAuto.exe, which you cannot delete/rename, because it is in the ROM, so unless you want to cook it out of the ROM yourself, all you need to do is make sure nothing runs that exe, no matter what. A quick repulisti of the registry did this for me: I used DotFred’s Advanced Task Manager registry editor, searched the WHOLE registry for values containing the string connectionsetupauto and made sure to delete whatever upper folder contained a key with a value matching that search, TOGETHER with the other keys contained in that upper folder; quite harsh I agree, but it worked for me, so I am not going back. Another more conservative way would be to manually change the paths inside the keys pointing to that exe file, by adding, for example, .off at the end, but as I didn’t test it, I cannot really guarantee it will work.

  This article has been Digiproved

Guide for HTC HD2 full two-way in-call recording

I am not going to argue with you regarding the reasons you may want to record your incoming or outgoing calls, nor how it is illegal or only partially legal in some countries.
There are a couple of issues with full duplex phonecall recording on the untouched HD2:

  1. the other person’s voice is very faint and totally unhearable when speaking in loud environments
  2. the recording stops after a minute or so, and longer phonecalls are cut after that delay

The reasons for this are

  1. the sound for the third party is not recorded directly, but only what comes from the speaker through to the mic is hearable
  2. the device enters a sleep mode after a certain delay when in a phonecall, so anything which is not radio related is shut down

The main concern until a while ago was the first problem, the second being addressed by a pre-existing  registry hack by I don’t really know who (I’d be happy to credit them, but XDA member shinoby_uk only released a CAB of those pre-esisting hacks, so he is not the real author); this neverending issue (which in time led some people to think that it was a hardware limitation, while I’ve always believed in the hidden software switch) has been solved (according to the XDA member who published the solution) by member RekGRpth; the existing registry hacks that were released by XDA member mskip (if I am not wrong) and worked for previous HTC models, are still needed, even if are not sufficient by themselves to enable full recording.

So here is the complete list of registry keys to add/modify in order to enable full 2way incall recording on the HD2:

[HKLM > Drivers > BuiltIn > WaveDev]

[HKLM > Drivers > BuiltIn > RIL]

[HKCU > ControlPanel > Phone]

[HKCU > ControlPanel > BackLight]

[HKLM > System > AudioRecording]

[HKLM > Software > Microsoft > Voice]

Once you have done so, you are still not done, as you will need a program to actually record the calls; the one I use is the simple but deadly efficient ACR by XDA member slothie.

  This article has been Digiproved

Windows Mobile uptime since boot or battery swap, registry key

I am (at the date of writing) the proud owner of an HD2; given its limited 1200 something mAh battery, and my precaution of always having a spare battery for each of my devices (even if now, with the HD2, I got rid in one swoop of mobile phone, PDA, compact camera and bluetooth gps receiver, and this is pretty much my only device, excluding my DSLR which I rarely bring with me), I went a little overboard and bought three spare batteries, which I charge with a mains charger and then swap out periodically.

Just now I became curious to check the uptime before the battery reaches 10% (at which point I take it out for charging), because I never really remember how long it has been since the last battery swap.

I dug a little, and the registry key that stores the uptime since last boot is

HKLM > System > Uptime > Clock

while the uptime since last battery swap (appears to become 0 when you take out the battery, and is not reset after a simple reboot) is

HKLM > System > Uptime > ClockSession

These keys contain a time interval expressed in seconds. Divide it by 60 twice, and by 24 once, and you get the uptime in days (and fraction of day). They have been verified under WM 6.5.X, yet there is no reason they shouldn’t work in not-so-older builds of  Windows Mobile too.

  This article has been Digiproved

How to compose ringtones for Nokia mobile phones composer, using MIDIs

After making a deal with my father, that is exchanging my brand new Philips Fisio 311 (he gave it to me after receiving it as a gift) for his second-hand Nokia 3310 (which keeps the battery load only for 3 idle days…), I threw myself into high-end customization.

First things came first, but then I could spend some time working on ringtones: all I dreamt was to have the Monkey Island most famous themes to play on my cellphone.

This guide is thought for the ones who have MIDI files of their favourite songs and want to "translate" them to ringtones, and is made referring to some useful tools I found on the net. The downloadable ZIP containing them (Nokia Ringtone Kit), along with the tones I made myself, can be found in the Downloads/AudioVideo page.

RTTTL (simply referred to as "RTTL") stands for RingTone Text Transfer Language and is the standard text format describing notes on the cellphones, so, at least until the last passage, this guide can be used for every kind of phone supporting this standard, the only difference being that you will need to find yourself the keys to write notes, as the program I included in the package converts notes to keypresses just for Nokia phones.

First step, find a MIDI file that suits you:

These are two of the files I used to create ringtones


Then copy them in your working folder, possibly changing the name to easier ones, like "intro.mid" and "ghost.mid" for the example, and finally start MIDI2Tone (tonewin.exe) opening one file and playing it.

Once opened the file, you must find the channel which plays the melody.


Use the selector in the upper-right corner to change the channel, until you see the note frequency in the black window follows the beat and the frequency of the main melody. After that, press the Note View button:

Here you see where the notes are relatively to the Nokia reproducible octaves (notes are red because they have been selected).


Drag a rectangle around the whole set of notes forming the melody (selected notes become red), and after right clicking choose "Listen". You may get an error here. If you don’t, jump the paragraph regarding MIDI Transpose. The Nokia 3210, same for 3310 (don’t know about the others, but should be the same) supports only 3 octaves, while the standard RTTL reads 4 octaves. When you press Listen, if some of the notes fall outside the octave range of the phone you’ll get an error:

One of the selected (red) notes falls outside the correct range.


This means that you need to adjust the melody to fit available octaves by shifting the notes of the MIDI up or down according to the number of halftones you specify. Roughly, if you don’t know what I am talking about, take a look at the screenshot of MIDI2Tone Note View: it will drag up or down the red signs to make all of them be inside the yellow area. Supposedly, then, we need to bring them down. Let’s say 7 halftones down are sufficient. We uncompress MIDI Transpose (let’s do it in the same folder where the MIDI and TXT files are) and go to the command prompt (Start > Run > Command inside Win98/Me or Start > Run > cmd inside Win2k/XP), change to the directory containing the miditran.exe file, and do the following (supposing our file is named ghost.mid):

The sintax of miditran.exe is the following (for our purposes):
miditran -notes <+/- halftones (up or down)> <originalfile>.mid <newfile>.mid


The GHOSTDOWN.MID file will now be down 7 halftones.

Now if the original MIDI was OK, or you just fixed it into the new MIDI, open it inside MIDI2Tone and do the same of above:

Now all the notes fall inside the yellow area, as they should.
Here you can see how many notes contains the melody after right-clicking and pressing "Listen"


You can’t have more than 50 notes (pauses included) in a ringtone. MIDI2Tone does the dirty job for you and removes pauses, prolonging previous beats to save space, but if after this you still have more than 50 notes, you need to reduce the selected notes by right clicking and chosing "Clear", and then again selecting the last notes to remove, untill the "Listen" dialog shows 50 notes or less. When you are happy of the results, right click in the Note View and choose "Save as nokring" (choose a name with a TXT extension).

In the package is included also WBeep, a DOS utility. Extract it in the same folder of the TXT, and in Windows Explorer drag and drop the TXT on the EXE file. It will playback the tone with the PC Speaker giving a fast preview.

After that start the Nokring RTTL to Nokia Converter and load the TXT you saved from inside MIDI2Tone. Important: MIDI2Tone gets exclusive usage of the MIDI device even if it’s not playing anything, so you need to close MIDI2Tone to hear audio from Nokring Converter.

The RTTL txt file once imported in Nokring Converter and converted to keypresses.


Select the options of Nokring Converter as in figure, and press the button Get… to browse to the txt file saved from MIDI2Tone (or use one of the RTTL files I included in the ZIP). Choosing to view the keypresses, you’ll see what keys you need to type in the Nokia composer to write the notes.

Et voilà medames et monsieurs
or whataver, I didn’t study french