Wireless Power Transmission

Reading Time: 3 minutes

wpt1In this quickly growing world of technology, people have become so addicted to smartphones, tablets, iPods and this entire virtual online world that they sometimes don’t even realize that they exist in a real world. Since these device don’t work on food and water there comes this huge issue of giving power to these devices and thus comes the term charging of the batteries present in these devices and as soon as the word charging comes our head becomes full of tangled wires. So to deal with this, now scientists have developed a new technology for wireless transmission of power. It basically works on a concept called RESONANT INDUCTIVE COUPLING. This concept is very easy to understand so please don’t be scared and astonished by hearing such a complicated term. Actually to understand this concept you only need your 12th std physics. So there are basically three words ‘resonant’, ‘inductive’ & ‘coupling’. Let us revise the meanings of these words in context of physics.

Firstly resonance, in simple words resonance happens when the amplitude of a wave (in this case an electrical signal) maximizes at a certain frequency. In our case this is important as we want to ensure maximum electrical power transfer.

Now electromagnetic induction, in our case we are talking about mutual inductance which in short is just induction of voltage or an emf in a coil when a variable current carrying coil is kept in its vicinity.(of course lesser the distance higher the induction)

Last but not the least coupling is just used as both the coils are electrically coupled (not physically).

So now if you take all these three things together in your mind as one joint concept then I believe your previous review of the term being complicated will change a bit.      circuit connections for wpt actual wpt apparatus

Hence by this I guess you can easily understand how power can be transmitted wirelessly and so nowadays whatever wireless chargers you see simply just consist of two coils one is the transmitter and the other one is the receiver. High frequency (resonant frequency) signals are first generated before the transmitter and then after the receiver receives the signal, the signal is rectified to whatever DC output is required for the device.(high frequencies are used so as to decrease the losses through the air i.e to decrease the leakage flux)

There are a lot of advantages as we can see there is no need to deal with the long and tangled wires, and we don’t even have to stay very close to our power sockets.

One more big benefit is that we can simultaneously charge one or more devices with just one setup as you can see in the figure beside-multiple devices charging

But on the downside there is also a fact that we have to make a great sacrifice on efficiency as we increase the distance between the two coils the leakage flux through the air increases which in turn decreases the power transferred. Another problem is the range of the distance at which the two coils are kept because after some distance there will be no power transmission but for that a solution that is being proposed is that we create a network of all the transmitter coils at suitable distances so that the receiver can receive power suitably from all the coils.

Also there are alternate options available other than resonant inductive coupling like Conductive Connections, Radio Transmissions and Wi-Fi.



Reading Time: 5 minutes

As you people are wondering how even scientists have named this phenomenon in such an interesting way. In this project I’m going to tell you what a Joule Thief Circuit is how easily it can be made and also a bit of how it works. Coming back to the name ‘Joule Thief’ actually signifies that we are going to steal something and that is power. This power is said to be stolen as we are going to extract it from dead pencil cell (AA) batteries. Actually it isn’t theft because these batteries that we feel have gone dead are never completely exhausted, there’s always some residual power left inside them after our usage and this is power is sufficient to run a Joule Thief Circuit.

Now regarding the construction of this circuit, it is very easy to make and can be made with a few basic components. The main components are transistor (2N4401, BC337, 2N3904), LED, Toroid Bead (ferrite core), Thin wire (it should be insulated as found in a motor) and of course dead 1.5V AA type pencil cell that you use daily. Amongst these components the one that is truly tough to find is a toroid bead. You can get it in an electrical equipment store or else you can find it in an old CFL. But take care while removing it from the CFL because you will have to open the entire CFL and you might break the glass. So after opening the CFL there will be a PCB on which you may find your toroid bead. Also another option is that you can take it out from an old motherboard of a PC. It is actually a hollow cylindrical bead made up of magnetic material (test it with a magnet), so that it can act as a core for the inductor that we are going to make for this circuit. The circuit connections are given below:

joule thief circuit connections

The process of making this mainly consists of soldering all the parts according to the circuit diagram given and winding the toroid bead with the thin insulated wire.

For the detailed information regarding how to make it you can go to this link:


So if you have made it then you’ll be able to see how nicely a dead battery can make the LED glow so bright. But our journey doesn’t end here since we have to know what wonders are actually taking place inside this small piece of circuitry. Just for finding things out, I had actually taken an LED that turns ON at a minimum voltage of 3V. This means that no matter even if I try to directly connect the LED to a brand new 1.5V pencil cell, then also the LED won’t glow (and believe me I did try connecting the LED to a new cell and it didn’t glow even a bit). Only if you would connect two new 1.5V cells in series, the LED will glow. You might be thinking that there would be some kind of voltage amplification involved over here. Well after you’ve made it, take a DMM (digital multimeter) and check the output voltage across the LED. You will be shocked as I was to find out that the DMM shows you a voltage of just 1.5V or even less than that. Now you check the input voltage across the battery and you will find that it is more or less same as compared to the output voltage. Then how is the LED glowing? Initially I had tried glowing the LED by connecting it directly to the new 1.5V cell, at that time it didn’t glow; but if I connect the LED to this circuit it glows brightly having the same output voltage (1.5V). After getting these results I started reading about this on the internet and also consulting various people as to why this was happening. Then I came to know that actually the transistor is the reason for all this. The inductor made with the toroid gives an instantaneous voltage boost to the transistor and the transistor here is acting as a switching device.

