Divoom Aurabox + Timebox + TimeboxEvo [Update, kommunizieren funktioniert]

Begonnen von schwatter, 25 Dezember 2017, 23:37:43

Vorheriges Thema - Nächstes Thema

schwatter

Update

Ein Script zum auslesen der Außentemperatur und anzeigen auf der Box.

#!/usr/bin/perl
require "/opt/fhem/divoom/divoom.pl";
$temp =  qx(/opt/fhem/fhem.pl 7072 <meinPasswort> "{sprintf('%.0f',ReadingsVal('MeinWetter','temperature',''))}");

if (connectDivoom('11:75:58:45:59:81'))
{
  sendPlain('450100', 5);
  sendPlain('5F'.sprintf("%02X", $temp).'00', 2, 0);
  disconnectDivoom();
}


@mumpitzstuff
Kannst du das Script bitte mal testen, wenn du Zeit hast.


edit:

So sollte es bei 16x16 Devices klappen.
Schaltet erst auf Temp(nur Temp ohne lästiges hin und her switchen wie mit der Divoomapp), dann übergibt das Script die Temp.

#!/usr/bin/perl
require "/opt/fhem/divoom2/divoom.pl";
$temp =  qx(/opt/fhem/fhem.pl 7072 <meinPasswort> "{sprintf('%.0f',ReadingsVal('MeinWetter','temperature',''))}");

if (connectDivoom('11:75:58:FD:4C:CC'))
{
  sendPlain('4500010000000100000000550002', 1);
  sendPlain('5F'.sprintf("%02X", $temp).'00', 2, 0);
  disconnectDivoom();
}

mumpitzstuff

Das kann ich leider nicht mehr ohne weiteres. Ich habe vor ein paar Wochen die SD Karte aus dem Pi gebraucht auf dem alles eingerichtet war. Ich müsste jetzt erst wieder alles zum laufen kriegen...


mumpitzstuff

Ich muss mal gucken, vielleicht gehts ja ausnahmsweise unkompliziert auf der Buster Installation. Die ist recht frisch und dort hatte ich bisher nichts groß mit bluetooth gemacht.

schwatter

Ok. Ich habe alle Pi's bei mir auf Buster. Alles ohne Probleme.

schwatter

Update:

Timesyncscript
Ich habe mir nochmal den Rawcode vom Timesync angeschaut. Erst kommt das Jahr und dann das Jahrhundert.
Deshalb wurde auch der Wochentag falsch angezeigt.

# 010b0018   13 14 09 19 13 37 3a 03 f3 00 02  # Hex
#einleiten   19 20 09 25 19 55 58 03 243 0 02  # Dec


Jetzt sollte es passen und alles richtig gesetzt werden.

#!/usr/bin/perl
require "/opt/fhem/divoom2/divoom.pl";
my ($sec,$min,$hour,$mday,$mon,$year,$wday,$yday,$isdst) = localtime(time);
my $fyear = 1900 + $year;

if (connectDivoom('11:75:58:FD:4C:CC'))
{
  sendPlain('18'.sprintf("%02X%02X%02X%02X%02X%02X%02X", ($year % 100),($fyear / 100),($mon + 1),$mday,$hour,$min,$sec), 1);
  disconnectDivoom();
}

mumpitzstuff

#306
Steht doch auch auf meiner Github Seite :)

Set Time: 18 
  -> Year (XX = year % 100, YY = year / 100): XXYY 
  -> Month: XX 
  -> Day: XX 
  -> Hours: XX 
  -> Minutes: XX 
  -> Seconds: XX

schwatter

Ja stimmt  ;D ich wollte das aber für mich nochmal vergleichen. Konnte nicht glauben
das das Format Jahr gefolgt von Jahrhundert ist. Wieder was gelernt.

namron2000

Ich bekomm es immer noch nicht hin... Immer wenn ich ein Befehl in der Console Ausprobiere kommt nur das Bluetooth Symbole auf meinem Pixoo und weiter passiert nix. Hab in der Divoom.pl port 1 und escape 0. Hab die Mac adresse in der Datei geändert aber irgend wie will es einfach nicht Funktionieren.

mumpitzstuff

#309
@schwatter: Hattest du nicht so einen Pixoo bei dir rumstehen?

@namrom2000: Wie sieht denn die Bildschirmausgabe genau aus bzw. dein Script?

schwatter

@namrom2000
Poste bitte mal die Ausgabe der Konsole
und die Dateien die du benutzt.
Außerdem die Konsolenausgaben
der Funktionsüberprüfung von Seite 1.

@mumpitzstuff
Hab ich, täglich im Einsatz. Funktioniert.

namron2000

Also meine Dateien sind im Anhang und das mit der Funktionsueberpruefung geht irgend wie nicht so, da mach ich glaube ich was falsch. Hab das alles auch erst mal nur auf meinem Desktop, weil ich es erst mal ueber die Console zum laufen bringen wollte.

pi@raspberrypi:~ $ cd Desktop/fhem-Divoom-master/
pi@raspberrypi:~/Desktop/fhem-Divoom-master $ perl setWeather.pl
Create RFCOMM client (11:75:58:5A:C3:8D with port 1)...

Wenn ich das ausfuehre erscheint das Bluetooth symbol auf meinem Pixoo, mehr aber nicht.


Das kommt bei dem Funktionsueberpruefung:
pi@raspberrypi:~ $ /opt/fhem/divoom/fhem-Divoom-master# rfcomm
bash: /opt/fhem/divoom/fhem-Divoom-master#: Datei oder Verzeichnis nicht gefunden


Und sry fuer das Format kenne mich mit dem Forum noch nicht so aus.

mumpitzstuff

#312
Hast du auch die Abhängigkeiten installiert?

sudo apt install bluez bluez-tools libnet-bluetooth-perl
sudo apt-get install libimager-perl
sudo apt-get install libgd-graph-perl oder sudo apt-get install llibgd-perl
sudo apt-get install bluealsa

namron2000

Ja hab ich, hab es jetzt auch noch mal gemacht um sicher zu gehen. Nur bei bluealsa steht das es das Packet nich gefundet hat.

schwatter