Часы nrf52832 инструкция на русском

скандинавский логотип

NORDIC 52832 Смарт-часы для мужчин

Инструкция NORDIC 52832 Smart Watch для мужчин

Часто задаваемые вопросы покупателя

Если у вас возникла проблема, которая не указана в разделе часто задаваемых вопросов ниже и требует решения, свяжитесь с нашей службой поддержки клиентов, и мы поможем вам решить проблему.

Как включить часы?
Нажмите и удерживайте экран, чтобы включить часы. Перед первым использованием часов в идеале их следует заряжать в течение примерно 2 часов.

Какие приложения можно использовать с этими часами?H-диапазон или MAXTOP. Выберите тот, который вам нравится. (Вы можете найти его, открыв магазин приложений для телефона и выполнив поиск «H Band».)

Как я могу изменить время?
Сначала вы должны открыть приложение (H Band или MAXTOP, выберите тот, который вам нравится), затем подключите часы в приложении, приложение предложит вам открыть Bluetooth вашего телефона, вам нужно согласиться открыть Bluetooth и согласиться для сопряжения телефона и часов, после успешного подключения время часов будет автоматически обновлено до времени телефона, никаких дополнительных настроек не требуется.

Как подключить Bluetooth?
Откройте приложение «MAXTOP» и включите Bluetooth на телефоне, затем добавьте часы, выберите имя устройства «MAXTOP», чтобы подключить его. В приложении вам будет предложено включить Bluetooth, а затем приложение предложит вам выполнить сопряжение телефона.

Почему время на моих часах отличается от времени на моем телефоне и как его изменить?
Время на ваших часах требует, чтобы вы включили Bluetooth на своем телефоне, открыли приложение, а затем подключились к Bluetooth в приложении, чтобы связать часы с телефоном. Таким образом, время на вашем телефоне будет автоматически синхронизироваться с вашими часами, и вам не нужно настраивать его, чтобы изменить его.

Легко ли им пользоваться?
Он относительно прост в использовании. Это полноценный сенсорный экран. В основном интерфейсе проведите пальцем вверх и вниз, чтобы изменить фоновое изображение, и проведите пальцем влево и вправо, чтобы использовать соответствующие функции.

Какие функции есть у этих часов?
Преимущество этих часов в том, что они имеют функцию ЭКГ, измерения кислорода в крови и измерения артериального давления. Есть и другие основные функции, такие как: обнаружение сна, определение частоты сердечных сокращений, шагомер, несколько режимов упражнений.

Эти часы водонепроницаемые?
Да это так. Однако мы бы не рекомендовали носить его в горячей ванне или сауне, а также во время купания в море.

Как его зарядить?
Для зарядки используйте зарядную базу, которая идет в комплекте. (Обратите внимание: если вы чувствуете, что магниты в зарядной базе или зарядном кабеле отталкивают часы, возможно, вы поместили часы в неправильном направлении, попробуйте изменить направление часов, и магниты притянут часы.)

Как долго он заряжается и как долго работает батарея?
Для полной зарядки требуется около 2 часов. Обычно он может работать около 7-10 дней после полной зарядки. Если вы одновременно откроете определение частоты сердечных сокращений в течение 24 часов, тревогу частоты сердечных сокращений, определение артериального давления, определение кислорода в крови и другие функции в приложении или частое обнаружение ЭКГ, это ускорит расход заряда батареи.

Для чего предназначена кнопка сбоку часов?
Это не кнопка, это сенсорная область, используемая для измерения данных ЭКГ.

Какие функции мои часы могут нормально использовать без подключения Bluetooth?
шаги, сон, спорт, частота сердечных сокращений, кровяное давление, кислород в крови, оповещения о сообщениях и т. д. Обратите внимание, однако, что частота сердечных сокращений, артериальное давление и кислород в крови не загружаются в приложение. Функция ЭКГ должна выполняться через приложение. Страница ЭКГ, которая открывается в часах, показывает только значение частоты сердечных сокращений, полные данные ЭКГ должны быть получены через приложение.

Является ли тест сна точным? А если нет данных?
Принцип обнаружения сна заключается в сборе данных в зависимости от состояния пользователя. Поэтому сначала вам нужно носить их правильно, а затем после пробуждения пройти более 100 шагов, прежде чем часы обнаружат, что «вы проснулись». Если вы проснетесь и останетесь в постели без движения, вы можете не увидеть отчет анализа сна. (Примечание: период времени для обнаружения сна: с 6:10 этого дня до XNUMX:XNUMX следующего дня.)

Появятся ли в приложении данные об артериальном давлении, частоте сердечных сокращений и кислороде крови, измеренные на часах?
Почему в моем приложении не отображаются данные ЧСС или АД?
Нет. Артериальное давление, частота сердечных сокращений, кислород и измеренные на часах viewed мгновенно и не загружаются в приложение. Они появятся в приложении только при включении функции автоопределения. Вам нужно открыть в приложении кнопку «Монитор сердечного ритма», «Артериальное давление» или «Обнаружение кислорода». Затем часы автоматически обнаружат и отобразят данные о вашем артериальном давлении или частоте сердечных сокращений за последние 7 раз в приложении. Кислород в крови автоматически определяется ночью, но не днем.

Точно ли эти умные часы измеряют частоту сердечных сокращений и артериальное давление?
Это относительно точно, но значения приведены только для справки и не должны использоваться в качестве профессионального медицинского устройства.

Мое давление 117/74 нормальное? Каков нормальный диапазон значений?
Здравствуйте, ваши значения в норме. Нормальный диапазон артериального давления составляет от 90-135 мм рт.ст. систолического до 60-85 мм рт.ст. диастолического.

Это измеряет артериальное давление?
Данные о артериальном давлении можно прочитать двумя способами. Во-первых, вы можете включить в часах функцию «артериальное давление», а затем подождать около 2 секунд, чтобы сразу увидеть данные своего артериального давления. Во-вторых, вы можете открыть приложение «MAXTOP», нажать на маленький значок посередине, нажать «другие настройки» и открыть «артериальное давление». Эта функция автоматически проверяет данные артериального давления через регулярные промежутки времени и загружает отчет на домашнюю страницу приложения, где вы можете его прочитать.

Что такое нормальный пульс? Могу ли я установить собственное значение сигнала тревоги по частоте сердечных сокращений?
Привет, дорогая, средняя частота сердечных сокращений для взрослых составляет 60-100 ударов в минуту, в среднем 75 ударов в минуту. Для людей, которые постоянно занимаются физическими упражнениями в течение длительного периода времени, или для людей, выполняющих тяжелую физическую работу в течение длительного периода времени, нормально иметь более низкую, чем обычно, частоту сердечных сокращений. Да, вы можете установить значение будильника по частоте сердечных сокращений в приложении в соответствии с состоянием вашего здоровья, и часы предупредят вас, если оно превысит установленное вами значение.

Как использовать функцию кислорода в крови? Каково нормальное значение?
Привет, после правильного ношения наших умных часов включите функцию измерения кислорода в крови в часах и подождите около 10 секунд, процентtagПоявится значение содержания кислорода в крови. У большинства людей уровень кислорода в крови составляет 95-100%. Однако некоторые люди живут нормальной жизнью с уровнем кислорода в крови ниже 95%. Ожидаются немного более низкие значения во время сна, а некоторые пользователи могут получить значения ниже 95%.

Могу ли я получать сообщения из Whatsapp на часы?
Да, вы можете сделать это, открыв «Настройки сообщений» в функции «Настройки» ваших часов и включив кнопку WhatsApp. В дополнение к WhatsApp вы также можете открыть свои любимые, такие как Facebook, Twitter, Instagоперативной памяти и т. д. Однако вы можете получать только последние 3 сообщения, и если вы уже видели сообщение на своем телефоне, оно не будет отображаться на часах. Если вы не видите в нем предпочитаемое программное обеспечение, вы можете открыть «Другое».

Я вижу, что в часах есть функция ЭКГ, что делает эта функция?
Привет, дорогая, ЭКГ означает электрокардиограмма. Это самый простой сердечный тест, который используется для проверки частоты сердечных сокращений, ритма сердца, наличия аритмий, преждевременных ударов и сердечной недостаточности. Функцию ЭКГ в наших часах необходимо использовать вместе с приложением.

Как использовать функцию ЭКГ?
Во-первых, вам нужно правильно носить часы, затем откройте главную страницу приложения, нажмите на страницу функции ЭКГ, нажмите кнопку «Старт» и сразу же приложите палец к кнопке датчика ЭКГ сбоку часов, и приложение начнет обнаружение, пока оно не будет завершено. (Примечание: нет необходимости включать какие-либо функции в часах перед тестом, просто носите их правильно и аккуратно приложите палец к области считывания ЭКГ во время теста, не двигайте пальцем и не нажимайте сильно на область считывания во время теста. тест).