So what happens is that the DMM is misleading us to false conclusions. The DMM always shows the average voltage across the output terminals. Thus, in reality there would be some voltage amplification (which is enough for the turning the LED and in our case greater than 3V) and then the output waveform would also have a particular duty cycle for which it gives a higher voltage. For finding out the exact values of the amplified voltage and for what percentage of the duty cycle we are getting the high voltage you need to check it on a DSO (digital storage oscilloscope). Here is an image of a sample output waveform that you might get in a DSO for this circuit.

Joule Thief Waveform

As you can see the frequency of the switching by the transistor is very high (38.46 kHz). Hence, due to persistence in human vision we cannot make out, but in reality whenever the spike in the voltage occurs (the transistor turns ON) the LED glows for a very small amount of time and then it turns off for the remaining 60 to 70 % of the cycle. Since this happens at a very fast rate our eyes can’t judge it and we think that the LED is glowing for the whole time. The brightness will be decided by the amount of current that flows through the transistor and thus transistors like 2N4401 or BC337 are preferred as they can provide more current.

Hence, we have made a device which actually runs from very small power taken from dead batteries and don’t worry that since it is a dead battery, the LED will be ON for a long time. I have tested it and it keeps on glowing for a few hours. So what I actually made out of this concept is an emergency torch. Just that instead of one LED I connected a few more LEDs in parallel and made a bunch of it in a packed case and there it is I had a wonderful torch which ran on dead batteries. So remember not to throw out these dead batteries, they can come handy during emergencies.


Reading Time: 4 minutes

This project illustrates a very new and a unique method for controlling a multi-purpose robot. This method can actually be used in the control of high functionality drones.

In very simple words if I have to explain this I will say that this method allowed me to control my bot which has a Wi-Fi connection available in its area and on the other hand I am sitting in some corner of the world with my laptop. I can view the surroundings as well as the movements of my robot and also control them from my laptop.

So now following are the essential pre-requisites that you may require for doing this project:

  • Good knowledge of microcontrollers
  • Web-development, basics of making a website and also JavaScript.

Through this project I have actually demonstrated an example of the concept of ‘Internet of Things’ (IoT).

Here I have used a device called the SPARK core which is nothing but a combination of a 32-bit MCU (STM32F4) and Wi-Fi module (CC3000) which is interfaced with a basic function robot and an IP-Camera installed on it. Apart from this we had made a website on which we can see the live video feed of the IP-camera installed on the bot and it was through the same website that we sent our instructions to it.

So what the user needs to do is just send his instructions through the website and then through the internet, then the SPARK core (which is already connected to the Wi-Fi) would receive these commands and perform its functions accordingly.

At the same time, the IP-camera which is also connected to the Wi-Fi along with the spark core gives back the live video feed to the website. This IP camera had two servo motors inside it such that it could move about its own axis (360deg) and also 180deg from the surface level. Also it had night vision enabled which increases the bot’s usability.

The heart of this project is the SPARK core on which if you need more detailed information you can find it on https://www.spark.io/ . Now apart from all the technical superiorities that this device has, the main innovative thing about SPARK is the spark cloud which is allotted to every core and is unique for each of them. This spark cloud is nothing but a virtual space or in other words it acts as a control room for our spark core. This control room (spark cloud) can be accessed through the internet if the unique spark core ID and its access token (password) of that particular core is known to us. Each spark core coordinates with its own cloud through the Wi-Fi connection. The spark cloud has a unique way of working. We can write and compile the programs that we want to execute on the core through the cloud. All the programs can be burned directly to our spark core from this spark cloud. Now to access and make changes in the programs in our spark cloud there is a prebuilt online API (application programming interface) developed by the spark community. So the program can be written online on the API on a PC and then the code is transmitted to the core. (Note: for this the core should also be online and connected to the cloud) This gives a huge benefit compared to other systems where we have to manually burn our code onto the microcontroller. Hence the programs can be edited even if we are far from our robot making our system dynamic in true terms. Regarding the language for our coding the easiest Arduino is compatible for the core. Their predefined libraries have to be used at numerous instances. Like for example if some of the functions are required to be available throughout the API (i.e. not just the core). These functions are declared as “Spark.function”.


Initially when the spark core connects to the Wi-Fi, it should be done manually from a PC using the USB port that is available in the core. But once if the spark core is synchronised with a Wi-Fi network then we need not repeat the process again. Then only the core needs to be powered up and it will automatically connect itself to the cloud and it will start syncing with the instructions that have been given through the spark cloud.


