Linux контроллер JetHome JetHub D1
Подсказка
Контроллер можно приобрести на сайте производителя: http://jethome.ru/d1/
Общее описание
Контроллер JetHome JetHub D1 предназначен для построения систем домашней автоматизации и мониторинга: опрос датчиков, использование в качестве устройства сбора и передачи данных, выполнение функций ПЛК в системах «умного дома», непосредственное управление нагрузкой.
JetHome JetHub D1 может быть использован в качестве центрального контроллера в «умном доме» совместно с беспроводными (Wi-Fi, ZigBee) и проводными (RS-485) устройствами других производителей.
Исполнение в корпусе на DIN-рейку позволяет удобно разместить контроллер в электрощите дома.
Характеристики
Четырехъядерный процессор Amlogic A113X (ARM Cortex-A53) с рабочей частотой до 1,4 ГГц.
Оперативная память 512 МБайт или 1 ГБайт DDR3.
Энергонезависимая память eMMC flash 8 ГБайт, 16 ГБайт или 32ГБайт.
Конструкция
На верхней стороне контроллера расположены:
Разъем Ethernet (RJ45)
Разъем 1-Wire
Терминатор линии порта RS485-1
Клеммы порта RS485-1
Клеммы порта RS485-2
Терминатор линии порта RS485-2
Разъем USB
На лицевой стороне контроллера расположены элементы индикации и управления:
Двухцветный пользовательский светодиод (STAT)
Светодиод индикации наличия питания (PWR)
Пользовательская кнопка
Внутренняя кнопка переключения режима загрузки (BOOT)
На нижней стороне контроллера расположены:
Клеммы подключения источника питания
Клеммы реле 1
Клеммы реле 2
Клеммы реле 3
Клемма дискретного входа 1
Клемма дискретного входа 2
Клемма дискретного входа 3
Клемма дискретного входа 4
Клемма общего контакта (GND)
Клемма выхода +5В. Может использоваться для питания внешних устройств (датчиков) с током потребления не более 0,5А
Разъем для подключения внешней антенны беспроводного модуля связи Zigbee
Размеры и масса
Габаритные размеры корпуса: 130 x 76 x 57 мм.
Ширина корпуса 76мм, что составляет около 4,3 стандартных модулей для DIN-рейки (17,5мм).
Возможность крепления корпуса к DIN-рейке 35мм.
Масса: 180 г
Варианты комплектации
512 МБайт RAM, 8 ГБайт eMMC, AP6255 (BT 4.2)
1 ГБайт RAM, 16 ГБайт eMMC, AP6255 (BT 4.2)
1 ГБайт RAM, 32 ГБайт eMMC, AP6256 (BT 5.0)
Ревизии
Ревизии процессорного модуля
v1.2
Версия модуля с 1ГБайт RAM, 32ГБайт eMMC, Wi-Fi модуль AP6256
v1.1
Версия модуля с 1ГБайт RAM, 16ГБайт eMMC, Wi-Fi модуль AP6255
v1.0
Версия модуля с 512Байт RAM, 8ГБайт eMMC, Wi-Fi модуль AP6255
Ревизии материнской платы
v3.0
Гальванически изолированные порты RS-485 и дискретные входы
v2.1
Материнская плата оптимизирована под процессорный модуль D1+. Прошивка контроллера теперь осуществляется только через отдельный разъем MicroUSB на процессорном модуле
v1.9
Две микросхемы USB-UART преобразователя CP2104 заменены на одну микросхему CP2105
v1.7
Программная реализация 1-Wire на GPIO
v1.5
Для подключения шины 1-Wire используется 3-контактный разъем с шагом 3.5мм
Интерфейсы
Wi-Fi/Bluetooth
Версия контроллеров с 8ГБ и 16ГБ eMMC:
Интегрированный двухдиапазонный (2,4 ГГц и 5 ГГц) модуль беспроводной связи WiFi/Bluetooth AMPAK AP6255
Поддержка стандартов Wi-Fi IEEE 802.11a/b/g/n/ac и Bluetooth 4.2
Версия контроллеров 32ГБ eMMC:
Интегрированный двухдиапазонный (2,4 ГГц и 5 ГГц) модуль беспроводной связи WiFi/Bluetooth AMPAK AP6256
Поддержка стандартов Wi-Fi IEEE 802.11a/b/g/n/ac и Bluetooth 5.0
Ethernet
Контроллер имеет один порт Ethernet 10/100 Мбит/с, в качестве контроллера физического уровня Ethernet используется микросхема IC-Plus IP101GR, поддерживающая стандарты IEEE 802.3/802.3u.
Контроллер физического уровня Ethernet установлен на процессорном модуле, на периферийной плате установлен согласующий трансформатор Ethernet и внешний разъем RJ45 с индикацией подключения и активности сети Ethernet.
Для подключения к процессорному модулю используются следующие выводы 40-pin разъема: ETH_TXN, ETH_TXP, ETH_RXN, ETH_RXP, ETH_LED3, ETH_LED0
USB
В контроллере предусмотрен один внешний порт USB 2.0 для подключения периферийных устройств.
Внешний USB-порт контроллера может работать в двух режимах:
Основной режим работы (USB хост). В данном режиме внешний USB порт подключен к встроенному в контроллер USB хабу, к которому также подключены порты RS485.
Режим прошивки контроллера, когда внешний USB-порт подключается непосредственно к выводам процессора минуя USB-хаб. Данный режим используется для прошивки контроллера с помощью утилиты Amlogic Burning Tool.
Предупреждение
В данном режиме порты RS485 контроллера будут недоступны.
Режим работы внешнего USB-порта устанавливается во время включения контроллера и зависит от какого источника был запитан контроллер.
При питании контроллера от внешней клеммы питания или при питании контроллера по Ethernet (использование технологии Passive PoE) устанавливается основной режим работы USB-порта.
При питании контроллера от USB, устанавливается режим прошивки контроллера.
Примечание
Максимальный ток, потребляемый периферийным устройством, подключенным к внешнему USB-порту контроллера, не должен превышать 0,5А. Для защиты контроллера от превышения потребляемого внешним устройством тока в цепи питания USB установлен самовосстанавливающийся предохранитель, ограничивающий ток в цепи питания USB на уровне 0,5А.
Предупреждение
По причине ограничения тока в цепи питанию USB на уровне 0,5А запрещается запитывать контроллер от внешнего USB-порта, кроме как для его прошивки.
Периферия
Светодиоды
См.также
На лицевой панели контроллера установлено два светодиода: один для индикации наличия напряжения питания, второй - пользовательский двухцветный светодиод.
Светодиод |
Вывод |
Linux1 |
gpiolib |
Active low |
---|---|---|---|---|
Красный |
GPIOA_0 |
538 (452) |
26 |
1 |
Зеленый |
GPIOA_1 |
539 (453) |
27 |
1 |
- 1
в скобках указаны значения для Linux Kernel версии менее 6.2
Дискретные входы
См.также
Контроллер имеет 4 дискретных входа для подключения «сухих» контактов с замыканием входа на общий провод питания контроллера (GND).
Максимальная частота переключений состояния дискретного входа 400Гц.
Предупреждение
Дискретные входы не предназначены для подачи на них напряжения питания и могут выйти из строя при напряжении на них более 12В.
Таблица GPIO дискретных входов
Номер |
Вывод |
Linux3 |
gpiolib |
Active low |
---|---|---|---|---|
1 |
GPIOA_20 |
558 (472) |
46 |
0 |
2 |
GPIOA_19 |
557 (471) |
45 |
0 |
3 |
GPIOA_18 |
556 (470) |
44 |
0 |
4 |
GPIOA_17 |
555 (469) |
43 |
0 |
- 3
в скобках указаны значения для Linux Kernel версии менее 6.2
Релейные выходы
См.также
Контроллер имеет 3 независимых релейных выхода с типом контактов NO контакт.
Максимальный коммутируемый переменный ток для резистивных нагрузок составляет 5A при напряжении до 250В. Механический ресурс реле - 10 000 000 переключений.
Предупреждение
Не превышайте максимально допустимый ток, который может выдержать реле. При превышении тока реле может быть повреждено!
Таблица GPIO релейных выходов
Номер |
Вывод |
Linux4 |
gpiolib |
Active low |
---|---|---|---|---|
1 |
GPIOA_4 |
542 (456) |
30 |
0 |
2 |
GPIOA_3 |
541 (455) |
29 |
0 |
3 |
GPIOA_2 |
540 (454) |
28 |
0 |
- 4
в скобках указаны значения для Linux Kernel версии менее 6.2
1-Wire
Примечание
Начиная с ревизии 1.5 материнской платы для подключения шины 1-Wire используется 3-контактный разъем с шагом 3.5мм
Начиная с ревизии 1.7 материнской платы используется программная реализация 1-Wire на GPIO
Предупреждение
Ввиду особенности программной реализации 1 Wire в Linux максимальное к-во устройств на одной шине - 5шт.
Разъем 1-Wire 3x3.5 мм
Назначение выводов:
Номер |
Назначение |
Описание |
---|---|---|
1 |
+5V |
Выход питания +5В (для питания внешних устройств 1-Wire) |
2 |
1-Wire Data |
Шина данных 1-Wire |
3 |
GND |
Общий провод 1-Wire |
Разъем 1-Wire RJ22
Назначение выводов:
Номер |
Назначение |
Описание |
---|---|---|
1 |
+5V |
Выход питания +5В (для питания внешних устройств 1-Wire) |
2 |
GND |
Общий провод питания |
3 |
1-Wire Data |
Шина данных 1-Wire |
4 |
1-Wire GND |
Общий провод 1-Wire |
RS-485 (Modbus)
См.также
Контроллер имеет два порта RS-485, реализованных с использованием микросхем преобразователя интерфейса
USB-UART Silicon Labs CP2104 или CP2105 в зависимости от ревизии материнской платы.
В операционной системе данные устройства отображаются как /dev/ttyUSB0
и /dev/ttyUSB1
.
Примечание
Концы шины RS-485 должны быть терминированы резисторами 120 Ом с обоих концов.
Примечание
Для упрощения монтажа контроллер имеет встроенные терминаторы, подключаемые к линиям RS-485 с помощью перемычек (джамперов), расположенных рядом с клеммами RS-485.
Часы реального времени (RTC)
См.также
В качестве часов реального времени (RTC) используется микросхема PCF8563, подключенная к внутренней шине I2C процессорного модуля (шина I2C_B процессора).
Для питания RTC на процессорном модуле установлен литиевый элемент питания с напряжением 3В типоразмера CR1220.
Беспроводной модуль (Zigbee)
На материнской плате контроллера имеется посадочное место для установки беспроводного модуля. В зависимости от конфигурации контроллера, на плате может быть установлен беспроводной модуль (см. Zigbee модули PCBA).
Рядом с посадочным местом для беспроводного модуля на материнской плате контроллера предусмотрена установка разъема WM DBG, предназначенного для отладки или прошивки беспроводного модуля. Разъем устанавливается в зависимости от комплектации материнской платы.
JTAG (WM DBG):
Модуль подключен к порту UARTA0_B
процессора,
аппаратное управление приемом/передачей (линии RTS и CTS) не используется.
Устройство отображается в системе как /dev/ttyAML2
.
Для управления беспроводным модулем используются GPIO процессора, которые
подключены к линиям RESET
и BOOT
беспроводного модуля (см. Работа с дискретным выходами в Linux):
Вывод модуля |
Вывод CPU |
Linux5 |
gpiolib |
Active low |
---|---|---|---|---|
RESET |
GPIOA_15 |
553 (467) |
41 |
0 |
BOOT |
GPIOA_10 |
548 (462) |
42 |
1 |
- 5
в скобках указаны значения для Linux Kernel версии менее 6.2
Аппаратный сброс модуля беспроводной связи осуществляется путем записи логического уровня 1 в GPIO RESET процессора (см. таблицу выше). Возврат в рабочий режим осуществляется путем записи логического уровня 0 в GPIO RESET процессора.
Управление режимом загрузки осуществляется путем записи 0 или 1 в GPIO BOOT процессора (см. таблицу выше). Для модуля беспроводной связи Zigbee вход в режим загрузчика осуществляется при логическом уровне 0 на выводе BOOT во время сброса модуля Zigbee.
Переключение режимов происходит при включении или аппаратном сбросе модуля. Поэтому после смены логического уровня на выводе BOOT модуля необходимо выполнить аппаратный сброс модуля.
Внутренние разъёмы
Разъём 40-pin на процессорной плате
Сигналы, выведенные на разъём расширения
Ethernet (x4 линии PHY)
Ethernet LED (х2 линии)
USB (х2 линии)
SPI (х4 линии)
I2C (х2 линии)
x2 UART (х4 линии)
x11 GPIO
CPU RESET
+5В
Таблица сигналов
Вывод |
Назначение |
Вывод/периферия микропроцессора |
Функция контроллера |
---|---|---|---|
1 |
+5.0V |
+5.0V |
|
2 |
+5.0V |
+5.0V |
|
3 |
GND |
GND |
|
4 |
GND |
GND |
|
5 |
ETH_TXN |
Ethernet |
|
6 |
ETH_TXP |
Ethernet |
|
7 |
ETH_RXN |
Ethernet |
|
8 |
ETH_RXP |
Ethernet |
|
9 |
ETH_LED3 |
Ethernet |
|
10 |
ETH_LED0 |
Ethernet |
|
11 |
GND |
GND |
|
12 |
SPI_MOSI |
GPIOX_17/SPI_MOSI_B |
|
13 |
GPIO0 |
GPIOX_16/SPI_SS0_B |
|
14 |
SPI_MISO |
GPIOX_18/SPI_MISO_B |
|
15 |
SPI_CLK |
GPIOX_19/SPI_CLK_B |
|
16 |
GND |
GND |
|
17 |
I2C_SCK |
GPIOAO_10/I2C_SCK_AO |
|
18 |
I2C_SDA |
GPIOAO_11/I2C_SDA_AO |
|
19 |
GND |
GND |
|
20 |
UART1_RX |
GPIOAO_1/UART_RX_AO_A |
Linux console RX |
21 |
UART1_TX |
GPIOAO_0/UART_TX_AO_A |
Linux console TX |
22 |
UART2_TX |
GPIOAO_4/UART_TX_AO_B |
|
23 |
UART2_RX |
GPIOAO_5/UART_RX_AO_B |
|
24 |
GND |
GND |
|
25 |
GPIO1 |
GPIOA_14 |
|
26 |
GPIO2 |
GPIOA_16 |
|
27 |
GND |
GND |
|
28 |
GPIO3 |
GPIOA_19 |
Discrete input 2 |
29 |
GPIO4 |
GPIOA_18 |
Discrete input 3 |
30 |
GPIO5 |
GPIOA_20 |
Discrete input 1 |
31 |
GPIO6 |
GPIOA_15 |
Zigbee module reset |
32 |
GPIO7 |
GPIOA_17 |
Discrete input 4 |
33 |
GPIO8 |
GPIOA_3 |
Relay 2 |
34 |
GPIO9 |
GPIOA_4 |
Relay 1 |
35 |
GPIO10 |
GPIOA_10 |
Zigbee module boot |
36 |
GPIO11 |
GPIOA_2 |
Relay 3 |
37 |
CPU_RESET |
||
38 |
GND |
GND |
|
39 |
USB_DN |
USB_DN |
USB data - |
40 |
USB_DP |
USB_DP |
USB data + |
Распиновка
Разъём 40-pin на материнской плате
План
Добавить описание пинов
Консоль
UART-консоль выведена на 3-х контактный штырьевой разъем, расположенный на периферийной плате контроллера и отмеченный как CONSOLE. Назначение контактов разъема также нанесено на плату контроллера.
Подсказка
Драйвер для преобразователя интерфейса USB-UART CP2102 для ОС Windows можно скачать на сайте производителя.
В Linux установка дополнительного драйвера, как правило, не требуется.
Примечание
Для доступа к разъему необходимо открыть крышку контроллера
Для подключения к компьютеру можно использовать любой преобразователь интерфейсов USB-UART, например, CP2102 USB 2.0 to UART TTL.
Конфигурация порта:
Скорость 115200 бит/сек
Длина данных 8 бит
Стоп-бит 1
Контроль четности не используется
Аппаратное управление потоком не используется
Электропитание
Варианты электропитания
Предусмотрены следующие варианты электропитания:
От внешнего стабилизированного источника постоянного тока через внешнюю клемму.
Примечание
Рекомендуемый (номинальный) диапазон входных напряжений от 12В до 48В
Максимальный диапазон входного напряжения питания составляет от 9 до 56В.
Необходимо применять стабилизированный источник постоянного тока мощностью не менее 10Вт.
По технологии Passive PoE через разъем порта Ethernet.
Примечание
Рекомендуемое номинальное входное напряжение питания Passive PoE - от 12 до 48В.
Полярность подключения не имеет значения.
Контроллер может питать внешние маломощные устройства (датчики) с напряжением питания 5В. Выход 5В выведен на клемму контроллера. Максимальный ток, отдаваемый на внешнюю нагрузку - 0,2А.
Предупреждение
Во время прошивки контроллер может запитан от внешнего USB-порта через кабель USB type A - USB type A.
При прошивке контроллера отключите от него всю внешнюю нагрузку. Суммарный потребляемый ток при питании от порта USB не должен превышать 0.5А.
Данный вариант питания предназначен только для режима прошивки, штатная работа контроллера при подаче питания через USB) порт невозможна и может привести к выходу контроллера из строя.
При питании от USB будут недоступны порты RS485 на материнской плате.
Энергопотребление
Потребляемая мощность самого контроллера не более 5Вт (без учета внешних потребителей, подключенных к порту USB и клемме выходного напряжения 5В).
Потребляемая мощность зависит от загрузки процессора и периферийных устройств контроллера.
Приблизительный потребляемый ток от источника постоянного тока напряжением 24В для контроллера с конфигурацией 1ГБ RAM/32ГБ eMMC без загрузки процессора - 0.06А, при 100% загрузки всех 4-х ядер - 0.12А.
Программное обеспечение
Официально поддерживаемое программное обеспечение:
Примечание
Возможно также установить такие популярные системы для автоматизации: OpenHAB, NodeRed и другие, работающие на базе ОС Linux.
Прошивка контроллера
Подсказка
Актуальный образ прошивки для вашего устройства вы можете найти тут: JetHome firmware portal.
Подсказка
Подготовьте кабель USB type A - USB type A.
Для прошивки используйте разъём USB type A на материнской плате контроллера.
Перевод в режим прошивки
Предупреждение
Перед прошивкой:
Отключите внешнее питание контроллера.
В случае использования Passive PoE отключите разъем Ethernet.
Отключите от контроллера любые устройства, которые могут потреблять питание (USB, 1-Wire и др.).
Перевод в режим прошивки:
Отключите контроллер от всех источников питания.
Нажмите и удерживайте нажатой кнопку BOOT на лицевой панели контроллера (доступ к кнопке осуществляется через отверстие на лицевой панели контроллера)
Удерживая кнопку BOOT нажатой, подключите контроллер с помощью кабеля к компьютеру.
После подключения кабеля, через 3-5 секунд кнопку BOOT можно отпустить.
Прошивка
Предупреждение
Прошивка не рекомендованным методом может привести к неработоспособности контроллера!
При прошивке через загрузку с microSD или USB Flash c помощью утилиты armbian-install или прямой
записью в eMMC будет стерта служебная область, в которой содержится usid
(включающий hardware version
) на основе которого прошивка определяет установленный чип Wi-Fi / Bluetooth.
Рекомендуемые методы прошивки:
Прошивка из Windows осуществляется с помощью Amlogic Burning Tool.
Прошивка из Linux осуществляется с помощью Khadas Utils.
Прошивка контроллеров на базе Amlogic с помощью USB-флэш диска.
Возможные проблемы при прошивке
Программа не определяет подключенный контроллер
Подсказка
Убедитесь, что в момент подключения кабеля USB кнопка BOOT нажата. Не рекомендуется использовать для этого острые предметы (иголки и т.д.), используйте предметы с тупым концом (скрепки и т.д.)
Подключайте кабель USB быстро и до упора. Разъем USB устроен так, что при подключении кабеля сначала подключаются контакты питания, затем контакты для передачи данных. При этом может возникать ситуация когда при подаче питания процесс загрузки уже начался, а линии передачи данных USB еще не были подключены
Используйте кабель USB 2.0 вместо кабеля USB 3.0
Меры безопасности
Во время эксплуатации и технического обслуживания контроллера следует соблюдать требования ГОСТ 12.3.019-80, «Правил эксплуатации электроустановок потребителей» и «Правил охраны труда при эксплуатации электроустановок потребителей».
Любые подключения к прибору и работы по его техническому обслуживанию следует производить только при отключенном питании контроллера и подключенных к нему исполнительных механизмов.
Физический доступ к контроллеру при монтаже и обслуживании должен быть разрешен только квалифицированному обслуживающему персоналу.
Не допускается попадание влаги на контакты выходных соединителей и внутренние элементы контроллера.
Контроллер запрещено использовать при наличии в атмосфере кислот, щелочей, масел и иных агрессивных веществ.
Контроллер не предназначен для использования на объектах, потенциально представляющих опасность для жизни и здоровья окружающих.
Не допускается подключать прибор к локальной сети Ethernet с выходом в сеть Internet без обеспечения надежных средств межсетевой защиты.
Монтаж
Устройство может быть установлено в шкафу электрооборудования или другом месте, в котором должна быть обеспечена защита устройства от попадания влаги, грязи и посторонних предметов, а также отсутствие вибрации.
Примечание
Для лучшего охлаждения внутренних элементов корпус устройства необходимо устанавливать в вертикальном положении.
Для установки следует:
Убедиться в наличии свободного пространства для подключения устройства и прокладки проводов.
Надежно закрепить устройство на DIN-рейке или на вертикальной поверхности с помощью винтов.
Для демонтажа с DIN-рейки следует:
В проушину защелки вставить острие отвертки.
Отжать защелку вниз.
Отвести контроллер от DIN-рейки.
Условия эксплуатации
Температура окружающей среды: 0..+40 С.
Относительная влажность воздуха до 80% без конденсации влаги.
Закрытые взрывобезопасные помещения без агрессивных паров и газов.
Рекомендации по подключению
Для обеспечения надежности электрических соединений рекомендуется использовать медные многожильные кабели. Концы кабелей следует зачистить, потом залудить их или использовать кабельные наконечники. Жилы кабелей следует зачищать так, чтобы их оголенные концы после подключения к контроллеру не выступали за пределы клеммника.
Общие требования к линиям соединений:
Во время прокладки кабелей следует выделить линии связи, соединяющие устройство с датчиками или другими устройствами, в самостоятельные трассы, располагая их отдельно от силовых кабелей, а также от кабелей, создающих высокочастотные и импульсные помехи.
Для защиты входов устройства от влияния электромагнитных помех линии связи контроллера следует экранировать. В качестве экранов могут быть использованы специальные кабели с экранирующими оплетками.
В линии питания контроллера рекомендуется устанавливать фильтры сетевых помех.
В случае управления силовым оборудованием рекомендуется устанавливать искрогасящие фильтры на линии коммутации данного оборудования.
Ограничения
Предупреждение
Контроллер не предназначен для выполнения высоконагруженных задач в режиме «24/7», например, для обработки видео.