Что делать, если ЭКГ показывает неудачный тест?
Сначала убедитесь, что вы правильно носите часы, затем закройте страницу ЭКГ в приложении, войдите снова и повторите тест. Расслабьтесь перед тестом, следите за тем, чтобы не шевелить пальцами во время теста, не двигайте запястьем и не нажимайте сильно на область считывания ЭКГ, просто аккуратно положите его на область считывания. Если вы по-прежнему не проходите тест, свяжитесь с нами, и мы загрузим видео для справки.

Что делать, если ЭКГ показывает «отведение»?
Возможно, контакт плохой, и если кожа слишком сухая, это может повлиять на тест зоны чувствительности. Перед тестом можно нанести на запястье немного крема для рук или средства на основе геля, а затем надеть часы. Также возможно, что вы нажали кнопку «Старт» на странице ЭКГ, но вовремя не приложили палец к сенсорной области сбоку часов. Вы можете выйти со страницы ЭКГ, войти снова и снова начать тест.

Как использовать функцию SpO2 и почему в моем приложении нет данных SpO2?
Есть 2 способа проверить кислород крови. Первый способ — открыть значок кислорода в крови в часах после правильного ношения часов и подождать около 15 секунд, тест будет доступен сразу, но эти данные не будут отображаться в приложении. Второй способ — открыть приложение после ношения часов и включить кнопку автоматического определения кислорода в крови в других настройках. После включения часы будут автоматически тестироваться с 0:00 до 7:00 следующего дня, и данные будут отображаться в приложении.

Мое сердце не в порядке, и я люблю заниматься спортом, но я не знаю, когда отдыхать.
Рекомендуется включить автоматическое определение частоты сердечных сокращений в приложении и установить значение сигнала тревоги по частоте сердечных сокращений в зависимости от состояния вашего здоровья, чтобы, если вы тренируетесь со слишком высокой частотой сердечных сокращений, часы предупреждали вас о том, что вам следует отдохнуть. и успокоить сердечный ритм. Также рекомендуется проверять данные ЭКГ раз в неделю. Стоит отметить, что включение функции автоматического определения сердечного ритма может быть довольно энергоемким.

Документы / Ресурсы

RF-Star nRF52832 Manual

  • Contents

  • Table of Contents

  • Troubleshooting

  • Bookmarks

Quick Links

nRF52832 Bluetooth Low Energy

Master-Slave Module and Protocol

Version: V1.3

Shenzhen RF-star Technology Co., Ltd.

th

Sep. 11

, 2020

loading

Related Manuals for RF-Star nRF52832

