Seeed Studio MR60BHA1 mmWave Breathing and Heartbeat Module User Manual

June 9, 2024
seeed studio

Seeed Studio logo MR60BHA1 mmWave Breathing and Heartbeat Module
User Manual Seeed Studio MR60BHA1 mmWave Breathing and Heartbeat
Module

MR60BHA1
60GHz mmWave Module – Respiratory
Heartbeat Detection
Sensor User Manual (V1.9)

Overview

This document focuses on the use of the radar, the issues that need to be paid attention to in each phase, to minimize the design cost and increase the stability of the product, and to improve the efficiency of the project completion. This document focuses on the issues that need to be taken into account in each phase, in order to minimize the design cost and increase the stability of the product, and to improve the efficiency of the project completion.
From hardware circuit reference design, radar antenna and housing layout requirements, how to distinguish interference and multi-functional standard UART protocol output. The radar is a self-contained system.
This radar is a self-contained space sensing sensor, which consists of RF antenna, radar chip and high speed MCU. The radar is a self-contained sensor with a combination of RF antenna, radar chip and high-speed main frequency MCU. It can be equipped with a host computer or host computer to flexibly output detection status and data, and meet the needs of several groups of GPIOs. It can be equipped with a host computer or a host computer to flexibly output detection status and data, and meet several groups of GPIOs for user customization and development.

Working Principle

Seeed Studio MR60BHA1 mmWave Breathing and Heartbeat Module - Working
Principle

The radar transmits a 60G band millimeter wave signal, and the target reflects the electromagnetic wave signal, and demodulates it from the transmitted signal. The signal is demodulated, then amplified, filtered, ADC and other processing to obtain the echo demodulation signal data. In the MCU unit, the amplitude, frequency and phase of the echo signal are decoded, and the target signal is finally decoded. The target parameters (sleep quality, respiration, tossing, body movement, etc.) are measured and evaluated in the MCU.

Hardware Design Considerations

The rated supply voltage of the radar needs to meet 4.9 – 6V, and the rated current needs to be 200mA or more input is required. The power supply is designed to have a ripple of 100mv.
2.1 Power supply can refer to the following circuit design
Seeed Studio MR60BHA1 mmWave Breathing and Heartbeat Module - Power
supply
Seeed Studio
MR60BHA1 mmWave Breathing and Heartbeat Module - Working Principle
1

2.2 Wiring DiagramSeeed Studio MR60BHA1 mmWave Breathing and Heartbeat
Module - wiring diagram

Figure 3 Module and peripheral wiring diagram

Antenna and housing layout requirements

PCBA: Need to keep the radar patch height 1mm higher than other devices
Housing structure: need to keep the radar antenna surface and the housing surface have 2 – 5mm distance
Housing detection surface: non-metallic housing, need to be straight to avoid bending surface, affect the performance of the whole sweep surface area Performance
Seeed Studio MR60BHA1 mmWave Breathing and Heartbeat Module - layout
requirements

Electrostatic protection

Radar products with electrostatic sensitive circuitry inside, vulnerable to electrostatic hazards, so need to be in transport, storage, work and handling process to do a good job of electrostatic protection, do not touch the grasp of the radar hands. Therefore, it is necessary to do a good job in the transportation, storage, work and picking up process of static protection, do not touch and grab the radar module antenna surface and connector pins, only touch the corners. Do not touch the surface of the radar module antenna and connector pins with your hands, only touch the corners.
When handling the radar sensor, please wear anti-static gloves as much as possible.

Detailed explanation of functions

5.1 Function Description

Function Status change time/function explanation
DP1: occupied/unoccupied From unoccupied to occupied, report within 0.5s From

occupied to unoccupied, report within 40 s
DP2: Some people are stationary / Some people are active| Static dynamic switching, report within 0.5 seconds
DP3: Heart rate| Outputs data once every 3 seconds, in units of times/minute
DP4: Body movement parameters 0 – 100| Output data once every 5 seconds [Refer to: Body motion amplitude parameter output instructions].
---|---
DP5: In-bed/out-of-bed| From bed-out to bed-in, 1 minute report in the presence of someone

From bed-in to bed-out, about 40s output of bed-out status

