I want to drive a Litz wire coil at 250 kHz. I chose Arduino initially and then replaced it with NE555, but the Arduino or NE555 is generating 250 kHz, which is fed in a Litz coil to turn on some LED lights wirelessly like the following:

enter image description here

My schematic is like this:

source: https://www.instructables.com/Mosfet-Qith-Arduino-IRFZ44N-IRLZ44N-IRF530N/

The other difference with the above diagram is that:

  1. I'm using a coil instead of the motor:

source: https://www.uchidg.com/sale-10803707-copper-wire-wireless-charging-coil-70-humidity-for-wearable-device.html

  1. I'm using IRFZ44N instead.

  2. I've also put a 10nF capacitor in parallel with the coil which dramatically increases the brightness of the lights above the coil.

  3. No diodes are there with the coil.

The problem is that with the configuration given above, the MOSFET is getting very hot even with a fat heatsink.

I've also used NE555 instead of the Arduino and supplied 9V to the Gate of the IRFZ44N MOSFET, but it's still getting massively hot and the circuit consumes about an amp of current.

When the source voltage, however, is under 3 volts it's very cool. But I'm wondering for what reason 3 volts are cool, but 4 is burning hot.

I don't have an oscilloscope, but I have got a meter than can measure frequency and duty cycle. The spooky part is that when I generate 50 kHz on NE555 or Arduino side, the MOSFET is still outputting 450 kHz at a 30% duty cycle. Regardless of 52% from NE555. Increasing the frequency to 100KHz on NE555 gave me 1MHz reading on the MOSFET drain.

Also, if I disconnect the coil, and only connect the frequency meter, it doesn't generate any output at all. The MOSFET by itself is all good and tried with 2 MOSFETS.

What am I doing wrong?

EDIT Here's the schematic with arduino:

Arduino Schematic

The code is just:

#define PIN1 3

// The sweet spot
#define FREQUENCY 2

