Monthly Archives: March 2023

WT51822-S4AT User Manual-Serial AT commands

WT51822-S4AT Serial transparent transmission means that modules are connected with user MCU via a common serial interface to establish a two-way communication between user MCU and mobile devices. The module can obtain at least 200bytes transmission data and automatically send the data by separated packets, each wireless packet maximum load is 20byte. The data packet, which is sent to the module by mobile device side, must send subcontracting automatically(1-20byte/package), the module will forward to the MCU serial receiving port after receiving the data packet. Users can modify the module basic Bluetooth parameters serial AT commands. For details, please check “serial AT command” description.

1. Serial hardware protocol: default 9600bps. 8, No verify bit 1, Stop bit

2.“Enable” serial ports enable control, low level enable module serial port function making data communication with the client host MCU properly; high level closes the serial port function. At this time, the module Bluetooth can still transmit broadcast code, and can be paired connection, but you can not use the serial port functions;

3.In order to save the size, the module uses the TXD / RXD double wire serial methods, without increasing the data flow control. So it is not recommended to set the serial rate too high, in caseof packet loss or error code, recommend to use 9600bps or other baud rates like no higher than 38400bps;

4.Bluetooth module default connection interval is 20ms, if you need to save power and adopt low-speed forwarding mode, you can adjust Bluetooth connection interval via the AT command, the longest interval Bluetooth connectivity is 2000ms;

Serial AT commands Description:

WT51822-S4AT Module will automatically recognize and distinguish serial data, the data packet began with AT character will be defaulted as AT commands and parsing, and will return the process results, so the data under transparent transmission mode cannot begin with AT character.

The test command

Command format: AT\r Syntax: AT \ r

Returning value: OK\r Return value: OK \ r

Content: send AT test commands, returning value OK indicates module AT commands tested successfully.

MAC address Operation Command

Command Format: AT + ADDR \ r?

Return Value: xxxxxxxxxxxx \ r

Content: Return the module‟s current MAC address: xxxxxxxxxxxx Command Format: AT + ADDR = 123456789ABC \ r Return value: OK \ r Content: modify the module MAC address again: 123456789ABC, return value OK indicates the success of reset MAC address. Note: If the Bluetooth module modified the module MAC address successfully under being connected state, but the module will not switch immediately to the new address , it needs to disconnect the module , then the module will be broadcast with a new MAC address.

Operation command of Serial Port Communication Baud-rate Command format: AT + BAUD = 19200 \ r

Return value: OK \ r ERROR \ r

Content: Re-edit module communication baud rate to 19200bps, Return OK indicates the success of modification, Return ERROR indicates that the new baud rate modification fails, the reason is set point value is not common serial port baud rate value. Command Format: AT + BAUD \ r? Return Value:19200\ r Content: Check the current module serial communication baud rate, the module returns the current setting of the baud rate 19200bps.

NOTE: The module default baud rate is 9600bps, because if the serial port baud rate is too high, it need to increase RTS / CTS data flow control, otherwise there will be errors, it is recommended that the baud rate is no more than 57600bps. The serial port baud rates that current module supports : 1200/2400/4800/9600/14400/19200/28800/38400/57600/76800/115200/230400。

Operation Command of the Device Name

Command Format: AT + NAME = Wireless-tag01 \ r

Return value: OK \ r ERROR \ r

Content: Rename the module: Wireless-tag01, the length of a name must be no more than 20 bytes, the return value OK indicates the success of the rename, the return ERROR represents the renamed fails, you may have exceeded the limit length . Command Format: AT + NAME \ r? Return Value: Wireless-tag01 \ r Content: Check the module‟s current device name, serial port return to the module‟s current device name: Wireless-tag01.

NOTE: Modify the device name under the state of the Bluetooth being connected, the module will not modify immediately .It needs to disconnect the Bluetooth connection, and then the module will broadcast with a new device name.

Read Command of Module Parameter

Command: AT + RX \ r

Return Value: NAME: Wireless-tag01 \ r BAUD: 19200 \ r MAC: 123456789ABC \ r

Contents: Check the module‟s current parameter, return to the module‟s current device name, serial port baud rate and device MAC address.

Set Command of Module Transmit Power

Command Format: AT + RFPM = 3 \ r

Return value: OK \ r ERROR \ r

