Jdy40 Arduino Example Best Guide
Implementation and Performance Analysis of JDY-40 Wireless Modules with Arduino
Abstract —The JDY-40 is a low-power, half-duplex 2.4 GHz transceiver module offering simple UART-based communication for Arduino projects. Unlike complex protocols like nRF24L01, JDY-40 uses transparent serial transmission with automatic pairing and frequency hopping. This paper presents hardware connections, example code for point-to-point communication, range testing results, and use-case analysis. The module is ideal for short-range (≤100m) wireless sensor networks, remote controls, and data logging.
void loop() if (bluetooth.available() > 0) char data = bluetooth.read(); Serial.print("Received: "); Serial.println(data);#include <SoftwareSerial.h>
| JDY-40 Pin | Arduino Uno Pin | Notes | | :--- | :--- | :--- | | VCC | 3.3V | Do not connect to 5V unless board has a regulator. | | GND | GND | Common ground is required. | | TX | Digital Pin 2 | (Uses SoftwareSerial) | | RX | Digital Pin 3 | (Use 1K-2K Resistor Divider for safety) | | EN | 3.3V | Must be HIGH for the module to run. | jdy40 arduino example best
Wiring Diagram
⚠️ Critical: The JDY-40 runs at 3.3V. While many users connect the TX pin directly to an Arduino’s RX (5V tolerant), you should never connect the JDY-40’s RX directly to an Arduino’s TX (5V) without a voltage divider. I recommend using a simple resistor divider (2x 10kΩ resistors) or a level shifter. Search for Bluetooth devices on your phone/PC
String receivedData = "";
. It is highly valued for its simplicity, as it uses a standard UART interface that can be controlled with basic serial commands on an Arduino MSS Eletrônica 1. Hardware Setup & Pinout operates on iFuture Technology . Connecting it to a 5V source may damage the module : 2.2V to 3.6V MSS Eletrônica : System ground. : Connect to the Arduino's RX/TX pins (cross-connected) iFuture Technology void loop() buttonState = digitalRead(buttonPin);
- Search for Bluetooth devices on your phone/PC.
- Look for a device named usually starting with "JDY-40" or similar.
- Pair with it (Passcode is usually
000000or123456). - Open a Bluetooth Terminal App (like "Serial Bluetooth Terminal" on Android).
void loop() buttonState = digitalRead(buttonPin);