Skip to Content

Bluetooth Module JDY-31

Meet the JDY-31 – your tiny Bluetooth powerhouse! This Bluetooth 3.0 SPP module surpasses HC-05/06 in speed, stability, and low power consumption. Compatible with Windows, Linux, and Android devices, it supports smartphone communication, IoT devices, smart home projects, and wearable electronics. Configuring JDY-31 is a breeze with simple AT commands—you can change device names, baud rates, or pairing modes in seconds. With its built-in PCB antenna and UART interface, this module provides wireless communication without hassle.

Package Includes

  • 1 x JDY-31 Bluetooth Module
Bluetooth Transceiver Serial Module
26.25 AED 26.25 AED (Tax included)

Terms and Conditions
30-day money-back guarantee
Shipping: 2-3 Business Days

Specifications

  • Model: JDY-31
  • Bluetooth Version: 3.0 + EDR (SPP Profile)
  • Frequency: 2.4 GHz
  • Communication Interface: UART
  • Input Voltage: 3.6–6V (recommended 5V)
  • Operating Temperature: -40°C to +80°C
  • Antenna: Built-in PCB
  • Transmission Distance: Up to 30 meters
  • Master-Slave Support: Slave only
  • Module Size: 38 × 16 mm
  • STM Soldering Temperature: <260°C
  • Idle Current: 4.7 mA, Connected Current: 7.3 mA
  • Transmit Power: 8 dBm (max)
  • Receive Sensitivity: -97 dBm
  • SPP Max Throughput: 16 KB/s (Android/Windows)

JDY-31 Pinout

JDY-31 Pinout

Pin Function
VCC Power supply (recommended 5V)
GND Ground
TXD Serial transmit data to external device (connect to RX of MCU)
RXD Serial receive data from external device (connect to TX of MCU)
EN Enable module (High = active, Low/No input = standby)
STATE Indicates connection status

 

How to Use

  • Connect JDY-31 to a microcontroller or USB-TTL adapter using UART (cross RXD → TXD, TXD → RXD).
  • Power the module with 5V and GND.
  • Use a serial terminal or serial port assistant to send AT commands for configuration.
  • Common AT commands:
    • Query version: AT+VERSION
    • Reset: AT+RESET
    • Change name: AT+NAMErainbow
    • Change baud: AT+BAUD8 (115200)
    • Set PIN: AT+PIN1234
  • After configuration, restart the module for changes to take effect.

Arduino Wiring Diagram

Connect the JDY-31 to Arduino as follows:

JDY-31 Pin Arduino Pin
VCC 5V
GND GND
TXD D0 (RX)
RXD D1 (TX)

Wiring Images

Simulated Wiring Diagram

Arduino Example Code


// JDY-31 Bluetooth LED Control Example
const int ledPin = 13; // LED pin on Arduino

void setup() {
  Serial.begin(9600);  // Same baud rate as JDY-31
  pinMode(ledPin, OUTPUT);
  digitalWrite(ledPin, LOW);
  Serial.println("JDY-31 Bluetooth module ready...");
}

void loop() {
  if (Serial.available() > 0) {
    char receivedChar = Serial.read();
    Serial.print("Received: ");
    Serial.println(receivedChar);

    if (receivedChar == '1') {
      digitalWrite(ledPin, HIGH);
      Serial.println("LED ON");
    } else if (receivedChar == '0') {
      digitalWrite(ledPin, LOW);
      Serial.println("LED OFF");
    }
  }
}

Applications

  • Wireless serial communication with smartphones, PCs, and microcontrollers
  • Smart home automation
  • IoT devices and sensors
  • Battery-powered wearable devices
  • Remote-controlled electronics

Troubleshooting & FAQ

  • No response to AT commands: Check wiring (cross RXD/TXD), baud rate (default 9600), and ensure line endings are correctly configured (\r\n).
  • Phone disconnects: Check power supply stability.
  • Two JDY-31 modules communicating: Not possible; JDY-31 is slave-only. Use a master-capable module (like HC-05) to connect.
  • Choosing a module: Consider chip, power consumption, transmission rate, distance, interface, and master-slave mode based on project needs.