Content: Reset the modules transmit power, for example ,set the module transmission power to level 4 ,the transmit power is -8dbm, return OK indicates power reset successes, return ERROR indicates power reset fails, the reason may the set power level is not in the level list.

Command Format: AT + RFPM \ r?

Return Value: -8dbm \ r

Content: Check the transmit power configuration of the currentBluetooth module, return to the current setting of the transmission power value: -8dbm. NOTE: Bluetooth module currently supports setting transmit power level in the following table:

Power Level Power Value

0 +4dbm

1 0dbm

2 -4dbm

3 -8dbm

4 -12dbm

5 -16dbm

6 -20dbm

7 -30dbm

8 -40dbm

Reset Module Command

Command Format: AT + RESET \ r

Return value: OK \ r

Content: Module reset command, returns OK, the module reset successes. 7-Restore the Default Configuration Commands

Command Format: AT + DEFAULT \ r

Return value: OK \ r

Content: Recover the module configuration parameters to the default parameters, MAC address will also restore to the factory default address, return OK indicates the module successful recovery.

Query Command of Module Version Number

Command Format: AT + VERSION \ r

Return Value: V1.0 \ r

Content: Query module current version, return to module current version V1.0.

Customized Broadcast Data Command

Command Format: AT + ADD = 0123456A \ r

Return value: OK \ r ERROR \ r

Content: Users can add the customized broadcast data in Bluetooth broadcast data, such as adding 0123456A data in Bluetooth broadcast data, returns OK indicates added successfully , returns ERROR indicates failure added, data length may exceed the maximum limit 16byte.

Serial Number Command of Customized Product

Command Format: AT + PID = ABCD \ r

Return value: OK \ r ERROR \ r

Content: customized product serial number added in the broadcast data, returns OK indicates that the custom has been added, add a custom return ERROR indicates failure, possibly because the custom data is beyond the scope required by the serial number, the serial number of the module supports the content within 0000-FFFF.

Setting Command of Bluetooth Broadcast Interval

Command Format: AT + ADP = 500 \ r

Return value: OK \ r ERROR \ r

Contents: Bluetooth Broadcasting valid interval is 100ms-4000ms, if re-configure the Bluetooth radio interval to 500ms, returns OK indicates reset successfully, ERROR indicates reset failed.

Reset Command of Bluetooth Connection Interval

Command Format: AT + CIT = 300 \ r

Return value: OK \ r ERROR \ r

Content: An active Bluetooth connection interval is 20ms-2000ms, if resetting Bluetooth connection time interval to 300ms, returns OK indicates reset successfully, the return ERROR indicates reset failed.

NOTE: The module does not support dynamic modification process connection interval, only work when restart the module after modification.

Setting command of low-power sleep mode

Command Format: AT + SLEEP \ r

Return value: OK \ r

Content: To reduce module power consumption, module in idle state can be used to set to sleep by the sleep command, and then Bluetooth is turned off, power consumption is reduced. Module in sleep mode can be wake-up by an external interrupt, external interrupt wake-foot there are: enable, test, reset three pins, any one external pin interrupt, the module can wake from sleep, wake up way: reset pin falling edge wake up, pin state switches from high level to low level; enable, test Pin rising edge wake up, the pin status is switched from low to high; the module wake-up reset to re-enter the work state.

Test Mode of Transparent Transmission

When the users get the module samples, they always want to first test module Bluetooth functions without the support from hardware serial. According to this usage, the module designed Bluetooth transparent transmission test mode to give a high level signal to the test mode control foot (TEST pin) to control Bluetooth module into the transparent transmission test mode. At this time, the module can normally connect with the mobile device terminal APP through Bluetooth. The module will automatically transmitted back to the mobile terminal equipment after receiving the data transmitted from APP, realize two-way data communication function between Bluetooth module and the mobile device terminal. After the test, released TEST pin high level, re-powering or reset the module to enter normal operation status.

BLE Protocol Description(app port)

[Service UUID: 0x1234 ]

Application Examples of Bluetooth Module

Accessibility BLE-DK, WT51822-DK is tool designed for easy use its Wireless-Tag BLE Bluetooth WT51822-S1/S2/S4AT. You can easily connect the Bluetooth module with PC through the WT51822-DK. The Bluetooth module works as slave device, can be searched and matched by Bluetooth master terminal. After matched, input the data to Bluetooth module via serial port debugging tools and the Bluetooth module resent the data to the master module; at the same time, the Bluetooth module can send the data received from the master module to the serial port debugging tools. Developers can easily check the data content between the Bluetooth module and the master terminal.

