Linux контроллер JetHome JetHub D1

../../../_images/d1_face.png

Подсказка

Контроллер можно приобрести на сайте производителя: 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ГБайт.

Конструкция

../../../_images/d1_info_drawing.png

На верхней стороне контроллера расположены:

  1. Разъем Ethernet (RJ45)

  2. Разъем 1-Wire

  3. Терминатор линии порта RS485-1

  4. Клеммы порта RS485-1

  5. Клеммы порта RS485-2

  6. Терминатор линии порта RS485-2

  7. Разъем USB

На лицевой стороне контроллера расположены элементы индикации и управления:

  1. Двухцветный пользовательский светодиод (STAT)

  2. Светодиод индикации наличия питания (PWR)

  3. Пользовательская кнопка

  4. Внутренняя кнопка переключения режима загрузки (BOOT)

На нижней стороне контроллера расположены:

  1. Клеммы подключения источника питания

  2. Клеммы реле 1

  3. Клеммы реле 2

  4. Клеммы реле 3

  5. Клемма дискретного входа 1

  6. Клемма дискретного входа 2

  7. Клемма дискретного входа 3

  8. Клемма дискретного входа 4

  9. Клемма общего контакта (GND)

  10. Клемма выхода +5В. Может использоваться для питания внешних устройств (датчиков) с током потребления не более 0,5А

  11. Разъем для подключения внешней антенны беспроводного модуля связи 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

Кнопки

На лицевой панели контроллера установлены 2 кнопки:

  • Пользовательская кнопка FN. Назначение данной кнопки определяется установленным ПО.

  • Кнопка для переключения режима загрузки «BOOT» (доступна через отверстие на лицевой панели контроллера). Используется для переключения в режим прошивки процессорного модуля.

Таблица GPIO кнопок передней панели:

Кнопка

Вывод

Linux2

gpiolib

Active low

Пользовательская

GPIOZ_10

522 (436)

10

0

2

в скобках указано значение для 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

../../../_images/onewire_rj22.png

Назначение выводов:

Номер

Назначение

Описание

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 на процессорном модуле установлен литиевый элемент питания с напряжением типоразмера CR1220.

Беспроводной модуль (Zigbee)

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

Рядом с посадочным местом для беспроводного модуля на материнской плате контроллера предусмотрена установка разъема WM DBG, предназначенного для отладки или прошивки беспроводного модуля. Разъем устанавливается в зависимости от комплектации материнской платы.

JTAG (WM DBG):

../../../_images/wm_dbg.png

Модуль подключен к порту 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 +

Распиновка

../../../_images/40_pin_connector.png

Разъём 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В.

    • Полярность подключения не имеет значения.

Контроллер может питать внешние маломощные устройства (датчики) с напряжением питания . Выход выведен на клемму контроллера. Максимальный ток, отдаваемый на внешнюю нагрузку - 0,2А.

Предупреждение

Во время прошивки контроллер может запитан от внешнего USB-порта через кабель USB type A - USB type A.

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

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

При питании от USB будут недоступны порты RS485 на материнской плате.

Энергопотребление

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

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

Приблизительный потребляемый ток от источника постоянного тока напряжением 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.

Возможные проблемы при прошивке

Программа не определяет подключенный контроллер

Подсказка

  • Убедитесь, что в момент подключения кабеля 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», например, для обработки видео.