DP6: Sleep state (awake/light sleep/deep sleep)| In the bed state, 10 minutes to determine and report sleep status once
DP7: Sleep quality score| At the end of the sleep process, a score of 0 to 100 is reported for the sleep period
DP8: Respiratory/heart rate rate| Outputs data once every 3 seconds, in units of times/minute

Protocol Description

This protocol is applied to the communication between the 60G millimeter wave respiratory sleep detection radar and the host computer.
This protocol outlines the radar workflow, briefly introduces the interface protocol composition architecture, and The interface protocol structure is briefly introduced, and the related radar work requires control commands and data.
Interface level: TTL
Baud rate: 115200bps
Stop bit: 1
Data bits: 8
Parity check: None

Communication command and parameter definition

7.1 Frame structure definition and description
7.1.1 Definition of frame structure

Frame header| Control word| Command word| Length identifier| Data| Checksum| End of frame
---|---|---|---|---|---|---
0x53 0x59| Control| Command| Lenth_H| Lenth_L| Data| Sum| 0x54 0x43
2 Byte| 1 Byte| 1 Byte| 1 Byte| 1 Byte| n Byte| 1 Byte| 2 Byte

7.1.2 Description of the frame structure
a. Frame header: 2 Byte, fixed to 0x53,0x59;
b. Control word: 1 Byte
(0x01 – heartbeat packet identification, 0x02 – product information, 0x03 – OTA upgrade, 0x05 – operation status, 0x07 – radar detection range information, 0x80 – human presence, 0x81 – breath detection, 0x84 – sleep monitoring, 0x85 – heart rate monitoring)
c. Command word: 1 Byte (to identify the current data content)
d. Length identification: 2 Byte, equal to the specific byte length of the data
e. Data: n Byte, defined according to the actual function
f. Checksum: 1 Byte. (Calculation method of checksum: “frame header + control word + command word + length identifier + data” summed to the lower eight bits) g. End of frame: 2Byte, fixed to 0X54,0X43;
7.2 Description of address assignment and data information

Function Category| Function Description| Transfer direction| Frame header| Control word| Command word| Length Identification| Data| Checksum field| End of frame| Note
---|---|---|---|---|---|---|---|---|---|---
System Functions| Heartbeat Pack Report| Report| 0x53 0x59| 0x01| 0x01| 0x00| 0x01| 0F| sum| 0x54 0x43|
Heartbeat Package Inquiry| Send| 0x53 0x59| 0x01| 0x80| 0x00| 0x01| 0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x01| 0x80| 0x00| 0x01| 0F| sum| 0x54 0x43|

Module Reset

| Send| 0x53 0x59| 0x01| 0x02| 0x00| 0x01| 0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x01| 0x02| 0x00| 0x01| 0F| sum| 0x54 0x43|
Information Inquiry

Product Information

| Product Model| Send| 0x53 0x59| 0x02| 0xA1| 0x00| 0x01| 0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x02| 0xA1| 0x00| len| len B Product Info| sum| 0x54 0x43|
Product ID| Send| 0x53 0x59| 0x02| 0xA2| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x02| 0xA2| 0x00| len| len B Product ID| sum| 0x54 0x43|
Hardware Model| Send| 0x53 0x59| 0x02| 0xA3| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x02| 0xA3| 0x00| len| len B Hardware model| sum| 0x54 0x43|
Firmware Version| Send| 0x53 0x59| 0x02| 0xA4| 0x00| 0x01| 0F| sum| 0x54 0x43|
Response| 0x530x59| 0x02| 0xA4| 0x00| len| len B Firmware version| sum| 0x54 0x43|

Working Status

| Initialization completion message| Report| 0x53 0x59| 0x05| 0x01| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
---|---|---|---|---|---|---|---|---|---|---|---
Query if initialization is complete| Send| 0x53 0x59| 0x05| 0x81| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x05| 0x81| 0x00| 0x01| 0x01: Completed 0x02: Incomplete| sum| 0x54 0x43|

Radar detection range info

