Hauptmenü

OLED am i2c des GPIO

Begonnen von JensS, 03 Dezember 2017, 18:10:35

Vorheriges Thema - Nächstes Thema

JensS

Hallo,

an meinen NanoPi Neo2 habe ein OLED (SSD1306) angebaut und kann mit Python auch was ausgeben :).
Nun möchte ich das Dingens gern in fhem nutzen. Habe "define i2cBUS RPII2C /dev/i2c-0" angelegt und bekomme mit "get i2cBUS read 3c" die Ausgabe: "received : 67  |  transmission: Ok". Nun dachte ich daran, ein OLED-Device zu definieren und weiß nicht wie. Welches Modul kann OLED am i2c des GPIO?

Folgende Datei habe ich erstellt. /opt/fhem/unused/test.py
import time
import sys
from luma.core.interface.serial import i2c
from luma.core.render import canvas
from luma.oled.device import ssd1306

serial = i2c(port=0, address=0x3C)
device = ssd1306(serial)

with canvas(device) as draw:
    draw.rectangle(device.bounding_box, outline="white")
    draw.text((3, 3), str(sys.argv[1]), fill="white")
time.sleep(3)

und rufe diese mit {my $text=InternalVal("Testdummy","STATE",0);;system("nohup python /opt/fhem/unused/test.py '$text' &")} auf.
Für 3 Sekunden erscheint dann auf dem Display der STATE des Testdummy.

Gruß Jens
Debian auf APU2C4, HM-CFG-USB2, SIGNALduino, HM-ES-PMSw1-Pl, TFA 30.3121, TFA 30.3125, ITS-150, PIR-5000, configurable Firmata USB & LAN, 1-wire: DS-18B20, DS-18S20, DS-2408, DS-2413, diverse I2C-Komponenten, zigbee2mqtt, ESPEasy etc.