![]() |
|
![]() |
#1 |
Junior Member
Регистрация: 05.11.2017
Сообщений: 16
|
![]()
Всем привет.
Суть. Автомагнитола отправляет сигнал по CAN линии- can адаптер принимает и отправляет в raspberry pi - аддон распознает входящий код как сетевой интерфейс Код:
#!/root/.xbmc/userdata/Rnse_Bediening.py # HIERONDER IMPORTS EN VARIABELEN DECLAREREN # __________________________________________ from __future__ import print_function import xbmc import os import sys import threading import can can.rc['interface'] = 'socketcan_ctypes' from threading import Thread, Timer from can.interfaces.interface import Bus can_interface = 'can0' global var var=1 # Bij afsluiten wordt var0 # HIERONDER FUNCTIES PLAATSEN / DECLAREREN # __________________________________________ def dumpcan(): # Can berichten scannen + omzetten naar kodi / python acties global var up=0 down=0 prev=0 next=0 press=0 retrn=0 setup=0 windowid=0 for message in Bus(can_interface): if var==1: msg = unicode(message).encode('utf-8') canid = msg[26:29] msg = msg[45:69] if canid == ("464"): # Canid 464 wordt gebruikt voor het gebruik van RNS-E knoppen. if msg == ("15 20 02 02 00"): #Up if up==1: xbmc.executeJSONRPC('{"jsonrpc":"2.0","method":"Input.Up","id":1}') up=0 else: up+=1 elif msg == ("23 20 02 20 00"): #Down if down==1: xbmc.executeJSONRPC('{"jsonrpc":"2.0","method":"Input.Down","id":1}') down=0 else: down+=1 вот строка if msg == ("10 20 02 02 00"): #Up Следующая будет if msg == ("12 20 02 02 00"): #Up Следующая будет if msg == ("1С 20 02 02 00"): #Up Как пропустить первые два символа? Надо что-то, типа того if msg == ("** 20 02 02 00"): #Up Остальные символы кода неизменны Если надо, то инфа взята тут https://vaipui.wordpress.com/2016/06...i-3-with-kodi/ |
![]() |
![]() |
![]() |
#2 |
Junior Member
Регистрация: 17.01.2020
Адрес: Пинск
Сообщений: 1
|
![]()
Была такая же проблема, но решить сама не смогла.
|
![]() |
![]() |
![]() |
#3 |
Senior Member
Регистрация: 29.11.2010
Адрес: Минск
Сообщений: 1,513
|
![]()
Походу msg[45:69] Берет просто больше чем тебе надо Попробуй взять на три символа дальше, msg = msg[48:69] должно взять только 20 02 02 00
А if msg == ("20 02 02 00") Или 20 02 02 00 и на других кнопках висит ? Последний раз редактировалось sovaby; 17.01.2020 в 17:04. |
![]() |
![]() |
![]() |
#4 |
Junior Member
Регистрация: 05.11.2017
Сообщений: 16
|
![]()
Большое спасибо, помогло. Раньше пользовался [3:], а с этим захватом, быстрее отклик стал.
|
![]() |
![]() |
![]() |
Здесь присутствуют: 1 (пользователей: 0 , гостей: 1) | |
Опции темы | |
Опции просмотра | |
|
|
![]() |
||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
Нужна помощь для доработки kodi под себя | pandoracin | Помощь по скинам | 1 | 02.03.2020 13:24 |
нужна помощь | onix71 | Поддержка платформы Linux \ Live | 2 | 29.09.2015 15:48 |
Kodi 14.0 + Ubuntu 14.10 x64(нужна помощь) | an333 | Подсказки, описания и FAQ по XBMC | 2 | 07.04.2015 02:30 |
нужна помощь | danila | Поддержка платформы Linux \ Live | 3 | 18.12.2012 10:50 |
нужна помощь! | RedDemon | Помощь по плагинам | 1 | 11.11.2011 13:34 |