| Out-of-bounds status reporting| Report| 0x53 0x59| 0x07| 0x07| 0x00| 0x01| 0x00: Out of range 0x01: Within range| sum| 0x54 0x43| Report when status changes
Query out-of-bounds status| Send| 0x53 0x59| 0x07| 0x87| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x07| 0x87| 0x00| 0x01| 0x00: Out of range 0x01: Within range| sum| 0x54 0x43|
Proactive reporting of human presence information
 | Human presence detection function switch| Send| 0x53 0x59| 0x80| 0x00| 0x00| 0x01| 0x01: On
0x00: Off| sum| 0x54 0x43|
 | Response| 0x53 0x59| 0x80| 0x00| 0x00| 0x01| 0x01: On
0x00: Off| sum| 0x54 0x43|
Human presence detection function| Human existence information| Report| 0x53 0x59| 0x80| 0x01| 0x00| 0x01| 0x00: Occupied 0x01: Unoccupied| sum| 0x54 0x43| Report when status changes
Human movement information| Report| 0x53 0x59| 0x80| 0x02| 0x00| 0x01| 0x00: None
0x01: Stationary 0x02: Active| sum| 0x54 0x43| Report when status changes
Body movement parameters| Report| 0x53 0x59| 0x80| 0x03| 0x00| 0x01| 1B Body movement parameters| sum| 0x54 0x43| Reported once in 1 second, value range 0-100
Human distance information| Report| 0x53 0x59| 0x80| 0x04| 0x00| 0x02| 2B Human distance| sum| 0x54 0x43| Reported once in 2 seconds, value range 0- 65535, unit cm

Human orientation information

| Report| 0x53 0x59| 0x80| 0x05| 0x00| 0x06| 2B x 2B y 2B z| sum| 0x54 0x43| Reported once in 2 seconds, in centimeters, with positive and negative

position

| Query human presence monitoring function switch| Send| 0x53 0x59| 0x80| 0x80| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
| Response| 0x53 0x59| 0x85| 0x80| 0x00| 0x01| 0x00: Occupied

0x01: Unoccupied

| sum| 0x54 0x43|
Human Presence Informati on Inquiry|

Human Existence Inquiry

| Send| 0x53 0x59| 0x80| 0x81| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x80| 0x81| 0x00| 0x01| 0x00: Occupied 0x01: Unoccupied| sum| 0x54 0x43|

Movement Infomation Inquiry

| Send| 0x53 0x59| 0x80| 0x82| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x80| 0x82| 0x00| 0x01| 0x00: None 0x01: Stationary
0x02: Active|

sum

| 0x54 0x43|

Body movement parameter Inquiry

| Send| 0x53 0x59| 0x80| 0x83| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x80| 0x83| 0x00| 0x01| 1B Body movement parameters| sum| 0x54 0x43| Value range 0-100
Human Distance Inquiry| Send| 0x53 0x59| 0x80| 0x84| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x80| 0x84| 0x00| 0x02| 2B Human distance| sum| 0x54 0x43| Value range 0-65535, unit cm
Human orientation Inquiry| Send| 0x53 0x59| 0x80| 0x85| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x80| 0x85| 0x00| 0x06| 2B x 2B y

2B z

|

sum

| 0x54 0x43| In centimeters, with positive and negative position
Respiratory and heart rate monitoring active reporting and setup
Heart rate monitor function|

Heart rate monitoring function switch

| Send| 0x53 0x59| 0x85| 0x00| 0x00| 0x01| 0x01: On
0x00: Off| sum| 0x54 0x43|
Response| 0x53 0x59| 0x85| 0x00| 0x00| 0x01| 0x01: On
0x00: Off| sum| 0x54 0x43|
Heart rate values| Report| 0x53 0x59| 0x85| 0x02| 0x00| 0x01| 1B Heart rate| sum| 0x54 0x43| Reported once every 3 seconds, value range 0-100
Heart rate waveform| Report| 0x53 0x59| 0x85| 0x05| 0x00| 0x05| 5B Heart rate waveform| sum| 0x54 0x43| Reported once in 1 second, value range 0-2555 bytes represent 5 values in 1s in real time, and the waveform is a sine wave with a median of 128, i.e. when the heart rate intensity is equal to 0, it will
be displayed as 128
Heart rate monitor function| Information Inquiry
---|---
Checking heart rate monitoring switch status| Send| 0x53 0x59| 0x85| 0x80| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x85| 0x80| 0x00| 0x01| 0x01: On

0x00: Off

