Можно ли использовать ThingsBoard с виртуальным I2C? - PullRequest
0 голосов
/ 17 октября 2018

Я видел, что Thingsboard может отправлять запросы RPC (https://thingsboard.io/docs/user-guide/rule-engine-2-0/action-nodes/#rpc-call-request-node). В этом примере показано, как отправлять значения в GPIO.

Мне было интересно, могу ли я отправлять значения на физические устройства I2C, подключенные к Raspberry Pi?.

И если я использую i2c-заглушку для создания виртуальных устройств I2C, как я могу подключить их к Thingsboard? До сих пор я использую i2cset и i2cset на RPi для чтения и записи виртуальных датчиков.

Спасибо, Фелипе

1 Ответ

0 голосов
/ 18 октября 2018

Вы можете использовать это руководство: https://thingsboard.io/docs/samples/raspberry/gpio/

Основные точки:

def on_message(client, userdata, msg):
...
if data['method'] == 'getGpioStatus':
    client.publish(msg.topic.replace('request', 'response'), get_gpio_status(), 1)
elif data['method'] == 'setGpioStatus':
    set_gpio_status(data['params']['pin'], data['params']['enabled'])
    client.publish(msg.topic.replace('request', 'response'), get_gpio_status(), 1)
    client.publish('v1/devices/me/attributes', get_gpio_status(), 1)

Вы можете определить свои собственные функции и имена методов RPC для I2C (вместо использования get_gpio_status и set_gpio_status )

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...