The connection method of DEMO-Kit Tools and Bluetooth module: DEMO-Kit Tools interface is the currently popular XBee interface. Bluetooth module connect with Kit Tools by XBee adapter board. Welding the module posted in the corresponding XBee adapter board, and then inserted the adapter board into the Kit tools.

XBee adapter plate shown as below:

DEMO-Kit tool uses a FTDI USB-to-UART chip. so before connecting with PC, you first need to install the FTDI chip driver. After driver installation is successful, connect DEMO-KIT with PC through the USB cable, then the PC side can identify DEMO-Kit tools serial numbers;

Open the serial debugging tools in PC terminal, for example, the serial debugging assistant, the port number is FTDI Chip mapping Virtual COM port number, the serial port parameters set as follows: 9600 baud,; data format is 8 data bits, No parity, 1 stop bit format, and then open the serial port, read and modify the current Bluetooth module settings by AT commands ,

as shown;

Search the slave devices by mobile APP terminal, you can use thepublicly recognized bluetooth test software LightBlue in IOS system, and you can also use our company‟s self-made Blurtooth serial APP testing software in Android system. After searched the device name of Bluetooth module, you can successfully paired by clicking itand establish a Bluetooth connection, and send data to a Bluetooth module through this APP tool to establish data communication between a mobile terminal and Bluetooth modules. A. In the IOS system (only iphone4S or above version phones support Bluetooth 4.0) use LightBlue to test module connect function. Firstly, open iphone Bluetooth, run LightBlue APP, when LightBlue is running, it will automatically search for the slave unit, the slave list will be displayed with some main information, UUID Services, transmitting power, device names etc

Click the slave unit you want to connect, iphone will connect with the salve, afterthis, the program will automatically search all services from slave machine, as shown below.

Enter into the service by clicking the cooresponding service , you can see some characteristics included in the Services, shown as below

Click „Write new value‟, will enter into the communication field of Characteristic, write the input value, as below:

Module will push the data sets to the serial port via DEMO-KIT after receiving the data from LightBlue which can be displayed on the serial debugging tools by PC side:

In the Android system (only Android 4.3 or above systems support Bluetooth 4.0) , you can use our company self-made APP serial debugging tools: Using APP tools to search for Bluetooth devices:

Connect with Bluetooth device, and input data in the serial transmission window, sends data to Bluetooth device, the module will push the data sets to the serial port via DEMO-KIT after receiving the data from LightBlue which can be displayed on the serial debugging tools by PC side:

You can also use PC side debug tool to send data to the APP serial tool by module, APP display window shows the data sent by Module

App serial tool received data and showed in the display window:

It will create more comvenience and shorten the development period of bluetooth project by using our DEMO-KIT tool and self made APP serial debugging tool

User’s Manual for MH-Z Series Infrared CO2 Sensor Module Communication Protocol

1.Profile for the communication protocol

●All the data in this communication protocol is hexadecimal.

●The data length is fixed 9 bits.

●Baud rate:9600, data bit:8, stop bit:1, parity bit: none.

2.Command list and meaning.

3.Command list and meaning.

0x86- Read CO2 concentration (for 0-50000ppm range)

CO2 concentration = HIGH *256+ LOW Eg. 01 in hexadecimal is equals to 1 in decimal, F4 in hexadecimal is equals to 244 in decimal. CO2 concentration=01*256+244=500ppm

0x9C- Read CO2 concentration (for 0-150000ppm range)

CO2 concentration= Data 1 << 24 + Data 2 << 16 + Data 3 << 8 + Data 4

Checksum calculation method

Calculating Checksum:

1、Add Byte 1 to Byte 7: 0x01 + 0x86 + 0x00 + 0x00 + 0x00 + 0x00 + 0x00 = 0x87

2、Negative: 0xFF – 0x87 = 0x78

3、Then+1:0x78 + 0x01 = 0x79

C language

char getCheckSum(char *packet)
{
char i, checksum;
for( i = 1; i < 8; i++)
{
checksum += packet[i];
}
checksum = 0xff – checksum;