| sum| 0x54 0x43|
Heart rate query| Send| 0x53 0x59| 0x85| 0x82| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x85| 0x82| 0x00| 0x01| 1B Heart rate| sum| 0x54 0x43| value range 0-100
Heart rate waveform query| Send| 0x53 0x59| 0x85| 0x85| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x85| 0x85| 0x00| 0x05| 5B Heart rate waveform| sum| 0x54 0x43| value range 0-255
Respiratory monitoring report and setup
Respiratory monitoring function| Respiratory monitoring function switch| Send| 0x53 0x59| 0x81| 0x00| 0x00| 0x01| 0x01: On

0x00: Off

| sum| 0x54
0x43|
Response| 0x53 0x59| 0x81| 0x00| 0x00| 0x01| 0x01: On
0x00: Off| sum| 0x54 0x43|
Breathing Information| Report| 0x53 0x59| 0x81| 0x01| 0x00| 0x01| 0x01: Normal
0x02: Fast breathing
0x03: Slow breathing 0x04: None| sum| 0x54 0x43| Report when status changes
Breathing values| Report| 0x53 0x59| 0x81| 0x01| 0x00| 0x01| 1B Breathing value| sum| 0x54 0x43| Reported once every 3 seconds, value range 0- 25
Breathing waveform| Report| 0x53 0x59| 0x81| 0x02| 0x00| 0x05| 5B Breathing waveform| sum| 0x54 0x43| Reported once in 1 second, value range 0- 25 5 bytes represent 5 values in 1s in real time, and the waveform is a sine wave with a median of 128, i.e. when the heart rate intensity is equal to 0, it will be
displayed as 128
Information Inquiry
Inquiry  respiratory  monitoring function switch| Send| 0x53 0x59| 0x81| 0x80| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x81| 0x80| 0x00| 0x01| 0x01: On

0x00: Off

| sum| 0x54 0x43|
Query Breathing Information| Send| 0x53 0x59| 0x81| 0x81| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x81| 0x81| 0x00| 0x01| 0x01: Normal
0x02: Fast breathing 0x03: Slow breathing 0x04: None|

sum

|

0x54 0x43

|
Query breathing values| Send| 0x53 0x59| 0x81| 0x82| 0x00| 0x01| 0x0F| sum| 0x54
0x43|
Response| 0x53 0x59| 0x81| 0x82| 0x00| 0x01| 1B Breathing value| sum| 0x54 0x43| value range 0-25
Query respiratory waveform| Send| 0x53 0x59| 0x81| 0x85| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x81| 0x85| 0x00| 0x05| 5B Breathing
waveform| sum| 0x54
0x43| value range 0-255
Sleep monitoring reporting and setup
Sleep monitoring function| Sleep monitoring function switch| Send| 0x53 0x59| 0x84| 0x00| 0x00| 0x01| 0x01: On
0x00: Off| sum| 0x54 0x43|
Response| 0x53 0x59| 0x84| 0x00| 0x00| 0x01| 0x01: On
0x00: Off| sum| 0x54
0x43|
Bed-in/bed-out status| Report| 0x53 0x59| 0x84| 0x01| 0x00| 0x01| 0x00: Bed- out 0x01: Bed-in
0x02: None (Displayed when real-time data transfer mode is on)| sum| 0x54 0x43| Report when status changes
Sleep status| Report| 0x53 0x59| 0x84| 0x02| 0x00| 0x01| 0x00: Deep sleep 0x01: Light sleep 0x02: Awake
0x03: None (Displayed when out of bed/real time data transfer mode is on)| sum| 0x54 0x43| Reported once every 10 minutes
Duration of sobriety| Report| 0x53 0x59| 0x84| 0x03| 0x00| 0x02| 2 Byte Awake time| sum| 0x54 0x43| Into bed state, follow 10 minutes of sleep state output corresponding to the length of time. Value range: 0-65535, unit: min
 | Duration of light sleep| Report| 0x53 0x59| 0x84| 0x04| 0x00| 0x02| 2 Byte light sleep time| sum| 0x54 0x43| Into bed state, follow 10 minutes of sleep state output corresponding to the length of time. Value range: 0-65535, unit: min
