Here is where 90% of problems happen. The JDY-40 runs on 3.3V, but its RX pin is 5V tolerant on most modules. Still, to be safe and reliable:
The JDY-40 is a compact 2.4GHz wireless transceiver that functions like a wireless serial cable. It is widely used for Arduino projects due to its simplicity, low power consumption (5uA in sleep), and a range of up to 120 meters in open areas. 1. Essential Wiring
The JDY-40 is a 3.3V device. While its serial pins (RX/TX) are often tolerant to 5V Arduino logic, you must power it with 3.3V. JDY-40 Pin Arduino Pin Description VCC Power Supply (2.2V - 3.6V) GND RXD Pin 11 (SoftSerial TX) Serial input to module TXD Pin 10 (SoftSerial RX) Serial output from module SET Pin 9 (or GND for AT) Low (GND): AT Command mode; High: Data mode CS Low: Awake; High: Sleep mode 2. Best Code Example: Transparent Serial
The most common "best" use case is transparent transmission, where data sent to the RX pin of one module instantly appears at the TX pin of another.
#include Use code with caution. Copied to clipboard 3. Essential AT Configuration Commands
To configure the module, pull the SET pin to GND. All commands must end with \r\n (CR+LF).
AT+BAUD: Set the baud rate. Default is 4 (9600). Options range from 1 (1200) to 6 (19200).
AT+RFID: Sets the Wireless ID (0000 to FFFF). Both modules must have the same RFID to talk.
AT+DVID: Sets the Device ID. Useful for identifying specific nodes in a network.
AT+POWE: Adjusts transmit power (0 to 9). 9 is max (+12dBm).
AT+CLSS: Changes operating mode. A0 is standard transparent serial, while C0-C5 are for remote GPIO control. 4. Pro Tips for Better Reliability
Video #257: Serial Wireless Comms for Arduino (et al) - GitHub
JDY-040/JDY-041 module. JDY-040 module Serial Wireless transceiver info. PLEASE NOTE: this module is 3v3 limited - don't apply 5v.
Радиомодули JDY-40 2.4G с UART интерфейсом - arduinoLab
In the world of wireless Arduino projects, is often hailed as a "silent workhorse" because of its effortless ability to establish long-range, transparent serial communication without the pairing headaches of traditional Bluetooth The Story of the "Ghost Connection"
Imagine building a remote-controlled rover intended to explore a dense backyard garden. Traditional Bluetooth modules like the
might struggle with line-of-sight obstacles or drop the connection if you walk too far away. By switching to a JDY-40, you gain a massive 120-meter range jdy40 arduino example best
. Because it uses 2.4GHz RF technology (similar to an NRF24L01 but with a simplified serial interface), it broadcasts to all other JDY-40 modules on its channel automatically. The "best" example of its power is a Hub-and-Spoke sensor network
. You can have one central "Hub" Arduino in your house and multiple "Remote" nodes (like an Arduino Uno
) scattered in the garden, each monitoring soil moisture. By sending simple JSON messages with a "destination ID," only the intended remote node replies, making it feel like a sophisticated, custom-built network. Best Practice Setup Example
To get the best performance out of your JDY-40, follow this standard serial setup:
The Go to product viewer dialog for this item. is a versatile 2.4GHz wireless serial transceiver module popular for Arduino projects due to its low power consumption ( 40mA40 m cap A
sleep) and ease of use in point-to-point or broadcast networks. Unlike Bluetooth, it natively broadcasts to all nodes on the same channel and ID, making it ideal for simple telemetry and "one-to-many" communication. Core Specifications
Operating Voltage: 2.2V to 3.6V (3.3V recommended; do not use 5V directly). Communication: Standard TTL Serial (UART). Range: Up to 120 meters in open sight.
Modes: Transparent transmission (default) or AT command mode (for configuration). Connection Guide (Arduino Uno/Nano)
To interface with an Arduino, connect the pins as follows, ensuring you use a voltage divider or level shifter for the RX pin if using a 5V Arduino. Configuration with AT command - Arduino Forum
Yes, if:
No, if:
For 95% of hobbyist Arduino projects—remote thermometers, garage door openers, robot controllers, or wearable badges—the JDY-40 is arguably the best module you’ve never used.
Final Code Download: The example above is production-ready. Just change pin definitions, power with clean 3.3V, and you will have a wireless link in under 60 seconds.
Have you pushed the JDY-40 to 200 meters? Found a reliable antenna mod? Share your "best" experience in the comments below.
While there isn't a single "academic paper" that serves as the definitive guide, the following highly-regarded technical resources and tutorials are considered the best documentation for using the JDY-40 wireless module with Arduino. Best Technical Guides & Documentation
Detailed Setup and AT Commands: For a comprehensive technical overview, including how to configure the module via AT commands and its 128 radio channel options, refer to the Simple Wireless Serial Communication guide by Ben Emmett Here is where 90% of problems happen
. This resource is excellent for understanding current draw and power options.
Networking and Broadcast Examples: If you are looking to build a multi-node network (e.g., one hub and multiple remote nodes), Ben Emmett's JDY-40 Wireless Broadcast project provides complete Arduino and Python code examples using JSON formatting for message transmission.
Scientific Application: For a look at how the JDY-40 is used in professional research, the peer-reviewed paper "Wireless Data Acquisition System with Feedback Function" in MDPI details its integration into a data acquisition sensor, highlighting its 3.3V power requirements and energy-efficient sleep modes. Practical Implementation Resources
Video Tutorials: Ralph Bacon’s video tutorial on Wireless Serial Comms and the accompanying GitHub repository
are highly recommended for beginners. These resources demonstrate how to use the Go to product viewer dialog for this item.
as a "wireless USB cable" for serial debugging and data transfer.
Datasheets: The JDY-40 Wireless Serial Module PDF on Scribd provides the essential hardware specifications, including its 120-meter transmission range and 2.4GHz operating frequency. Critical Usage Tips Voltage Limitation: Always remember that the
is a 3.3V limited device; applying 5V directly to the VCC or logic pins without a level shifter can damage the module.
Channel Interference: For stable communication between multiple links, it is best to separate their channels by at least 6 to avoid interference.
Getting Started with JDY-40 Arduino Module: A Comprehensive Guide
The JDY-40 is a popular Bluetooth 4.0 module widely used in Arduino projects for wireless communication. It's a cost-effective and efficient way to add Bluetooth connectivity to your Arduino board. In this article, we'll explore the JDY-40 module, its features, and provide a step-by-step guide on how to use it with Arduino, along with some example code.
Overview of JDY-40 Module
The JDY-40 is a Bluetooth 4.0 module based on the CSR8510 chipset. It supports a wide range of Bluetooth protocols, including SPP (Serial Port Protocol), HID (Human Interface Device), and more. The module operates at a frequency of 2.4 GHz and has a maximum data transfer rate of 1 Mbps.
Key Features of JDY-40 Module:
Hardware Requirements:
Software Requirements:
Step-by-Step Guide:
#include <SoftwareSerial.h>
SoftwareSerial bluetooth(2, 3); // RX, TX
void setup()
Serial.begin(9600);
bluetooth.begin(9600);
void loop()
if (bluetooth.available() > 0)
char data = bluetooth.read();
Serial.print("Received: ");
Serial.println(data);
if (Serial.available() > 0)
char data = Serial.read();
bluetooth.print(data);
Explanation of the Code:
Example Use Cases:
Tips and Troubleshooting:
By following this guide, you should now have a better understanding of how to use the JDY-40 Bluetooth module with Arduino. Experiment with different projects and explore the possibilities of wireless communication with your Arduino board. Happy building!
The JDY-40 is a versatile 2.4GHz wireless serial transceiver module that stands out for its simplicity, long-range capabilities (up to 120 meters), and built-in GPIO control modes. Unlike standard Bluetooth modules (like the HC-05) that typically have a 10m range, the JDY-40 acts more like a wireless serial cable, making it one of the best choices for long-distance Arduino projects. Key Specifications Operating Frequency: 2.4GHz Range: Up to 120 meters (line of sight)
Operating Voltage: 2.2V to 3.6V (Note: 5V logic on Arduino requires a level shifter or 3.3V power) Baud Rate: Up to 19,200 bps Communication Interface: Standard TTL Serial (UART) Best Arduino Connection Example
To get the best results, use the SoftwareSerial library so you can keep the hardware serial port for debugging.
Video #257: Serial Wireless Comms for Arduino (et al) - GitHub
JDY-040/JDY-041 module. JDY-040 module Serial Wireless transceiver info. PLEASE NOTE: this module is 3v3 limited - don't apply 5v. Lesson 36: Get Started with Bluetooth Module
is a versatile 2.4GHz wireless serial port module designed for simple point-to-point or point-to-multipoint data transmission with a range of up to 120 meters
. It functions primarily as a "wireless cable," making it an excellent choice for beginners who want to replace physical UART wires with a radio link. Arduino.ru Key Technical Specifications Frequency Range: 2400 - 2483.5 MHz. Operating Voltage:
2.2V to 3.6V (Note: Use 3.3V, not 5V directly to the module). Interface: UART (Serial) and 8 GPIO pins. Baud Rate: Supports up to 19,200 bps (default is 9600). Power Consumption: ~40mA during transmission, as low as 5µA in sleep mode. Wiring Connection (Arduino to JDY-40)
To configure or use the module, connect it to your Arduino as follows:
Video #257: Serial Wireless Comms for Arduino (et al) - GitHub
JDY-040/JDY-041 module. JDY-040 module Serial Wireless transceiver info. PLEASE NOTE: this module is 3v3 limited - don't apply 5v. No, if:
Радиомодули JDY-40 только UART - Arduino.ru