Most power modules I use are simple. You put a voltage in, you get a different voltage out, and that is the end of the story. The Reyax RYP2850 is different, and I honestly have not seen anything like it before. It is a smart DC to DC converter, which means a microcontroller can talk to it, tell it what voltage to output, turn that output on and off, and read back how much current and power is going through it.
In this article I go through what the module can do, look at its datasheet, and then build a small test circuit with a NodeMCU so I can try every feature myself. Along the way I want to figure out what this module is really meant for.
The module comes with both an SMD footprint and through hole pads, so you can solder it straight onto your own board. If you ever want to design a PCB for this module or any other project, PCBWay, the sponsor of this video, can make it for you, and they are currently running their 9th Project Design Contest with submissions open until January 24th, 2027.
What the RYP2850 Can Do
The RYP2850 accepts anything from 4.5 up to 28 volts DC on its input. On the output, it can give you 3 volts, 3.3 volts or 5 volts, with up to 4 amps of current. That 4 amp figure comes with a catch. At high current the module produces quite a lot of heat, so if you want the full 4 amps you will need to add a heat sink to it.
What makes it smart is the small microcontroller inside. It measures the input voltage, the output voltage, the output current and the temperature of the module. You talk to it over a 3.3 volt UART serial interface using AT commands, which are short text commands like the ones used by many Wi-Fi and LoRa modules. You can also set the voltage without any code at all, using two of its pins, which I will explain in a moment.
The typical input voltage is 12 volts, and the module itself only draws around 5.5 milliamps when it is idle. Reyax lists IoT devices, industrial monitoring and control equipment, instruments and production test equipment as the intended applications. Since the output can be turned on and off from code, it also makes sense for energy saving projects where you only power a load when you actually need it.
I do have two small wishes. I would have liked to see 1.8 volts as an option, since some chips need that. And all of the voltages come out of the same output pins, so you can only have one voltage at a time. If you need a second voltage, you can always add a simple regulator next to it.
Reading the Datasheet
The Pinout
The pinout is printed right on the back of the module, which is a nice touch. There is a ground pin on each of the four corners. On one side you have the RX and TX pins for serial communication on pins 13 and 12, and the voltage input on pins 11 and 10. The two input pins are connected together so they can share the full 4 amps between them.
There is also a reset pin, an enable pin and the two output pins, which again are doubled up for current. The last two pins are the voltage select inputs.
Selecting the Voltage Without Code
The two voltage select pins let you pick the output voltage with simple jumpers. Both pins have internal pull up resistors, so if you leave them alone they read as high. When both are high, you get 5 volts. If you pull the first one low and leave the second one high, you get 3.3 volts. Do it the other way around and you get 3 volts. If you pull both of them low, there is no output at all.
This is handy if you just need a fixed voltage and do not want to bother with UART. But if you want to read the measurements, you will need the serial connection, because that is the only way the module can send its data to you.
Thermal Protection
Since the module knows its own temperature, the firmware inside uses that to protect itself. The more power you draw, the hotter it gets, and as it heats up the module starts limiting the output current to prevent overheating. The datasheet even has a chart that shows how much current you can pull at each input voltage without extra cooling. So again, if you plan on pulling a lot of current, give it a heat sink.
The Typical Schematic
The example schematic is simple. The input voltage goes to the input pins with a couple of capacitors, and the load goes on the output. Reyax recommends using a MOSFET to drive the enable pin. However, the enable pin works at 3.3 volts, so in my test I connected it directly to the NodeMCU without any MOSFET, and it worked just fine.
The datasheet also includes the footprints for your own PCB and the full list of AT commands. The commands are short and easy to read. For example, AT+VOUT=30 sets the output to 3 volts, AT+VOUT=33 sets it to 3.3 volts and AT+VOUT=50 sets it to 5 volts.
My Test Circuit
To try everything out, I built a small demo on a breadboard. A NodeMCU board talks to the module over serial, and the module gets 12 volts from my bench power supply. On the output I connected an LED so I can see when the power is on, and a multimeter so I can check the voltage the module reports against a real measurement.
The Sketch
On the software side I wrote a sketch that uses software serial on pins D5 and D6 to talk to the module. I also connected pin D1 to the enable pin through a 4.7k resistor, so I can turn the module on and off from code. The sketch is quite long because I added a lot of options for testing, so I will not go through all of it line by line. It has every command in it, plus a small menu you can open from the serial monitor, so it is a good way to learn how the module works. The full code is available here.
Testing It Out
Talking to the Module
I started by resetting the NodeMCU so we could see everything from the beginning. At first the sketch could not talk to the module, because the bench supply was still off. As soon as I turned on the 12 volts, the module replied that it was ready.
Then I asked it for its info. It sent back its unique ID, its output voltage setting, which was 5 volts, and its update rate, which was once per second. When I sent the E command to enable the output, the LED lit up straight away. The module reported 4.966 volts on the output, and my multimeter agreed with it. The LED draws so little current that the module barely registered it, showing about 0.01 watts.
Changing the Voltage from Code
Sending D disabled the output. This pulls the enable pin low, the output drops to zero and the LED goes off. After turning it back on, I sent 0 to set 3 volts. In the background the sketch sends AT+VOUT=30 to the module. Sending 3 switches it to 3.3 volts and sending 5 brings it back to 5 volts. You can see the LED brightness change each time. So with just a few short commands, I have full control over everything the module does.
Telemetry and Statistics
The H command brings up the menu in my sketch. From there I can run a quick AT test, change the update interval, do a software reset and turn the live telemetry on or off. With the output on, the module sends a new line every second with the input voltage, output voltage, current and temperature. You could easily use this to update a small screen. The L command toggles that stream so it does not flood the serial monitor.
The sketch can also show the minimum and maximum values it has seen. With just an LED on the output the current and power numbers were tiny, but I could also see the temperature from the internal sensor, which tells you how hard the module is working. There is also an option to send raw AT commands and to clear the statistics.
The Full Feature Demo
The last option is a demo mode that runs through every feature on its own. When I sent X, it enabled the output, read the unique ID, and then stepped through 5, 3.3 and 3 volts, spending about six seconds on each with several readings in between. It then raised the telemetry rate to 10 updates per second, so the readings came in ten lines at a time. After that it toggled the output off and on and finished with a software reset.
One thing I noticed is that after a reset, the module always goes back to 5 volts, no matter what you had set before. Keep that in mind if your load cannot handle 5 volts.
Measuring a Real Load
Since the LED did not draw enough current to show anything useful, I swapped it for a piece of 5 volt LED strip. I also removed the multimeter so I could connect the strip directly. When I enabled the output, the strip lit up, and I could see the input voltage dip slightly on the bench supply.
At 5 volts, the module reported 4.96 volts on the output and about 260 milliamps, which is roughly 1.3 watts. On the input side it showed about 1.4 watts, so not much was lost in the conversion. The temperature started to climb a little, which is expected. At around 1 watt this is nothing to worry about, but the datasheet suggests you add cooling once you go above a few watts.
When I switched to 3 volts, the strip got noticeably dimmer and the power dropped to about 0.15 watts at roughly 50 milliamps. At 3.3 volts it pulled close to 100 milliamps and about 0.28 watts. Back at 5 volts it drew the most, since that gives the highest current through the strip.
Final Thoughts
I really wish this module could output any voltage in between, and not just 3, 3.3 and 5 volts. I do not know exactly how the voltage is controlled inside, but I suspect the circuit could do custom voltages, and that would make it even more useful.
Even as it is, being able to switch the output and change the voltage from a microcontroller, while measuring the current, power and temperature, makes the RYP2850 a very usable module. I can see it working well in IoT devices that need to cut power to sensors, or in a test setup that checks how a board behaves at different voltages. If you have an idea for a project with it, or you want me to try something specific, I would love to hear it.
If you want to see the module running in real time, check out the full video and subscribe to my YouTube channel so you catch what I build with it next.
Links And Resources
- Reyax RYP2850 Smart Power Module: https://reyax.com/product/Power/RYP2850
- NodeMCU ESP8266 Board: https://s.click.aliexpress.com/e/_c3gDtlld
- Resistor Kit: https://s.click.aliexpress.com/e/_c40GUDNz
- 5V LED Strip: https://s.click.aliexpress.com/e/_c2x1TaTl
- Bench Power Supply: https://s.click.aliexpress.com/e/_c2wjveW3
- Multimeter: https://s.click.aliexpress.com/e/_c3OeiNpV
- How I Built My Bench Power Supply (video): https://youtu.be/uG3AknEYIbM