---|---|---|---|---|---|---|---|---|---|---|---
 | Duration of deep sleep| Report| 0x53 0x59| 0x84| 0x05| 0x00| 0x02| 2 Byte deep sleep time| sum| 0x54 0x43| Into bed state, follow 10 minutes of sleep state output corresponding to the length of time. Value range:

0-65535, unit: min

 | Sleep quality score| Report| 0x53 0x59| 0x84| 0x06| 0x00| 0x01| 1B sleep quality score| sum| 0x54 0x43| Reported at the end of sleep, value range 0-100, unit: minutes.
 | Sleep integrated state| Report| 0x53 0x59| 0x84| 0x0C|

0x00

| 0x08| 1B Human exists 1B Sleep state 1B Average breathing
1B Average heart rate
1B Number of turning
1B Percentage of significant body movements
1B Percentage of small body movements

1B Number of respiratory pauses

|

sum

|

0x54 0x43

| Reported every 10 minutes Human exists: 0x01 occupied, 0x00 unoccupied Sleep state: 0x03 out of bed, 0x02 awake, 0x01 light sleep, 0x00 deep sleep Average heart rate and respiration: average over 10 minutes
Number of turning: The number of rolls in light or deep sleep
Percentage of body movements: value range 0- 100
Number of respiratory pauses: Number of pauses in breathing in 10 minutes
| |  |  |  |  |  |  | 1B Sleep quality score
2B Total hours of sleep
1B Percentage of waking hours
1B Percentage of light sleep1B Percentage of deep sleep
1B Length of time out of bed1B Number of times out of bed
1B Number of turning
1B Averagebreathing
1B Average heart rate1B Number of respiratorypauses (reserved
parameter)|  |  | Report sleep statistics for the entire night when the sleep process is judged to be over.
Sleep monitoring function| Analysis of sleep quality| Report| 0x53 0x59| 0x84| 0x0D| 0x00| 0x0C| sum| 0x54 0x43| Sleep quality score: 0-100 Total hours of sleep: 0- 65535 units: min Percentage of wake/light/deep sleep: 0-100 Length of time out of bed: 0- 255
Number of times out of bed/turning: 0-255
Average breathing: 0-25 Average heart rate: 0-100 Number of respiratory pauses: 0-10 (Not available)
 | Abnormal sleep conditions| Report| 0x53 0x59| 0x84| 0x0E| 0x00| 0x01| 0x00: Less than 4 hours of sleep 0x01: More than 12 hours of sleep 0x02: No one detected for a long time 0x03: None| sum| 0x54 0x43| When the sleep duration is less than 4 hours or more than 12 hours the abnormal state is reported. If there is no one in the sleep state for a long time, the abnormal status is reported.
| Reporting mode selection| Report| 0x53 0x59| 0x84| 0x0F| 0x00| 0x01| 0x00: Real-time data transfer mode
0x01: Sleep state transmission mode| sum| 0x54 0x43|
Report| 0x53 0x59| 0x84| 0x0F| 0x00| 0x01| 0x00: Real-time data transfermode
0x01: Sleep state transmission mode| sum| 0x54 0x43|
 | Information Inquiry
 | Query sleep monitoring function switch
status| Send| 0x53 0x59| 0x84| 0x80| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x84| 0x80| 0x00| 0x01| 0x01: On
0x00: Off| sum| 0x54 0x43|
 |

Query Bed- in/bed-out status

| Send| 0x53 0x59| 0x84| 0x81| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x84| 0x81| 0x00| 0x01| 0x00: Bed-out0x01: Bed-in| sum| 0x54
0x43|

Sleep monitoring function

| Query Sleep status| Send| 0x53 0x59| 0x84| 0x82| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
---|---|---|---|---|---|---|---|---|---|---|---
Response| 0x53 0x59| 0x84| 0x82| 0x00| 0x01| 0x00: Deep sleep 0x01: Light sleep 0x02: Awake
0x03: None| sum| 0x54 0x43|
Query duration of sobriety| Send| 0x53 0x59| 0x84| 0x83| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x84| 0x83| 0x00| 0x02| 2 Byte Awake time| sum| 0x54 0x43|
Query duration of light sleep| Send| 0x53 0x59| 0x84| 0x84| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x84| 0x84| 0x00| 0x02| 2 Byte light sleep time| sum| 0x54 0x43|
Query duration of deep sleep| Send| 0x53 0x59| 0x84| 0x85| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x84| 0x85| 0x00| 0x02| 2 Byte deep sleep time| sum| 0x54 0x43|
Query sleep quality score| Send| 0x53 0x59| 0x84| 0x86| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x84| 0x86| 0x00| 0x01| 1B sleep quality score| sum| 0x54 0x43|
Query reporting mode| Send| 0x53 0x59| 0x84| 0x8C| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x84| 0x8C| 0x00| 0x01| 0x00: Real-time data transfer mode
0x01: Sleep state
transmission mode|