void setup() {
  pinMode(PIN1, OUTPUT);

  while (true) {
    digitalWrite(PIN1, HIGH) ;
    delayMicroseconds(FREQUENCY) ;
    digitalWrite(PIN1, LOW) ;
    delayMicroseconds(FREQUENCY) ;

Schematic with NE555 enter image description here

  • 8
    \$\begingroup\$ Please draw a proper schematic circuit and don't rely on circuit-board and component images because, they don't make any sense. A circuit please. Also link the LED modules you are using. \$\endgroup\$
    – Andy aka
    Dec 10, 2022 at 19:56
  • 8
    \$\begingroup\$ You really need a proper driver to switch the MOSFET on and off quickly, especially over 10 KHz or so. And you really need to get an oscilloscope to have any hope of properly troubleshooting and successfully building any serious electronics project. \$\endgroup\$
    – PStechPaul
    Dec 10, 2022 at 20:08
  • 4
    \$\begingroup\$ You also should have a diode in antiparallel with the coil. I missed that before, but that may well be your biggest problem--your IRFZ44N is repeatedly being driven to avalanche by the coil inductance. If that makes your coil turn off too slow, put a resistor in series with the diode, but you need to have that diode there. \$\endgroup\$
    – Hearth
    Dec 10, 2022 at 20:13
  • 3
    \$\begingroup\$ The part where you still get 450 kHz regardless of the excitation frequency is because your capacitor and inductor form a resonant circuit, which presumably resonates at close to 450 kHz. \$\endgroup\$
    – Hearth
    Dec 10, 2022 at 20:49
  • 3
    \$\begingroup\$ @Hearth no, a diode is not needed and is, in fact, counter productive. \$\endgroup\$
    – Andy aka
    Dec 10, 2022 at 21:41

3 Answers 3


The IRFZ44N is not well suited to logic level drive. You should get a MOSFET with a much lower gate threshold voltage to get the lowest ON resistance. But you also need to drive it with more current than an Arduino output can provide. Here is a simple gate driver that should improve things, although a dedicated driver will work even better.


simulate this circuit – Schematic created using CircuitLab

100 kHz PWM Drive

I also ran this simulation with an IRFZ44, and directly from the 5V PWM signal with 200 ohm series resistance (simulating Arduino GPIO with 25 mA maximum drive), and it is clear that the MOSFET is not properly driven for efficient switching, causing a lot of heating:

100 kHz PWM Arduino Direct (200 ohm)

  • \$\begingroup\$ I've also added an inductor and 10nF capacitor to the 55NF06L, and all looks good in simulation. In real life, however, I can't find a 55NF06L anywhere in this country, I've to import it for a huge cost. I've got one FQP50N06 though, do you think that'll work? \$\endgroup\$
    – 15 Volts
    Dec 11, 2022 at 9:13
  • 1
    \$\begingroup\$ That device has similar gate threshold (2-4V) to that of your IRFZ44N. mouser.com/datasheet/2/308/1/FQP50N06_D-1810007.pdf You should get a logic level device such as mouser.com/datasheet/2/196/… \$\endgroup\$
    – PStechPaul
    Dec 11, 2022 at 18:31

...generating 250 kHz, which is fed in a Litz coil to turn on some LED lights wirelessly...

This is not the same as driving a dc motor. A motor requires an average dc current to maintain the torque applied to the rotor.

To light the LEDs wirelessly, the Litz coil must have an ac current with zero average dc. Without the capacitor in parallel with the coil, an average dc current will will raise the FET drain voltage to breakover, thus causing excessive heating.

Using a diode across the coil will protect the FET, but will maintain the dc current current in the coil. The dc magnetic field will not cross to the receiving coil.

I've also put a 10nF capacitor in parallel with the coil which dramatically increases the brightness of the lights above the coil.

I speculate that the capacitor is resonating with the coil as Hearth mentioned in a comment. This creates a sinusoidal current in the coil. This ac current will easily cross to the receiving coil to brighten the lights. Unfortunately, when the FET turns on, the capacitor acts as a short, so the drain current will approach \$5/R_{DSon}\$ amps, causing heating.

This reminds me of the 455KHz IF stages in the AM super-het receivers. The collectors of the BJTs were connected to a tap on the coil of a tank circuit that resonated at 455KHz.


simulate this circuit – Schematic created using CircuitLab

For this purpose the tank resonates at your chosen 250KHz. The tank is pulsed with short pulses at the resonant frequency. Synchronizing to the resonant frequency allows one short pulse to be applied every cycle. The tap is chosen to minimize the stress on the FET. Some protection may be required for the FET if the inductive kick is too high.

The only other way to lower the drive dissipation and maintain zero dc current in the coil is through a full bridge delivering sinusoidal pwm to the coil.

I have not tested this myself, but if a single transistor drive is desirable this approach is worth investigating.

As others have mentioned a better selection for the FET is required.

Very interesting (+1).

Comments welcome.


When the MOSFET turns on, it connects the power supply directly to the capacitor. That results in an inrush of current as the power supply charges the capacitor. That current is so high that there is a high voltage drop across the MOSFET. That high current times that high voltage is equal to high power. That's what's mostly heating the MOSFET.

Remove that capacitor across the load. That will reduce the heating.

If the MOSFET still gets hot, it's because of switching losses because the MOSFET is not turned on and off fast enough. That's because the 555 cannot provide the high current that the MOSFET gate requires to turn on rapidly.

Add a buffer (a gate driver) between the 555 and the MOSFET.

Finally, build the circuit carefully, not mid-air:

  • Use a common ground point, and ideally a ground plane
  • Use a large capacitor across the supply rails
  • Use short wires to the gate driver
  • \$\begingroup\$ I've reproduced the issue without any capacitor connected to the MOSFET at all \$\endgroup\$
    – 15 Volts
    Dec 10, 2022 at 20:49

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.