Powering NodeMCUv3 with 5V from power grid via HLK-PM01

Our little devices require a power. Mostly 5V DC. How to deliver it? The power grid is 230V so it is too much 🙂 and additionally, it is AC.
What can we do?
We can use a phone charger. It is easily affordable and does its job. But it looks bad and often we have power so close that it is a waste to use something with a long cord. We want to have a nice, small and compact device. What can we do?

We can use something like this:

it is an HLK-PM01 converter. Seems ideal for an IoT.

From what I found it has following features:
– input: 100-240 V
– output overload
– short circuit protection
– short-term maximum output current: 1A
– working output current: 600 mA
– operation temperature: -20° – +60° C
– humidity: 5 – 95%
– maximum input current: <0.2A
– input low voltage efficiency: Vin=110V, output full-load: 69%
– input high voltage efficiency: Vin=220V, output full-load: 70%
– MTFB 100.000 h
– shell temperature does not exceed 60° C

I wonder if this can be of any use. Googling for it shows two interesting links:

1) http://lygte-info.dk/review/Power%20Mains%20to%205V%200.6A%20Hi-Link%20HLK-PM01%20UK.html
2) https://skippy.org.uk/quick-look-at-the-hlk-pm01/

Why they are interesting? Because they vary in conclusion.
First links conclude with: “This module looks good, I did not find any problems with it.”.
While second shows issues. Mainly it is not compatible with standards the producer declared.
But all in all, with output filtering it can be possible to safely use this.

Summarising all that I have read, do not use more that 500mA to have a long life. Use DC filtering and use fuse from AC side.
As an alternative we can use HLK-5m05 or IRM-05-5, they are stronger, better but bigger and more expensive.

But how it works in real life? I took NodeMCU with relays, hooked converter to it,



and played with it a little bit. The LEDs on boards were changing but only that, the current is too weak to trigger a relay. Fail. NodeMCU was working correctly – that is good.

How bad it is? Let’s look at the multimeter. All relays off, 5.06V, all on still 5.06V. What about current?

This is strange, very strange, unit powered by USB (multimeter hooked between the relay and board):

and via HLK:

The current was so low that it barely could be read (it jumps to 0.01 sometimes) but led on the relay was turned on. What the heck? Maybe it is the problem with NodeMCU?

What about direct wiring power source with the relay?

Success! There is an annoying click when coil closes a circuit!

Ok so it is the problem with NodeMCUv3.  Carefully looked at pins and confirmed that I used Vin pin. Googling and it seems that there are some problems with it.

What to do now?
We can power NodeMCU via USB and devices via VU pin from board or power it via Vin and devices directly from HLK-PM01. And this is perfect 🙂




  1. I found your site via Pingback, I am the person who wrote the article covering the EMC performance of the HLK module, I will be writing a follow up soon 🙂 just a quick question regarding your relay circuit: What are you using in the form of a switching transistor on your relay? as that may be the issue.


    1. Hi. You done a perfect job describing HLK, it was very helpful. As for my problem with circuit, there is a diode that stops current from reaching VU pin on NodeMCU board while powering via Vin pin. But when HLK is connected to usb socket everything works perfectly. My relays is this relay module that is everywhere:) not sure what is inside


Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s