sum

|

0x54 0x43

|
Query sleep integrated state| Send| 0x53 0x59| 0x84| 0x8D| 0x00| 0x01| 0x0F| sum| 0x54
0x43|
Response| 0x53 0x59| 0x84| 0x8D| 0x00| 0x08| 1B Human exists 1B Sleep state 1B Average breathing
1B Average heart rate
1B Number of turning
1B Percentage of significant
body movements
1B Percentage of small body movements
1B Number of
respiratory pauses| sum| 0x54 0x43|

Query abnormal sleep conditions

| Send| 0x53 0x59| 0x84| 0x8E| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x84| 0x8E| 0x00| 0x01| 0x00: Less than 4 hours of sleep 0x01: More than 12 hours of sleep 0x02: No one detected for a long time
0x03: None| sum| 0x54 0x43|
Query sleep statistics| Send| 0x53 0x59| 0x84| 0x8F| 0x00| 0x01| 0x0F| sum| 0x54 0x43|
Response| 0x53 0x59| 0x84| 0x8F| 0x00| 0x0C| 1B Sleep quality score

2B Total hours of sleep

1B Percentage of waking hours
1B Percentage of light sleep
1B Percentage of deep sleep
1B Length of time out of bed1B Number of times out of bed1B Number of turning
1B Average breathing
1B Average heart rate
1B Number of respiratory pauses (reserved parameter)

| sum| 0x54 0x43|
OTA| Start OTA upgrade| Send| 0x53 0x59| 0x03| 0x01| 0x00| 0x13| 4B Firmware package size + 15B Firmware version number| sum| 0x54 0x43|
---|---|---|---|---|---|---|---|---|---|---|---
Response| 0x53 0x59| 0x03| 0x01| 0x00| 0x04| 4B Transfer upgrade package size per frame| sum| 0x54 0x43| The host computer will follow this the size of the response at this point to determine how long the how long a firmware packet needs to be sent information
Upgrade package transmission| Send| 0x53 0x59| 0x03| 0x02| 0x00| len+4| 4B Package offset address + len B Data Packages| sum| 0x54 0x43|
Response| 0x53 0x59| 0x03| 0x02| 0x00| 0x01| 0x01: Received successfully
0x00: Receive Failure|

sum

|

0x54 0x43

|
Ending the OTA upgrade| Send| 0x53 0x59| 0x03| 0x03| 0x00| 0x01| 0x01: Firmware packag edelivery completed 0x00: Firmware packag edelivery
not completed| sum| 0x54 0x43|
Response| 0x53 0x59| 0x03| 0x03| 0x00| 0x01| 0x0F| sum| 0x54 0x43|

Appendix 1: About the calculation of check digit

Let’s take the command to send a human presence information query as an example.
The data construction for the presence information query confirmed by the protocol table above is
Frame header: 0x53 0x59
Control word: 0x80
Command word: 0x81
Length identifier: 0x00 0x01
Data: 0x0F
Checksum: 1Byte (SUM)
End of frame: 0x54 0x43
Combined into a complete instruction as follows
53 59 80 81 00 01 0F sum 54 43
Check digit sum : 0x53 + 0x59 + 0x80 + 0x81 + 0x01 + 0x0F
(0x53 + 0x59 + 0x80 + 0x81 + 0x00 + 0x01 + 0x0F) = 0x01BD
The lower byte is sum = 0xBD
So the complete existence information query instruction is: 53 59 80 81 00 01 0F BD 54

Read User Manual Online (PDF format)

Loading......

Download This Manual (PDF format)

Download this manual  >>

seeed studio User Manuals

Related Manuals