Now coming to the website part, the movements of the bot are controlled by the direction keys of your keyboard. The backhand of the website (JavaScript) was designed in such a fashion that the controlling stays very intuitive and you may feel like you are playing a real life racing game. What happened in the background was as soon as the key is pressed, in the background a special type of http request is fired (for spark cloud). Whenever this kind of http request is fired, some predefined function from the program on the SPARK cloud is called that we had initially written on the API for the further operations. The SPARK cloud in turn commands the core which is online to move the bot in some direction. Hence when such multiple http requests will keep getting fired to the spark cloud (since we are constantly pressing the keys), the cloud will constantly send the corresponding instructions accordingly to the spark core to move the bot in the respective directions.

This system can have a wide range of applications in military applications, surveillance purposes, industries, etc. wherein with some safety modifications we can even send this robot in inhumane conditions.

This project was done by me for a firm “GlowLogic Media Pvt Ltd” in Mumbai and also I had help from two of my colleagues who had handled the web-development part.


Reading Time: 4 minutes

In the following write-up I’m going to tell you all my experiences while I had made my own line follower and will explain all the problems that I had faced along with some tricks to tackle them.

So basically making a line follower can help you in learning simple as well as advanced micro-controller applications that’s why I would advise all the beginners who want to learn micro-controller, your first project should be making an advanced line follower (advanced in the sense that it should be able it to traverse a track of any complication and its functioning should be very smooth). Now I would suggest that all the new learners should have the PDFs of the following essential books:

  • The AVR Micro-controller & Embedded System – Mazidi
  • Atmega32 data sheet (since that is the controller I have used)

(You can get these easily on the internet and also can use the link to my drive where you can find all the things that you’ll require in this project of yours

https://onedrive.live.com/?cid=64b509679da462f2&id=64B509679DA462F2%21105 )

First of all I would suggest some things from my experience:

  • Don’t use Arduino development board as a learner because once if you have learned how to use any basic micro-controller you will get to know things at grass root level and then afterwards you may find Arduino a cakewalk.
  • Also don’t use development board available for the Atmega32 micro-controller. Make your own circuit on a General-purpose Circuit Board (GCB). In this way you will learn how to design a circuit and get practice for soldering.
  • Make your own chassis as well. You need to learn some very basic fabrication also.
  • Start using simulation software (like Proteus) along with your coding as this will help a lot in verifying your codes. You can’t afford to always burn the code on your micro-controller for checking its validity. In such a situation if you simulate it on the pc then it will be much time-consuming.

Now, the essential things required for a making line follower are Atmega32 MCU, 12V battery, DC motors, chassis, L293D motor driver, LM7805 voltage regulator (5V), Analogue or Digital IR Sensors, laptop, USB-ASP programmer.
7805 voltage regulatorL293D_connectionsThe MCU runs on 5V, means it will perform its functions within a range of 0-5V. So you need a 5V voltage regulator circuit which can be easily made using two capacitors (1uF and 10uF) and an IC LM7805. Now since our motors run on 12V, we will require a motor driver which converts these 5V signals to 12V i.e. L293D. The circuit connections for both are shown

For coding you need to use the software Atmel Studio. You can learn how to code by using the AVR- Mazidi book and also with the help of the Atmega32 data sheet. There are various extensive examples given in the book which will help you understand the various peripherals of the Atmega32 MCU like Basic Input/Output, ADC, PWM, Timer/Counters, Interrupts, etc.

For a basic line follower you just need to learn basic Input/output functions. Now the basic working principle of a Digital IR sensor is that it gives it will give high or low output according to the strip colour in front of it (black or white).

Once you figure this out then now let’s take an example where you have just 3 line sensors and the track made up of a white line and a black background on the arena. Now in the sensors are lined in such a fashion that if the bot is facing forward then it must have one sensor on the white line and two just reasonably outside it. Thus the sensor at the centre will give output 1(high) and the other two will give output 0(low) (Note: this is not necessary some sensors give inverted output like on black they give 1 and on white they give zero so you need to check this first). These output readings from the sensor are taken by the MCU as an input for further analysis. Now if any of the outer sensors will come inside the track due to the movement of your robot, then that sensor will also start giving 1 and the centre one that was inside might move out of the line and will start giving zero. In such a situation, your code should indicate that the bot needs to move in the opposite direction to get back on the line. Hence you might have 3 possible cases if the centre one is giving 1 then go straight, if the one on the right is giving you 1 then go right and if the left one is giving you 1 then go left.

Regarding the simulation install and run Proteus and then you can see it is very similar to Multisim, hence make your own circuit with the micro-controller, sensors, voltage regulator circuit, motor driver circuit, motors, etc and test it with your code on your pc and by doing this you will save time as well as the safety of your equipments is ensured.

Thus in this way very simply you can control your bot to follow a simple line. Now if you don’t want to use digital sensors and prefer analogue sensors then you need to implement ADC and if you want your bot to move very smoothly then you also have to implement PWM. They are a lot of other concepts and complicated algorithms that are used in advanced line following and rather these bots then almost act as grid solvers.

For AVR beginners there is an excellent YouTube channel that you can refer which will help you understand these things very easily:

CEV - Handout