Summary of Contents for RF-Star nRF52832

  • Page 1
    Bluetooth Low Energy Master-Slave Module and Protocol Version: V1.3 Shenzhen RF-star Technology Co., Ltd. Sep. 11 , 2020…
  • Page 2
    V1.3 — Sep., 2020 RF-BM-ND04 RF-BM-ND04I RF-BM-ND08 Shenzhen RF-star Technology Co., Ltd. Page 1 of 58…
  • Page 3: Table Of Contents

    6.3 Detailed AT Command ……………………… 21 • Enter AT Command Mode ……………………21 • Exit AT Command Mode ……………………. 21 • Device Name …………………………. 21 • Firmware Version ……………………….22 • MAC Address ………………………… 22 Shenzhen RF-star Technology Co., Ltd. Page 2 of 58…

  • Page 4
    9. Master Reference Code (Transparent Transmission) ………………. 50 10 Application, Implementation, and Layout ………………….51 10.1Antenna …………………………..51 10.2 Reference Design ……………………….52 10.3 Basic Operation of Hardware Design ………………..53 Shenzhen RF-star Technology Co., Ltd. Page 3 of 58…
  • Page 5: Table Of Tables

    11 Revision History …………………………..57 12 Contact Us …………………………….58 Table of Tables Table 1. Power Consumption of nRF52832 ………………..8 Table 2. Pin Functions of RF-BM-ND04(I) ………………… 12 Table 3. Pin Functions of RF-BM-ND08(I) ………………… 15 Table 4. AT Command Format Table …………………… 19 Table 5.

  • Page 6: Table Of Figures

    Figure 11. Reference Design of RF-BM-ND04 ……………….. 52 Figure 12. Recommendation of Antenna Layout ………………54 Figure 13. Recommended Reflow for Lead Free Solder …………….. 56 Figure 14. Optional Packaging Mode ………………….56 Shenzhen RF-star Technology Co., Ltd. Page 5 of 58…

  • Page 7: Summary

    RF-star can provide customers with the integration of the entire profiles, applications, radio and BLE protocol stack. With compliance to Bluetooth Low Energy standard, the RF-star’s modules enable the creation of a new market for tiny, cost- effective and power-efficient wireless consumer products such as watches, medical sensors, mice, TV remote controls and fitness trainers.

  • Page 8: Overview

    Support adjust the Bluetooth connection interval and control different transmit rates (dynamic power consumption adjustment) by AT command. 10. Support adjust the transmit power, modify the broadcast interval, modify the serial port baud rate, modify the module Shenzhen RF-star Technology Co., Ltd. Page 7 of 58…

  • Page 9: Supporting Working Mode

    IO change can reach the limit of 50K). 14. Ultra-low working power consumption, the measured power consumption of the module is as follows: Table 1. Power Consumption of nRF52832 Event…

  • Page 10: Default Configuration At Beacon Mode

    (once every 20 s). If the device is not found after the timeout of 3 scans, the master device will enter the slow scan state, that is, the device scans the surrounding devices once every 5 minutes. If the device to be connected is found, reconnect will be conducted. Shenzhen RF-star Technology Co., Ltd. Page 9 of 58…

  • Page 11: Figure 1. Multi-Connection Diagram

    4 devices, so the data source should be included in the data packet, otherwise it cannot be identified which device the data came from. Figure 1. Multi-Connection Diagram Shenzhen RF-star Technology Co., Ltd. Page 10 of 58…

  • Page 12: Package And Pin Assignment

    RF-BM-ND04 is pin to pin compatible with and RF-BM-ND04I. The difference is that the antenna of RF-BM-ND04 is PCB type, while RF-BM-ND04I is IPEX type. Figure 2. PCB Footprint of RF-BM-ND04 Figure 3. PCB Footprint of RF-BM-ND04I Shenzhen RF-star Technology Co., Ltd. Page 11 of 58…

  • Page 13: Table 2. Pin Functions Of Rf-Bm-Nd04(I)

    Figure 4. Pin Assignment of RF-BM-ND04(I) Table 2. Pin Functions of RF-BM-ND04(I) Name Function Description Ground Power supply: 1.7 V ~ 3.6 V. Recommended to 3.3 V. P21 / RST Reset, active low. Shenzhen RF-star Technology Co., Ltd. Page 12 of 58…

  • Page 14
    Broadcast state indicator: in high level during broadcast, in low State indicator level during connection (always on) All parameters will be reset to factory settings after this pin is RESTORE set low for 3 s. Shenzhen RF-star Technology Co., Ltd. Page 13 of 58…
  • Page 15: Rf-Bm-Nd08(I)

    SWD debugging ports are on the bottom side of the module, which is not pull out in the stamp half hole way, please refer to the module pin diagram for details. Figure 5. PCB Footprint of RF-BM-ND08 Figure 6. PCB Footprint of RF-BM-ND08I Shenzhen RF-star Technology Co., Ltd. Page 14 of 58…

  • Page 16: Table 3. Pin Functions Of Rf-Bm-Nd08(I)

    Active on falling edge All parameters will be reset to factory settings after this pin is RESTORE set low for 3 s. (Require ToSend, send request) output signal, used to indicate Shenzhen RF-star Technology Co., Ltd. Page 15 of 58…

  • Page 17
    (Clear ToSend, send permission) input signal, used to judge whether it can send data to the other party, active low. Serial port TX Serial port RX Shenzhen RF-star Technology Co., Ltd. Page 16 of 58…
  • Page 18: Uart Transparent Transmission Protocol (Bridge Mode)

    5. If the mater BRTS is being kept a low level, the Bluetooth module will always be in serial port receiving mode and the power consumption will be high. Shenzhen RF-star Technology Co., Ltd. Page 17 of 58…

  • Page 19: Ble Protocol Specification (App Interface)

    (do not use +++ to enter the command mode), and users can operate without sending Remarks carriage returns and line feeds (CRLF). The serial port must end with a CRLF. The master needs to open notify to receive the data sent by the module. Shenzhen RF-star Technology Co., Ltd. Page 18 of 58…

  • Page 20: At Command

    Query / set MAC address. Take effect after restart, save after power off. Take effect immediately, do not save after AT+ECHO Query / set whether the serial port is echoed. power off. Shenzhen RF-star Technology Co., Ltd. Page 19 of 58…

  • Page 21
    Query / set device power. Take effect after restart, save after power off. Query / set sleep status (Only effective for one Take effect immediately, do not save after AT+SLEEP time). power off. Shenzhen RF-star Technology Co., Ltd. Page 20 of 58…
  • Page 22: Detailed At Command

    Need to exit AT command mode to switch to transparent transmission mode. • Exit AT Command Mode AT+EXIT Function Exit AT command mode. Example AT+EXIT Return Value Remark • Device Name AT+NAME? Function Query device name. Example AT+NAME? AT+NAME=RF-STAR-SMMT Return Value Remark Shenzhen RF-star Technology Co., Ltd. Page 21 of 58…

  • Page 23: Firmware Version

    Set device MAC address. Example AT+MAC=F1:F2:F3:F4:F5:F6 Return Value Remark Take effect after restart, save after power off. • Serial Port Echo AT+ECHO=? Function Query parameter range of this command. Example AT+ECHO=? Shenzhen RF-star Technology Co., Ltd. Page 22 of 58…

  • Page 24: Device Status Display

    This command has two parameters: Remark 0: Disable device status display. 1: Enable device status display. AT+STATUS? Function Query the current display state of device status. Example AT+STATUS? Return Value AT+STATUS=1 Shenzhen RF-star Technology Co., Ltd. Page 23 of 58…

  • Page 25: Broadcast

    Function Query broadcast parameters. Example AT+ADS? AT+ADS=1,1,200 Return Value Enable broadcast. Remark Device is connectable. Broadcast interval is 200 ms. AT+ADS= Function Set broadcast parameters. Example AT+ADS=1, 0, 500 Return Value Shenzhen RF-star Technology Co., Ltd. Page 24 of 58…

  • Page 26: Connection Interval

    20 ms (minimum 8 ms). After the connection interval takes effect, the connection interval will be coordinated according to different mobile phones, up to the «set connection interval*3». Shenzhen RF-star Technology Co., Ltd. Page 25 of 58…

  • Page 27: Device Role

    The device will work in Beacon mode. Remark Take effect after restart, save after power off. • Slave Service AT+SERVICE=? Function Query parameter range of this command. Example AT+SERVICE=? Return Value AT+SERVICE=<0,1>,<0-FFFF>,<0-FFFF>,<0-FFFF>,<0-FFFF>,<0-FF…> Shenzhen RF-star Technology Co., Ltd. Page 26 of 58…

  • Page 28: Master Scan

    Example AT+SCAN=? Return Value AT+SCAN=[0, 1], <1-65535> This command has two parameters: Remark Parameter 1: Scan status of current device. 0: Stop scanning. 1. Scanning. Parameter 2: Timeout time (in s). Shenzhen RF-star Technology Co., Ltd. Page 27 of 58…

  • Page 29
    Start the scan and set the scan timeout for 10 seconds, and stop the scan when the number of Remark devices reaches 20 or the scan time reaches the set time. Shenzhen RF-star Technology Co., Ltd. Page 28 of 58…
  • Page 30: Master Connection

    Parameter 2: Disconnect the current slave devices which are connect to the master device. Query device handle by AT+CNT_LIST. AT+DISCONNECT Function Disconnect all the current connected device. Example AT+DISCONNECT Return Value F1:F2:F3:F4:F5:F6 DISCONNECTED Shenzhen RF-star Technology Co., Ltd. Page 29 of 58…

  • Page 31: Automatically Reconnection

    Automatically reconnection function of the device with MAC address FF:1C:2B:D1:4C:BD is Remark enabled, while MAC address 0,EB:71:5B:DE:08:87 is disabled. Take effect after restart, save after power off. AT+AUTO_CNT= Function Set automatically reconnection function. Shenzhen RF-star Technology Co., Ltd. Page 30 of 58…

  • Page 32: Specify The Role Of Sending Data

    Function Set slave role or master role to transmit data. Example AT+TTM_ROLE=0 Return Value The device transmits data in slave mode. Remark Take effect immediately, do not save after power off. Shenzhen RF-star Technology Co., Ltd. Page 31 of 58…

  • Page 33: Query Current Connected Devices

    There are currently two handle values available, 0 and 1. This handle value is assigned by the Remark system. AT+TTM_HANDLE= Function Designate the slave role for data transmission under multi-connection. Example AT+TTM_HANDLE=0 Return Value Remark Set the slave device with handle value of a to transmit data. Shenzhen RF-star Technology Co., Ltd. Page 32 of 58…

  • Page 34: Delete Device

    Turn on the observer function, and always scan and print the slave devices. Stop scanning by Remark sending «AT+OBSERVER=0». Among them, «adv pk» is the broadcast packet data, and «rsp pk» is the response packet Shenzhen RF-star Technology Co., Ltd. Page 33 of 58…

  • Page 35: Beacon

    Set Beacon company ID: F1F2. Remark Set reference RSSI: -60. Take effect after restart, save after power off. • Tx Power AT+POWER=? Function Query parameter range of this command. Example AT+POWER=? Return Value AT+POWER=[-40,-20,-16,-12,-8,-4,0,3,4] Shenzhen RF-star Technology Co., Ltd. Page 34 of 58…

  • Page 36: Sleep Status

    Parameter 1: Serial port function switch. Parameter 2: BLE function switch. Remark Parameter 3: Serial port wake-up function switch. 0: Disable. 1: Enable. AT+SLEEP? Function Query current sleep status of the device. Example AT+SLEEP? Shenzhen RF-star Technology Co., Ltd. Page 35 of 58…

  • Page 37: Baud Rate

    Query current baud rate of the device. Example AT+UART? AT+UART=115200 Return Value Remark The current baud rate is 115200 bps. AT+UART= Function Set baud rate of the device. Example AT+UART=9600 Return Value Shenzhen RF-star Technology Co., Ltd. Page 36 of 58…

  • Page 38: User Authentication

    Set user authentication. Example AT+AUTH=1,12GH**__)),10 Return Value Enable authentication. Set the key as “12GH**__)). Remark The valid time of user authentication is 10 s. Take effect after restart, save after power off. Shenzhen RF-star Technology Co., Ltd. Page 37 of 58…

  • Page 39: Restart Device

    Return Value Remark Restart the device. Take effect immediately. • Reset Device AT+RESET Function Reset device. Example AT+RESET Return Value Remark Device parameters restore factory settings and restart. Take effect immediately. Shenzhen RF-star Technology Co., Ltd. Page 38 of 58…

  • Page 40: Transparent Transmission Test

    Click on one of the BLE devices to start the connection process (The default factory name of ND04C(I)/ND08C(I) is: RF-STAR-SMMT). After the connection is successful, the Service UUID of the module appears on the mobile phone APP side, and S:CONNECTED appears on the computer serial port debugging tool side.

  • Page 41
    V1.3 — Sep., 2020 Shenzhen RF-star Technology Co., Ltd. Page 40 of 58…
  • Page 42: Test By Pc End

    PC with standard Type-A USB interface ⚫ RF-DG-40A (nRF52840 dongle) ⚫ RF-BM-ND04C(I) / RF-BM-BD08C(I) 2. Software preparation ⚫ nRF Connect for Desktop Download address: https://www.nordicsemi.com/Software-and-tools/Development-Tools/nRF-Connect-for-desktop/Download#infotabs ⚫ Operation system: MacOS, Linux, or Windows 7 or later Shenzhen RF-star Technology Co., Ltd. Page 41 of 58…

  • Page 43: Connection Steps

    3. After the Dongle device is selected successfully, you can click Generic Access to view the related information of the device as the host. Then click the Start scan button to start scanning for broadcast devices, and then the scanned Shenzhen RF-star Technology Co., Ltd. Page 42 of 58…

  • Page 44
    Connect (ND04C(I)/ND08C(I)) The default factory name is: RF-STAR-SMMT, the following takes the RF-BM-ND04C module as the slave device as an example, referred to as ND04C), as shown in the figure below, Dongle has successfully connected the slave device ND04C: 4.
  • Page 45
    V1.3 — Sep., 2020 Shenzhen RF-star Technology Co., Ltd. Page 44 of 58…
  • Page 46
    V1.3 — Sep., 2020 Shenzhen RF-star Technology Co., Ltd. Page 45 of 58…
  • Page 47
    V1.3 — Sep., 2020 Shenzhen RF-star Technology Co., Ltd. Page 46 of 58…
  • Page 48: Ios App Programming Reference

    * @param characteristic The characteristic for which the value needs to be read. * @discussion Fetch the value of a characteristic. * The relevant delegate callback will then be invoked with the status of the request. * @see peripheral:didUpdateValueForCharacteristic:error: Shenzhen RF-star Technology Co., Ltd. Page 47 of 58…

  • Page 49
    (BLE Transmit Module v1.29) for transparent transmission in iOS, in which it realizes, for FFE9 and FFE4, the operations of data transmit from BLE to serial port and from serial port to BLE characteristics (notify and write). Other Shenzhen RF-star Technology Co., Ltd. Page 48 of 58…
  • Page 50
    V1.3 — Sep., 2020 controls on direct-drive functions are similar, all by reading or writing to certain characteristic. The only difference is the characteristic UUID and the Bytes of reading and writing operations. Shenzhen RF-star Technology Co., Ltd. Page 49 of 58…
  • Page 51: Master Reference Code (Transparent Transmission)

    //Delay for 50 ms mcu_delay_ms(50)); While(1){ //Aquire whether the CTS status is loe level If(get_cts_state()==0){ //Print the data sent from BLE Mcu_printf_string(mcu-uart_read_data()); //Delay for 50 ms Mcu_delay-ms(50); //Send test data to BLE Mcu_send_to_ble_string(Test data.\r\n”); Shenzhen RF-star Technology Co., Ltd. Page 50 of 58…

  • Page 52: Application, Implementation, And Layout

    Figure 9. Specification of IPEX Wire Antenna output mode change: The module has two antenna output modes: IPEX connector output and stamp half-hole antenna output (ANT pin, see pin function table for details). Shenzhen RF-star Technology Co., Ltd. Page 51 of 58…

  • Page 53: Reference Design

    C2 and weld C2. The locations of C1 and C2 (8 pF) are shown in the figure below. Figure 10. Antenna Output Mode Change 10.2 Reference Design Figure 11. Reference Design of RF-BM-ND04 Shenzhen RF-star Technology Co., Ltd. Page 52 of 58…

  • Page 54: Basic Operation Of Hardware Design

    The inverted-F antenna position on PCB is free space electromagnetic radiation. The location and layout of antenna is a key factor to increase the data rate and transmission range. Therefore, the layout of the module antenna location and routing is recommended as follows: Shenzhen RF-star Technology Co., Ltd. Page 53 of 58…

  • Page 55: Trouble Shooting

    1. Please ensure the supply voltage is between the recommended values. The module will be permanently damaged if the voltage exceeds the maximum value. Please ensure the stable power supply and no frequently fluctuated Shenzhen RF-star Technology Co., Ltd. Page 54 of 58…

  • Page 56: High Bit Error Rate

    3. If the extension wire or feeder wire is of poor quality or too long, the bit error rate will be high. 10.5 Electrostatics Discharge Warnings The module will be damaged for the discharge of static. RF-star suggest that all modules should follow the 3 precautions below: 1.

  • Page 57: Optional Packaging

    Max. 8 minutes 20±10 s 20±10 s Time of Soldering Zone (t Figure 13. Recommended Reflow for Lead Free Solder 10.7 Optional Packaging Figure 14. Optional Packaging Mode Note: Default tray packaging. Shenzhen RF-star Technology Co., Ltd. Page 56 of 58…

  • Page 58: Revision History

    1. The document will be optimized and updated from time to time. Before using this document, please make sure it is the latest version. 2. To obtain the latest document, please download it from the official website: www.szrfstar.com. Shenzhen RF-star Technology Co., Ltd. Page 57 of 58…

  • Page 59: Contact Us

    V1.3 — Sep., 2020 12 Contact Us SHENZHEN RF-STAR TECHNOLOGY CO., LTD. Shenzhen HQ: Add.: Room 601, Block C, Skyworth Building, High-tech Park, Nanshan District, Shenzhen, Guangdong, China Tel.: 86-755-3695 3756 Chengdu Branch: Add.: No. B3-03, Building No.1, Incubation Park, High-Tech District, Chengdu, Sichuan, China, 610000 Tel.: 86-28-6577 5970…

Содержание

  1. Как настроить смарт-часы?
  2. Базовые функции smart watch
  3. Начало работы с устройством
  4. Выбор языка с английского или китайского на русский
  5. Как установить русскую прошивку смарт-часов и сколько это стоит?
  6. Настройки соединения с компьютером
  7. Как принимать звонки и SMS на умных часах?
  8. Как включить/выключить GPS
  9. Управление камерой
  10. Настройки режима энергопотребления (аккумулятора)
  11. Включение вибрации
  12. Как подключить смарт браслет Lefun Health к телефону
  13. Что за смарт браслет Lefun Health?
  14. Каким образом подключить браслет Lefun Health к телефону
  15. Что делать, если браслет «Lefun Health» не видит смартфон
  16. Заключение
  17. Как подключить и настроить фитнес-браслет: пошагово для чайников
  18. Как работает фитнес-браслет
  19. Как включить браслет
  20. Как подготовить браслет и сбросить заводские настройки
  21. Универсальная настройка фитнес-браслета
  22. Как подключить браслет к телефону
  23. Какие функции могут отображаться на экране фитнес-браслета
  24. Входящий вызов
  25. Будильник
  26. Оповещение о бездействии
  27. Уведомления от приложений
  28. Достижение цели

Как настроить смарт-часы?

Русское название «умные часы» — это перевод английского наименования гаджета Smart Watch. В отличие от обычных хронометров девайс синхронизируется со смартфоном, имеет сенсорный экран, выдает владельцу нужную информацию, которая дублируется с телефона или планшета.

Умные часы – это компактный и легкий дубликат мобильного устройства, находящегося всегда на руке. Они способны работать и без связки со смартфоном, применяя опции, отличные от имеющихся в нем.

Базовые функции smart watch

Смарт-часы обладают некоторыми функциями смартфонов, но обладают и прочими опциями, недоступными для телефонов. В набор стандартных функций входят:

  • получение уведомлений из социальных сетей;
  • получение СМС и видимость пропущенных вызовов;
  • входящие письма с е-мейл;
  • календарь и напоминания;
  • часы и будильник;
  • шагомер;
  • пульсометр.

Также смарт-часы могут предупредить, если в телефоне разряжается батарея. Есть множество других функций, благодаря которым пользователи, единожды испытав удобство смарт уотч, уже не представляют себе жизни без них.

Возможности умных часов могут включать в себя целый спектр дополнительных функций, которые значительно облегчают жизнь пользователю:

  • управление умным домом;
  • GPS для отслеживания местоположения;
  • функции антипотери для телефона и самих часов;
  • экстренный вызов;
  • речевой ввод;
  • пульт ДУ и многое другое в зависимости от марки и модели.

Начало работы с устройством

Когда вы достанете часы из коробки, их нужно включить. Обычно кнопка располагается на боку корпуса. Экран активируется движением пальца сверху вниз. После включения гаджет предложит выбрать язык и провести синхронизацию с телефоном.

Для этого нужно установить на смартфон приложение Android Wear. Также убедитесь, что на часах и телефоне включен блютуз.

После установки приложения на смартфон, оно запросит синхронизацию с устройством на платформе Android. Будет выполнен поиск находящихся в зоне действия сети Блютуз устройств. Среди найденных следует выбрать свои часы и подтвердить действие на обоих гаджетах.

Бывает так, что телефон не обнаруживает умные часы. Исправьте ситуацию, расположив устройства близко друг к другу, чтобы между ними не находилось ничего металлического. Затем нужно зарегистрировать смарт-часы. На устройстве открывается приложение SeTracker. В открытом приложении нужно нажать кнопку «регистрация». В списке предложений нужно выбрать нужный язык и заполнить поля:

  1. Лицензионный код.
  2. Аккаунт – придумываете самостоятельно.
  3. Логин – имя в сети.
  4. Номер телефона. Для подтверждения регистрации на него придет СМС.
  5. Придумать пароль и его продублировать.

После этого программа предложит вам перенастроить устройство, для чего и направит вас в соответствующее меню.

Выбор языка с английского или китайского на русский

В первом меню, когда только включили умные часы, в списке доступных языков может не оказаться русского. Большинство моделей, которые вы приобрели в салонах сотовой связи или магазинах электроники, уже адаптированы для России. Английский или китайский языки присутствуют в большинстве своем в моделях, заказанных по интернету из-за границы.

Как установить русскую прошивку смарт-часов и сколько это стоит?

Прошить умные часы некоторых моделей можно бесплатно самостоятельно. Для этого необходимо выполнить стандартные настройки, воспользовавшись одним из предложенных языков, а затем скачать приложение, которое соответствует вашей модели гаджета. Затем распаковать русификатор и перезапустить часы.

Если для вашей модели не предусмотрен русскоязычный пакет, то часы можно отнести в мастерскую или салон, где чинят смартфоны. Обычно стоимость русификации колеблется от 500 до 1500 рублей. Цена зависит от модели часов и региона проживания.

Настройки соединения с компьютером

В подключении смарт-часов к компьютеру нет ничего сложного. Вы можете подключить их при помощи USB-кабеля или Блютуз.

Операционные системы выше Windows 7 сами определят устройство или предложат найти решение через интернет. Дополнительно можно установить симулятор Андроид на компьютер и подключить смарт-часы к ПК, как к смартфону. Соединение по блютуз осуществляется таким же образом, как соединение с телефоном.

Как принимать звонки и SMS на умных часах?

Прем входящих звонков на смарт-часы осуществляется так же, как и на телефон. При поступлении входящего вызова экран гаджета загорится, на нем высветятся две кнопки – приема и отклонения вызова. Чтобы принять вызов, нужно нажать соответствующую кнопку.

Для того, чтобы прочитать входящее сообщение, нужно активировать экран и коснуться сообщения, чтобы его открыть. Вы также можете совершать вызовы или отправлять СМС с помощью часов. Во втором случае неудобство заключается в том, что набирать сообщение нужно при помощи голоса, а гаджет не всегда правильно распознает речь.

Как включить/выключить GPS

В большинстве часов GPS включается автоматически. Включить или выключить его не получится. Если такой функции нет, то требуется установить специальное приложение SeTreker. Оно позволит настроить смарт-часы с любой операционной системой Андроид или iOS.

Управление камерой

Умные часы очень пригодятся тем, кто любит фотографировать себя с разных ракурсов. Для управления камерой смартфона необходимо установить приложение, например, Wear Camera Remote.

Чтобы видеть, что происходит на экране смартфона, вам необходимо синхронизировать его и смарт-часы и включить режим видео. Сделать снимок вы можете, просто нажав на клавишу на вашем гаджете.

Настройки режима энергопотребления (аккумулятора)

Чтобы активировать режим энергосбережения необходимо выполнить следующие шаги:

  1. Активировать экран.
  2. Провести по экрану пальцем сверху вниз.
  3. Нажать на значок «Энергосбережение».

Для автоматического перехода в режим экономии нужно:

  1. Активировать экран.
  2. Нажать «Настройки».
  3. Выбрать «Система».
  4. Выбрать «Батарея».
  5. Выбрать «вкл. энергосбережения при N%».

Включение вибрации

Включить виброрежим на часах можно в приложении SeTrecker или посредством СМС. Приложение подходит для всех моделей смарт-часов, поддерживающих GPS. Отправьте на номер Смарт Уотч команду:

Источник

Как подключить смарт браслет Lefun Health к телефону

В ней мы разберём, каким образом подключить ваш китайский смарт браслет Lefun Health к мобильному телефону. А также какие инструменты для этого понадобятся. После приобретения гаджета «Lefun Health» многие озадачиваются вопросом его сопряжения со смартфоном. Прямой коннект с помощью блютуз не даёт какого-либо результата. И владелец браслета может подумать, что ему достался девайс в нерабочем состоянии. Но не спешите огорчаться, а лучше воспользуйтесь инструкцией.

Что за смарт браслет Lefun Health?

Под названием « Lefun Health » обычно скрывается фитнес браслет Smart Band М3, являющийся копией смарт браслета «Xiaomi Mi Band 3».

Несмотря на внешнее сходство, на которое покупаются многие несведущие покупатели, гаджет «Lefun Health» является браслетом-игрушкой . Ряд важных функций присутствует на нём лишь номинально, и помочь в ведении здорового образа жизни он не сможет.

Функционал устройства смарт устройства сводится примерно к следующему:

  • Отображение даты и времени;
  • Шагомер – демонстрация числа пройденных шагов за сутки;
  • Километры – демонстрация пройденной дистанции в километрах;
  • Тонометр – измерения давления;
  • Пульсометр – измерение частоты сердечных сокращений;
  • Показатель кислорода в крови;
  • Показ пропущенных уведомлений на смартфоне и другое.

Ряд указанных показателей (тонометр, пульсометр) являются вымышленными, и берутся браслетом из ниоткуда (какое-либо среднее значение). Другие работоспособны, но погрешность может составлять около 10-20% .

Каким образом подключить браслет Lefun Health к телефону

Для подключения браслета «Lefun Health» к телефону вам понадобится установить на ваш смартфон специальное приложение . Обычно это одноимённое приложение «Lefun Health» или приложение-аналог «lefun Wear». Какое именно приложение разработчик рекомендует для вашего браслета вы можете найти в инструкции к браслету, в виде QR-кода . Просканируйте данный QR-код удобным для вас приложением для прочтения кодов (например, «Сканер QR-кодов»). И вы получите ссылку на обслуживающее браслет приложение в Плей Маркет.

Далее выполните следующее:

  1. Выключите ваш браслет. Перед выключением советуем убедиться, что он заряжен. Если нет, зарядите его;
  2. Установите на ваш смартфон специализированное приложение (к примеру, «Lefun Health»);
  3. Включите на вашем смартфоне Bluetooth и определение местоположения;
  4. Запустите приложение « Lefun Health » на вашем смартфоне;
  5. Разрешите приложению доступ к нужным данным;
  6. В приложении «Lefun Health» будет активирован режим поиска;
  7. Включите ваш смарт браслет;
  8. Ваш гаджет будет обнаружен. Выполните его сопряжение с телефоном.

Что делать, если браслет «Lefun Health» не видит смартфон

Некоторые пользователи могут столкнуться с рядом трудностей при подключении фитнес браслета к телефону.

Особенности, которые стоит учесть: Пояснение:
Браслет подключается к телефону через блютуз не напрямую, а только через приложение (в нашем случае это одноимённое «Lefun Health»). Если вы ранее пробовали подключаться напрямую, тогда удалите его из списка подключений блютуз вашего телефона, и выполните подключение через приложение, как описано нами выше.
Обязательно включите в настройках телефона геолокацию (определение местоположения). Без активации данной опции вы можете столкнуться с трудностями при привязке браслета Lefun Healt к смартфону.
Выключите и включите ваш браслет. Если в ходе сопряжения фитнес часов с телефоном вы столкнулись с трудностями, тогда выключите и включите ваш браслет. Вполне возможно, что он будет обнаружен вашим смартфоном.
Попробуйте другое приложение. В некоторых случаях приложения «Lefun» могут плохо работать с моделью вашего телефона. Попробуйте альтернативные приложения (например, «Yoho Sports»).

Заключение

Выше мы рассмотрели, каким образом выполнить подключение китайског фитнес браслета Lefun Health к смартфону. А также какие приложения для этого понадобятся. Выполните перечисленный нами комплекс советов, что позволит в полной мере воспользоваться возможностями Lefun Health в вашей ежедневной активности и ведении здорового образа жизни.

Источник

Как подключить и настроить фитнес-браслет: пошагово для чайников

Фитнес-браслет – это популярный гаджет, который был изобретен как помощник в контроле пульса, пройденных шагов и числа сожженных калорий для людей, ведущих здоровый образ жизни. Со временем функциональность его расширилась. Если правильно настроить фитнес-браслет и сделать привязку к смартфону, можно узнавать о пропущенных звонках, СМС и других уведомлениях. Об этом чуть подробнее ниже.

Как работает фитнес-браслет

Принцип работы фитнес-браслета, или умных часов состоит в синхронизации со смартфоном. В устройстве есть специальные датчики, фиксирующие сигналы и реагирующие на определенные показатели:

  • Скорость движения;
  • Ширина шага;
  • Пройденное расстояние;
  • Частота пульса;
  • Период активности или неактивности.

Учитывая полученную информацию от датчиков, браслет составляет данные о состоянии здоровья его владельца.

Как включить браслет

Пользоваться фитнес-браслетом из Китая просто – но сначала нужно его полностью зарядить. В среднем время зарядки занимает 1,5-2 часа. Кабель USB входит в стандартную комплектацию. Как только браслет полностью зарядится, он автоматически включится и будет готов к сопряжению с телефоном и настройке.

Как подготовить браслет и сбросить заводские настройки

Новый фитнес-браслет имеет предустановленные системные настройки. Их необходимо сбросить перед началом работы, чтобы ввести свои данные. Также это понадобится сделать, если вы купили б/у аппарат.

Мягкий сброс включает в себя такой порядок действий:

  1. Зайдите в профиль приложения Mi-Fit на смартфоне.
  2. Найдите раздел «Устройства».
  3. Выберите пункт «Фитнес-браслет».
  4. Выберите кнопку «Отключить».
  5. Система начнет задавать вопросы, уточняя: действительно ли вы хотите сделать отключение? – нажимайте «ДА» на каждом шагу выхода из настроек.
  6. Отложите фитнес-трекер в сторону и дождитесь полной разрядки.
  7. Зарядить и включить заново фитнес браслет. Он будет готов к введению новых настроек.

ПРИМЕЧАНИЕ! В некоторых случаях такой сброс настроек не сможет обнулить данные и потребуется перепрошивка. Ее следует производить в сервисном центре, чтобы в дальнейшем пользоваться б/у браслетом.

Универсальная настройка фитнес-браслета

Настройка каждой модели фитнес браслета зависит от особенностей системного меню, заданного производителем. Есть универсальные опции, как настроить умный браслет:

  1. Зарядить трекер и телефон.
  2. Скачать и установить приложение для сопряжения трекера и смартфона.
  3. Указать все параметры.
  4. Синхронизировать устройства через Bluetooth.

После сопряжения и синхронизации необходимо ввести дату и указать параметры уведомлений. Для того, чтобы не сбивались данные: пульсометр, шагомер и так далее, – важно не допускать полной разрядки браслета.

Как подключить браслет к телефону

Большинство современных фитнес-браслетов могут работать со смартфонами на Android и iOS. В инструкции на русском указано – как сопрягать их с разными моделями. Через приложение можно настроить все параметры браслета.

Наиболее часто используемые функции:

  • Отображение на экране основной информации. Дата, время, пульс, шагомер и количество сожженных калорий будут отображаться на экране для удобства и своевременного слежения за состоянием здоровья.
  • Включение при поднятии руки. Очень удобная функция, так как ночью, как правило, браслет не нужен. Для экономии запаса емкости аккумулятора достаточно включить ее при настройке.
  • Пульсометр во время сна. В некоторых моделях эта функция называется «умный будильник». Благодаря пульсометру умные электронные фитнес-часы отслеживают частоту пульса по время сна и включат будильник в фазу, когда спящий готов к пробуждению.
  • Настройка уведомлений. Удобная функция, что позволяет не отвлекаться на отслеживание входящих звонков и SMS – все будет отображаться на экране браслета.

Какие функции могут отображаться на экране фитнес-браслета

После того, как получилось подключить новый фитнес-браслет к смартфону, через меню приложения необходимо настроить экран и вывести на него все необходимые показатели и виджеты.

Входящий вызов

При поступлении звонка на смартфон на экране браслета появится имя или номер звонящего. Входящий звонок сопровождается вибрацией – удобно за рулем или когда нет возможности следить за телефоном.

Будильник

Имеются в виду специальные приложения для смартфона, которые могут работать с браслетом. Если телефон на ночь установлен на зарядку, трекер разбудит вас в указанное заранее время.

Ими мало кто пользуется для отправки, но получает сервисные SMS от банков, коды безопасности и так далее. Не обязательно каждый раз вынимать телефон, чтобы прочитать сообщение. Текст будет выведен на экран, однако сообщения кириллицей могут отображаться некорректно на китайских моделях.

Оповещение о бездействии

Полезная функция для тех, кто ведет активный образ жизни и нуждается в помощнике, напоминающем о физической активности. Если данная функция настроена, то браслет начинает вибрировать и напоминать о том, что пора немного прогуляться и проявить активность.

Уведомления от приложений

Полезная функция для тех, кто активно общается в социальных сетях. Уведомления будут приходить на экран часов, вы не пропустите важных сообщений. Можно настроить время, когда оповещения не будут приходить.

Достижение цели

Если настроены шагомер и счетчик калорий, установите цель похудения или расстояние, которое надо пройти. Как только результат будет достигнут, трекер подаст сигнал. Также вы всегда можете следить за результатом на экране.

Источник

nRF52832 популярный и доступный микроконтроллер, однако информации по нему на русском совсем немного, да и в зарубежных интернетах не до жиру. Спасает Nordic DevZone и Google. В Ардуино есть поддержка данного МК, но для взрослых проектов обычно используют поддержку производителя.

В данной статье я хочу рассказать свой подход к работе с данным МК. Небольшое предупреждение: я бы не советовал брать nRF52832 как первый в своей жизни МК, если вы неплохо знаете STM32 (или другой ARM МК) то вам будет проще работать с nRF52832. Я бы даже советовал для перехода с восьмибитных МК на nRF52832 освоить STM32 как первый в своей жизни ARM МК.

Первый раз я столкнулся с nRF52832 около 4 лет назад, имея опыт разработки только на платформе AVR, и дальше мигания светодиодом не смог продвинуться.

Вступление

Не стану подробно рассматривать установку SEGGER Embedded Studio. Скачивается с официального сайта и устанавливается (в пути к корневой папке не должно быть кириллицы в названиях папок!), для некоммерческого использования с МК фирмы Nordic бесплатна, сейчас даже не требует регистрации и получения лицензии. Так же скачиваем SDK для nRF52832, я использую версию 17.1.0. Автоматически выбраны для скачивания несколько SoftDevice. Создаем папку в которой будем работать с SDK. Важно, чтобы путь к папке и название папки не содержали кириллицы, иначе проект не будет компилироваться. В рабочую папку помещаем скаченный архив и «распаковываем здесь». В папке появляется несколько архивов, из них «распаковываем здесь» архив nRF5_SDK_17.1.0_ddde560. С этого момента можно приступать к работе.

Аппаратная часть

Мы будем работать с примерами для отладочных плат, поэтому можно использовать готовую плату (например pca10040) или сделать свою как это сделал я на базе модуля с AliExpress

. В таком случае потребуется подключить 4 светодиода и 5 кнопок, SWD интерфейс и UART для отладки.

// LEDs definitions for PCA10040
#define LEDS_NUMBER    4

#define LED_START      17
#define LED_1          17
#define LED_2          18
#define LED_3          19
#define LED_4          20
#define LED_STOP       20

#define BUTTONS_NUMBER 4

#define BUTTON_START   13
#define BUTTON_1       13
#define BUTTON_2       14
#define BUTTON_3       15
#define BUTTON_4       16
#define BUTTON_STOP    16

#define RX_PIN_NUMBER  8
#define TX_PIN_NUMBER  6

Кнопки подтянуты к «+» питания и при нажатии замыкаются на землю. Пятая кнопка — RESET подключается к ноге P0.21. Примеры с Bluetooth не будут работать без кнопок, а если ошибиться и после запуска МК будет переходить в сон, то прошить его без кнопки RESET будет невозможно. Для исключения зависания при работе с UART лучше подтянуть RX к «+» питания.

В качестве программатора применяю J-Link, сделанный из BluePill. Инструкцию по сборке можно найти в Google.

Проверяем

Задумывал статью как короткую и интересную заметку, а уже получилась скучная инструкция о том, как подключить кнопки и светодиоды. Надеюсь что следующая будет компактнее и интереснее.

Для проверки собираем и запускаем пример мигалки светодиодом. Надо открыть файл проекта по очень сложному пути в папках SDK. (Эту тайну я познал благодаря видео на YouTube)

Желтая стрелка указывает на папки с проектом, красная — на тип отладочной платы, зеленая — на тип используемого SoftDevice. Синяя стрелка указывает на файл проекта, который необходимо открыть. Запустится SEGGER. Нажимаем Build -> Build Solution, затем Debug -> Go. После записи программы в МК запускаем пример и светодиоды должны весело замигать

Начинаем начинать!

Хоть некоторые считают, что проекты надо собирать самому, но в данном случае количество библиотек в SDK огромно, и те из них, которые работают с BLE для меня представляют черный ящик, да и исходники SoftDevice закрыты. После очень долгих переделок проекта главной парадигмой программирования nRF52832 для меня стало выбрать наиболее подходящий пример и делать из него. Я хочу рассказать как сделать BLE UART устройство.

В среде радиолюбителей широко распространены Bluetooth UART модули вроде HC-05, HM-10 и другой зоопарк китайских поделок. Для этих модулей уже созданы Android приложения, да и работа в терминале удобна и проста. Поэтому я приведу пример мигалки светодиодом, управляемой через Serial Bluetooth Terminal.

Откроем папку ble_peripherial, и скопируем папку с примером ble_app_uart в созданную ранее папку (показана стрелкой). Это все необходимо чтобы уровень корня проекта не менялся и не терялась связь с библиотеками. Открываем и запускаем наш подопытный проект. Можно убедиться в работоспособности и подключить USB-UART преобразователь и соединиться с устройством в программе Serial Bluetooth Terminal с телефона.

А вот при попытке соединиться с устройством в меню Bluetooth телефона вас постигнет первое серьезное разочарование. Данный пример не поддерживает соединение.

Решение этой проблемы достойно отдельной статьи. Я не стану описывать как я в данный проект добавлял поддержку соединения, потому что простым и верным решением будет добавление поддержки ble_nus в пример, поддерживающий подключение.

Можно уже на данном этапе почувствовать себя крутым программистом и поменять имя устройства

Можно уже на данном этапе почувствовать себя крутым программистом и поменять имя устройства

Начнем с мигалки светодиодом на аппаратном таймере. В файле main (в котором очень много строк и можно заблудиться), добавляем макрос для создания таймера:

APP_TIMER_DEF (m_led_timer_id);

Находим функцию static void timers_init(void) и добавляем в нее создание таймера, функция будет выглядеть так:

static void timers_init(void)
{
    ret_code_t err_code = app_timer_init();
    APP_ERROR_CHECK(err_code);

    err_code = app_timer_create(&m_led_timer_id, APP_TIMER_MODE_REPEATED, timer_led_event_handler);
    APP_ERROR_CHECK(err_code);
}

И создадим две функции, одна запускает таймер, вторая является обработчиком прерывания:

/**@brief Function for initializing the timer module.
 */
static void timers_start(void)
{
    ret_code_t err_code;
  
    err_code =  app_timer_start(m_led_timer_id, APP_TIMER_TICKS(500), NULL);
    APP_ERROR_CHECK(err_code); 
}

void timer_led_event_handler(void* p_context)
{
    bsp_board_led_invert(3);
}

Остается вызвать функцию timers_start(); перед переходом МК в бесконечный цикл, в котором МК уходит в сон и просыпается по прерываниям. Запускаем и четвертый светодиод начинает мигать с периодом 1 секунда.

Теперь добавим работу с BLE. Заставим при мигании светодиодом еще и отправлять данные в BLE терминал. Для этого немного доработаем функцию обработчика прерывания:

void timer_led_event_handler(void* p_context)
{   
    ret_code_t err_code;
    uint8_t buff [20];
    static uint8_t count;

    bsp_board_led_invert(3);

    sprintf (buff, "led_invert %d\n", count);

    uint16_t length = strlen (buff);
                        err_code = ble_nus_data_send(&m_nus, buff, &length, m_conn_handle);
                        if ((err_code != NRF_ERROR_INVALID_STATE) &&
                            (err_code != NRF_ERROR_RESOURCES) &&
                            (err_code != NRF_ERROR_NOT_FOUND))
                        {
                            APP_ERROR_CHECK(err_code);
                        }

    count ++;
}

Подключаемся через терминал и видим, что имя устройства изменено и телефон принимает данные. (При изменении имени устройства могут возникнуть проблемы с подключением, если такое случается, то надо удалить данные о соединении Bluetooth и подключиться снова).

Вот он, первый успех в покорении Bluetooth!

Вот он, первый успех в покорении Bluetooth!

Осталось сделать управление. Находим функцию обработки прерывания от ble_nus и вандалим ее! Заменим отправку данных по UART на управление аппаратным таймером:

static void nus_data_handler(ble_nus_evt_t * p_evt)
{

    if (p_evt->type == BLE_NUS_EVT_RX_DATA)
    {
        uint32_t err_code;

        NRF_LOG_DEBUG("Received data from BLE NUS. Setting App_Timer.");
        NRF_LOG_HEXDUMP_DEBUG(p_evt->params.rx_data.p_data, p_evt->params.rx_data.length);
        
        if (p_evt->params.rx_data.p_data[0] == '0')
        {
        bsp_board_led_invert(2);
        err_code =  app_timer_stop(m_led_timer_id);
        APP_ERROR_CHECK(err_code);
        }
        else if (p_evt->params.rx_data.p_data[0] == '1')
        {
        err_code =  app_timer_start(m_led_timer_id, APP_TIMER_TICKS(500), NULL);
        APP_ERROR_CHECK(err_code);
        }
    }
}

Теперь если отправить 0 через терминал, то таймер остановится, а если отправить 1, то снова запустится.

И вот он, настоящий триумф человека над машиной!

И вот он, настоящий триумф человека над машиной!

Я делал устройство для работы с готовым приложением LK8000, и тут меня ждало второе разочарование: даже сделав устройство подключаемым, не удалось получить данные, потому что LK8000 сделан для работы с BLE UART модулями и у них другие сервисы и характеристики BLE, про это напишу позже.

Послесловие

На данный момент это самый сложный МК для меня и я потратил очень много времени даже на освоение того, что описал в этой статье. Надеюсь что этой информацией облегчу задачу освоения nRF52832. Задавайте вопросы в комментариях и ждите следующих публикаций.

Сергей Авдонин, схемотехник.

Продолжение про nRF52832:

Делаем подключение по кнопке

Только зарегистрированные пользователи могут участвовать в опросе. Войдите, пожалуйста.

О чем написать далее


69.44%
Продолжение про nRF52832
25


5.56%
Устройство и восстановление аналогового органа
2


5.56%
Про nRF52832 и про орган
2


19.44%
Не интересно, ничего не писать
7

Проголосовали 36 пользователей.

Воздержались 7 пользователей.

Сегодняшняя статья будет о датчике температуры, влажности и атмосферного давления c длительным сроком работы от одной батарейки. Датчик работает на микроконтроллере nRF52832 (даташит). Для получения температуры, влажности и атмосферного давления использован сенсор BME280 — даташит. Датчик работает от батареек CR2430/CR2450/CR2477. Потребление в режиме передачи составляет 8мА, в режиме сна 5мкА. Итак, обо всем по порядку.

Это Arduino проект, программа написана в Arduino IDE, Для работы сенсора BME280 использована библиотека Adafruit Industries — гитхаб сенсоры | гитхаб BME280. Для работы с платами nRF52832 в Arduino IDE использован проект Sandeep Mistry — гитхаб. Передача данных на контролер Умного Дома осуществляется по протоколу Mysensors — гитхаб плат | протокол|библиотека (MySensors Wiki · GitHub структура протокола).

Плата датчика разрабатывалась в программе Диптрейс. Размеры платы 36.8мм Х 25мм.

Перечень используемых компонентов | стоимость

  • С1 — cap0603 100nF — 0.66р.
  • C2 — cap0603 100nF — 0.66р.
  • R1 — res0603 332 — 0.45р.
  • R2 — res0603 85b — 0.45р.
  • R3 — res0603 113 — 0.45р.
  • R4 — res0603 912 — 0.45р.
  • R5 — res0603 113 — 0.45р.
  • R6 — res0603 512 — 0.45р.
  • R7 — res0603 512 — 0.45р.
  • RGBL1 — led0805 rgb — 4.06р.
  • SWD — PPHF 2×3 6p 1.27mm — 7.89р.
  • U1 — YJ-16048 nRF52832 — 212.56р. (+доставка 101.63р.)
  • U2 — BME280 — 156.76р.
  • CONNECT — тактовая кнопка KLS7-TS5401 — 8.5р.
  • RESET — тактовая кнопка KLS7-TS5401 — 8.5р.
  • Держатель батареи KW-BS-2450-2-SMT — 55.14р.
  • Переключатель dsc0012 — 15.85р.

Стоимость компонентов: 575.36р.
Стоимость pcb: 86р. 1 штука (см.скриншот с сайта jlspcb расчет до МСК)

Итого: 661.33р. (or $10.25)

Плата заказывалась через сайт jlcpcb.com — 2$ за 5 штук в любом цвете.

Ссылка на архив с герберфайлами — drive.google.com/file/d/1xdNjZmjKsELLEp4_vSpQi_SpF_XfXHr2/view?usp=sharing

Датчик работает по протоколу Mysensors. Добавить любое устройство в сеть Mysensors достаточно просто. Давайте разберемся на примере этого датчика, пояснения по коду самого датчиком BME280 я опушу, там ничего не меняется при работе с сети Mysensors.


#define MY_DEBUG // Вывод дебага
#define MY_RADIO_NRF5_ESB // Выбор типа радиопередатчика(возможные варианты rfm69, rfm95, nrf24l01, nrf51-52)
#define MY_RF24_PA_LEVEL (NRF5_PA_MAX) // выбор уровня радиосигнала
#define MY_DISABLED_SERIAL // отключение сериала
#define MY_PASSIVE_NODE // режим работы ноды(устройство в сети mysensors), PASSIVE означает что отключены все процедуры контроля транспортного уровня, обновление по воздуху, шифрование, безопасность
#define MY_NODE_ID 1  // ручное назначение идентификатора ноды
#define MY_PARENT_NODE_ID 0 // ручное назначение идентификатора гейта или ретранслятора
//#define MY_PARENT_NODE_IS_STATIC // атрибут PARENT_NODE отвечающий за отключение функционала автоматического перестроения маршрута
//#define MY_TRANSPORT_UPLINK_CHECK_DISABLED // отключение контроля работоспособности транспортного уровня

#include <MySensors.h> // - библиотека MySensors

#define TEMP_CHILD_ID 0 // назначение идентификатора сенсора температуры
#define HUM_CHILD_ID 1 // назначение идентификатора сенсора влажности
#define BARO_CHILD_ID 2 // назначение идентификатора сенсора атмосферного давления
#define CHILD_ID_VOLT 254 // назначение идентификатора сенсора заряда батареи

MyMessage voltMsg(CHILD_ID_VOLT, V_VOLTAGE);  // инициализация сообщения для сенсора заряда батареи
MyMessage temperatureMsg(TEMP_CHILD_ID, V_TEMP);  // инициализация сообщения для сенсора температуры
MyMessage humidityMsg(HUM_CHILD_ID, V_HUM);  // инициализация сообщения для сенсора влажности
MyMessage pressureMsg(BARO_CHILD_ID, V_PRESSURE);  // инициализация сообщения для атмосферного давления

Презентация датчиков и сенсоров в контролер умного дома:


  sendSketchInfo("BME280 Sensor", "1.0");  // Название датчика, версия ПО
  present(CHILD_ID_VOLT, S_MULTIMETER, "Battery");  // Презентация сенсора заряда батареи, тип сенсора, описание
  present(TEMP_CHILD_ID, S_TEMP, "TEMPERATURE [C or F]");  // Презентация сенсора температуры, тип сенсора, описание
  present(HUM_CHILD_ID, S_HUM, "HUMIDITY [%]");  // Презентация сенсора влажности, тип сенсора, описание
  present(BARO_CHILD_ID, S_BARO, "PRESSURE [hPa or mmHg]");  // Презентация сенсора атмосферного давления, тип сенсора, описание

Передача данных на контролер умного дома:


send(voltMsg..set(batteryVoltage));  // отправка данных о заряде батарейки в mW
sendBatteryLevel(currentBatteryPercent);   // отправка данных о заряде батарейки в %
send(temperatureMsg.set(temperature, 1));  // отправка данных о температуре
send(humidityMsg.set(humidity, 0));  // отправка данных о влажности
send(pressureMsg.set(pressure, 0));  // отправка данных о давлении

Ардуино код программы


#include <Wire.h>
#include <SPI.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>
//#define MY_DEBUG
#define MY_RADIO_NRF5_ESB
#define MY_RF24_PA_LEVEL (NRF5_PA_MAX)
#define MY_DISABLED_SERIAL
#define MY_PASSIVE_NODE
#define MY_NODE_ID 1
#define MY_PARENT_NODE_ID 0
//#define MY_PARENT_NODE_IS_STATIC
//#define MY_TRANSPORT_UPLINK_CHECK_DISABLED

#include <MySensors.h>

bool sleep_flag;
bool metric = true;
bool last_sent_value;

uint16_t currentBatteryPercent;
uint16_t lastBatteryPercent = 1000;
uint16_t battery_vcc_min = 2150;
uint16_t battery_vcc_max = 2950;
uint16_t batteryVoltage;
uint16_t battery_alert_level = 25;

uint32_t default_sleep_time = 60000;
uint32_t SLEEP_TIME;
uint32_t newmillisforbatt;
uint32_t battsendinterval = 3600000;

float tempThreshold = 0.5;
float humThreshold = 5;
float presThreshold = 1;
float pres_mmThreshold = 1;
float temperature;
float pressure;
float pressure_mm;
float humidity;
float lastTemperature = -1;
float lastHumidity = -1;
float lastPressure = -1;
float lastPressure_mm = -1;

#define SEALEVELPRESSURE_HPA (1013.25)
Adafruit_BME280 bme;

#define TEMP_CHILD_ID 0
#define HUM_CHILD_ID 1
#define BARO_CHILD_ID 2
#define CHILD_ID_VOLT 254

MyMessage voltMsg(CHILD_ID_VOLT, V_VOLTAGE);
MyMessage temperatureMsg(TEMP_CHILD_ID, V_TEMP);
MyMessage humidityMsg(HUM_CHILD_ID, V_HUM);
MyMessage pressureMsg(BARO_CHILD_ID, V_PRESSURE);


void preHwInit() {
  pinMode(21, INPUT);
  pinMode(25, OUTPUT);
  digitalWrite(25, HIGH);
  pinMode(26, OUTPUT);
  digitalWrite(26, HIGH);
  pinMode(27, OUTPUT);
  digitalWrite(27, HIGH);
}


void before() {
  NRF_POWER->DCDCEN = 1;
  NRF_NFCT->TASKS_DISABLE = 1;
  NRF_NVMC->CONFIG = 1;
  NRF_UICR->NFCPINS = 0;
  NRF_NVMC->CONFIG = 0;
  if (NRF_SAADC->ENABLE) {
    NRF_SAADC->TASKS_STOP = 1;
    while (NRF_SAADC->EVENTS_STOPPED) {}
    NRF_SAADC->ENABLE = 0;
    while (NRF_SAADC->ENABLE) {}
  }
  pinMode(BLUE_LED, OUTPUT);
  pinMode(RED_LED, OUTPUT);
  digitalWrite(BLUE_LED, HIGH);
  digitalWrite(RED_LED, HIGH);
  digitalWrite(27, LOW);
}

void setup()
{
  digitalWrite(27, HIGH);
  bme_initAsleep();
  wait(100);
  sendBatteryStatus();
  wait(100);
}


void presentation()  {
  sendSketchInfo("EFEKTA BME280 Sensor", "1.2");
  present(CHILD_ID_VOLT, S_MULTIMETER, "Battery");
  present(TEMP_CHILD_ID, S_TEMP, "TEMPERATURE [C or F]");
  present(HUM_CHILD_ID, S_HUM, "HUMIDITY [%]");
  present(BARO_CHILD_ID, S_BARO, "PRESSURE [hPa or mmHg]");
}


void loop() {
  wait(10);
  bme.takeForcedMeasurement();
  wait(100);
  sendData();
  if (millis() - newmillisforbatt >= battsendinterval) {
    sleep_flag = 1;
    sendBatteryStatus();
  }
  if (sleep_flag == 0) {
    sleep(SLEEP_TIME);
    sleep_flag = 1;
  }
}


void blinky(uint8_t pulses, uint8_t repit, uint8_t ledColor) {
  for (int x = 0; x < repit; x++) {
    if (x > 0) {
      sleep(500);
    }
    for (int i = 0; i < pulses; i++) {
      if (i > 0) {
        sleep(100);
      }
      digitalWrite(ledColor, LOW);
      wait(20);
      digitalWrite(ledColor, HIGH);
    }
  }
}


void sendBatteryStatus() {
  wait(20);
  batteryVoltage = hwCPUVoltage();
  wait(2);

  if (batteryVoltage > battery_vcc_max) {
    currentBatteryPercent = 100;
  }
  else if (batteryVoltage < battery_vcc_min) {
    currentBatteryPercent = 0;
  }
  else {
    if (lastBatteryPercent == 1000) {
      currentBatteryPercent = (100 * (batteryVoltage - battery_vcc_min)) / (battery_vcc_max - battery_vcc_min) + 5;
    } else {
      currentBatteryPercent = (100 * (batteryVoltage - battery_vcc_min)) / (battery_vcc_max - battery_vcc_min) - 5;
    }
  }
  sendBatteryLevel(currentBatteryPercent);
  wait(100);
  if (lastBatteryPercent < battery_alert_level) {
  blinky(3, 1, RED_LED);
  }
  else {
    blinky((last_sent_value == true ? 2 : 1), 1, BLUE_LED);
  }
  sleep_flag = 0;
  newmillisforbatt = millis();
}


void sendData() {
  temperature = bme.readTemperature();
  wait(20);
  humidity = bme.readHumidity();
  wait(20);
  pressure = bme.readPressure() / 100.0F;
  if (!metric) {
    temperature = temperature * 9.0 / 5.0 + 32.0;
  } else {
    pressure = pressure * 0.75006375541921;
  }
  CORE_DEBUG(PSTR("MY_TEMPERATURE: %d\n"), (int)temperature);
  CORE_DEBUG(PSTR("MY_HUMIDITY: %d\n"), (int)humidity);
  CORE_DEBUG(PSTR("MY_PRESSURE: %d\n"), (int)pressure);
  
    if (abs(temperature - lastTemperature) >= tempThreshold) {
      send(temperatureMsg.set(temperature, 1));
      lastTemperature = temperature;
      sleep(1000);
    }

    if (abs(humidity - lastHumidity) >= humThreshold) {
      send(humidityMsg.set(humidity, 0));
      lastHumidity = humidity;
      sleep(1000);
    }

    if (abs(pressure - lastPressure) >= presThreshold) {
      send(pressureMsg.set(pressure, 0));
      lastPressure = pressure;
      sleep(1000);
    }
  sleep_flag = 0;
}


void bme_initAsleep() {
  if (! bme.begin(&Wire)) {
    while (1);
  }
  bme.setSampling(Adafruit_BME280::MODE_FORCED,
                  Adafruit_BME280::SAMPLING_X1, // temperature
                  Adafruit_BME280::SAMPLING_X1, // pressure
                  Adafruit_BME280::SAMPLING_X1, // humidity
                  Adafruit_BME280::FILTER_OFF   );
  wait(1000);
}

Корпус для датчика разрабатывался в 3Д редакторе:

Напечатан был на 3D принтере ANYCUBIC FOTON смолой белого цвета этого же производителя, толщина слоя была выбрана средняя — 50микрон. Время печати корпуса и крышки 3 часа.

Сеть MySensors в которой работает датчик обменивается данными с системой умного дома Мажордомо. Зарегистрированный датчик в модуле Майсенсорс Мажордомо выглядит так:

Видео с тестом

Для желающих сделать себе такой же в статье даны ссылки на всё необходимое.

Ссылки на Али:
Принтер Anycubic Foton

Модуль nRF52832
Конденсаторы 0603
Резисторы 0603
rgb led 0805
Разьем 6p (3×2, 1.27)
Кнопки smd
BME280
Держатель cr2450
Переключатель горизонтальный
или
Переключатель вертикальный

Место где всегда с радостью помогут всем кто хочется познакомиться с MYSENSORS (установка плат, работа с микроконтроллерами nRF5 в среде Arduino IDE, советы по работе с протоколом mysensors — @mysensors_rus

Like this post? Please share to your friends:
  • Часы jet kid scout инструкция
  • Часы novis ncr 360 инструкция
  • Часы jet kid next инструкция по применению детские
  • Часы jet kid buddy инструкция по применению на русском
  • Часы jet kid gear инструкция