MySensors - Подключение радио

02:17

Приемопередатчик NRF24L01 + и RFM69 взаимодействует с платой Arduino через интерфейс SPI.

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

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

NRF24L01+ & Arduino

ПРИМЕЧАНИЕ: Входные контакты на NRF24L01 + имеют толерантность 5 В. Однако, вы не можете питать модуль более чем 3.3V на VCC. Если вы используете 5V Arduino, вам нужно использовать понижающий регулятор!

Pro Mini / Nano Mega NRF24L01+ Color
GND GND GND Чёрный
5VReg -> 3.3V 3.3V VCC Красный
9 49 CE Оранжевый
10 53 CSN/CS Жёлтый
13 52 SCK Зелёный
11 51 MOSI Синий
12 50 MISO Фиолетовый
2 2 IRQ Серый

Вывод IRQ нужен для подключения только, если в эскизе определен MY_RX_MESSAGE_BUFFER_FEATURE. Использование этой функции требуется только для узлов или шлюзов с высоким трафиком. Включение его приведет к повышению пропускной способности, но для обработки сообщения потребуется дополнительная память.

Если вы используете Arduino Mega, к вашему эскизу необходимо добавить следующее, перед подключением MySensors.h:

 

NRF24L01+ & ESP8266

Это также работает с платами на базе ESP8266, такими как NodeMCU и Wemos D1 Mini.

NodeMCU Radio Comment
GND GND Чёрный
3V3 VCC Красный
D2 CE Оранжевый
D8 CSN/CS Жёлтый
D5 SCK Зелёный
D7 MOSI Синий
D6 MISO Фиолетовый

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

RFM69 & Arduino

ПРИМЕЧАНИЕ: NSS, MOSI и SCK не являются толерантным к 5V на RFM69. Вам нужно будет использовать конвертер уровня, если вы используете 5V Arduino.

Arduino RFM69 Color
 GND GND  Чёрный
3.3V VCC Красный
10 NSS Жёлтый
13 SCK Зелёный
11 MOSI Синий
12 MISO Фиолетовый
2 DI00 Серый
  ANA Антенна

RFM69 & ESP8266

Это также работает с другими платами на базе ESP8266, такими как NodeMCU и Wemos D1 Mini.

ESP8266 RFM69 Color
 GND  GND  Чёрный
3.3V VCC Красный
D1 DIO0 Серый
D5 SCK Зелёный
D6 MISO Фиолетовый
D7 MOSI Синий
D8 NSS Жёлтый
  ANA Антенна

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

Шлюз и узлы могут использовать одно и тоже подключение, но имейте в виду, что RFM радио использует все контакты, с которыми легко работать, кроме D2, поэтому подключение чего-либо дополнительного может быть сложным. Вместо этого используйте Arduino, если хотите подключить что-то ещё.

Настройка MySensors для RFM69

MySensors настроен на использование радио NRF24 по умолчанию. Чтобы использовать RFM69, необходимо добавить следующее строки: перед подключением MySensors.h

Основные определения для радио не High Power 868Mhz, и Atmel 328p (mini pro, nano, uno и т. д.):

И если вам нужна расширенная конфигурация, вам нужно добавить следующие определения:

Подробнее об этом можно узнать здесь: https://www.mysensors.org/download/sensor_api_20

Примечание. Драйвер Mysensors RFM69 управляется прерываниями.

Антенна RFM69

ВАЖНО: Вы ДОЛЖНЫ установить антенну на плату. Антенна должна быть одножильной, а не многожильной (не подходит для антенны). Если включить без антенны, передатчик может сгореть.

Взяв провод нужной длины, вы можете создать простую антенну для RFM69 радио. В зависимости от частоты радио, антенна должна быть разной длины. Сделайте вашу антенну немного длиннее, чтобы можно было припаять ее к вашей плате. Вы всегда можете обрезать её после пайки.

Частота Длина (дюймы) Длина (мм)
434 MHz 6.47″ 164.7 мм
868 MHz 3.22″ 82.2 мм
915 MHz 3.06″ 77.9 мм

Вышеуказанная длина антенны составляет 1/4 волны. Есть также в продаже готовые антенны нужной длины.

Советы:

  • Прямой провод будет работать лучше для всего диапазона и чувствительности.
  • Для устройства с ограниченным пространством, вы можете намотать антенну. Конечно, это ухудшит ваш диапазон, но он по-прежнему будет приличный и конкурентоспособный. Уже было проверено, что подойдёт для вашего случая. Катушка будет работать лучше, если следовать некоторым правилам https://github.com/OpenHR20/OpenHR20/wiki/2.1)—433-MHz-and-868-MHz—Antenna-Design-Examples

Подключение развязывающего конденсатора

Если у вас плохой прием или переданные данные не доходят до адресата, попробуйте добавить развязывающий конденсатор в 4.7 — 47μF (точный размер обычно не имеет значения) между 3.3В и GND как можно ближе к передатчику.

Конденсатор Радио Коментарии
— пин GND Чёрный провод радио
+ пин 3.3V Красный провод радио

Сторона с отметкой «<- <-» должна быть подключена к GND

Подключение регулятора напряжения

ПРИМЕЧАНИЕ. Если вы используете мини-версию Arduino Pro Mini 5V (которой нет регулируемого выхода на 3,3 В), вам нужно будет подключить регулятор 5V-> 3,3 В между Arduino и Radio.

Arduino Регулятор Радио
5V Vin  
  Vout VCC

 

отсюда