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

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

Vorheriges Thema - Nächstes Thema

mumpitzstuff

#195
Ich habe auch ein wenig was bzw. ich konnte deine letzten 4 Beispiele von dir mittels Perl Code rekonstruieren.

  sendRaw('01340044000a0a04aa2d0000000002000000ffffffaaaa000000000000000000000000000000000000000000000000000000000000ba0502', 5); # schwarz/weiß abwechselnd/ erste Reihe
  sendRaw('01570044000a0a04aa500000000003000000fe00000000fe24000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000d00302', 5); # 1xschwarz/1xrot/1xblau/Rest schwarz
  sendRaw('01570044000a0a04aa500000000003000000fe00000000fe94020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000420402', 5); # 1xschwarz/2xrot/2xblau/Rest schwarz
  sendRaw('01570044000a0a04aa500000000003000000fe00000000fe940a00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000004a0402', 5); # 1xschwarz/2xrot/3xblau/Rest schwarz


#!/usr/bin/perl
use strict;
use warnings;

#print unpack('H*', pack('b*', '1000000001010101'))."\n";
#print substr(unpack('b*', pack('C*', 2)), 0, 2)."\n";

my @img = ( 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1, 0, 1,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
            0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
my $imgBin = '';
my $i;

foreach (@img)
{
  $imgBin .= substr(unpack('b*', pack('C*', $_)), 0, 1);
}

# 2 colors
print '02';
# color codes
print '000000ffffff';
print unpack('H*', pack('b*', $imgBin))."\n";

# original data
print "02000000ffffffaaaa000000000000000000000000000000000000000000000000000000000000\n\n";

@img = ( 0, 1, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
$imgBin = '';

foreach (@img)
{
  $imgBin .= substr(unpack('b*', pack('C*', $_)), 0, 2);
}

# 3 colors
print '03';
# color codes
print '000000fe00000000fe';
print unpack('H*', pack('b*', $imgBin))."\n";

# original data
print "03000000fe00000000fe24000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\n\n";

@img = ( 0, 1, 1, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
$imgBin = '';

foreach (@img)
{
  $imgBin .= substr(unpack('b*', pack('C*', $_)), 0, 2);
}

# 3 colors
print '03';
# color codes
print '000000fe00000000fe';
print unpack('H*', pack('b*', $imgBin))."\n";

# original data
print "03000000fe00000000fe94020000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\n\n";

@img = ( 0, 1, 1, 2, 2, 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,
         0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0 );
$imgBin = '';

foreach (@img)
{
  $imgBin .= substr(unpack('b*', pack('C*', $_)), 0, 2);
}

# 3 colors
print '03';
# color codes
print '000000fe00000000fe';
print unpack('H*', pack('b*', $imgBin))."\n";

# original data
print "03000000fe00000000fe940a0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000\n\n";


Jetzt muss ich mir aus dem Bild nur noch die Farbwerte und das Array raus lutschen, dann sollte der Bildkonverter fertig sein.

mumpitzstuff

#196
Schau dir das mal bitte an. Funktioniert das zufällig bei dir?

PS: Denk bitte dran den Port bei connect richtig zu setzen und das Escapen auszuschalten.


schwatter

Hey,

habe es getestet. Kommt noch Pixelsalat.

root@raspberrypi:/opt/fhem/divoom3# perl setPictureTbEvo.pl
Image: 16x16 (maxcolors: no palette found, usedcolors: 18)
Create RFCOMM client (11:75:68:C9:7D:36 with port 1)...

done

Send plain command: 4500
Generated raw command: 0104004500490002
Send raw command: 0104004500490002
No answer from device!
Device answer: 01
done

Send plain command: 44000A0A04AA2D0000000012000000FFFFFF0000FF0000F8FFFF00F8F800DDDD00F8FF00DDFF00DB0000FAFFFFF70000FF0505DC0303DC0000F70404FF0404FFFFF8000000000000000100000002030303000000000200000000000000000000020000000000000004050504000000000200000000000004050505050400000000000100000004000000000000040000010000000004050004000004000504000000000000050605060505060506050000000000000506060506060506060500000200000004060500040400050604000000000000000405000000000507000000000000000000040505050508090a0b010000000c000c0004050507090d0e0d0b00000c0d0f0d0c000000000a090d090a000000100d100000000000010a0b0a11020000000c00000000000000000000000000000000000000000000000000000000
Generated raw command: 01440144000A0A04AA2D0000000012000000FFFFFF0000FF0000F8FFFF00F8F800DDDD00F8FF00DDFF00DB0000FAFFFFF70000FF0505DC0303DC0000F70404FF0404FFFFF8000000000000000100000002030303000000000200000000000000000000020000000000000004050504000000000200000000000004050505050400000000000100000004000000000000040000010000000004050004000004000504000000000000050605060505060506050000000000000506060506060506060500000200000004060500040400050604000000000000000405000000000507000000000000000000040505050508090a0b010000000c000c0004050507090d0e0d0b00000c0d0f0d0c000000000a090d090a000000100d100000000000010a0b0a11020000000c000000000000000000000000000000000000000000000000000000001D1F02
Send raw command: 01440144000A0A04AA2D0000000012000000FFFFFF0000FF0000F8FFFF00F8F800DDDD00F8FF00DDFF00DB0000FAFFFFF70000FF0505DC0303DC0000F70404FF0404FFFFF8000000000000000100000002030303000000000200000000000000000000020000000000000004050504000000000200000000000004050505050400000000000100000004000000000000040000010000000004050004000004000504000000000000050605060505060506050000000000000506060506060506060500000200000004060500040400050604000000000000000405000000000507000000000000000000040505050508090a0b010000000c000c0004050507090d0e0d0b00000c0d0f0d0c000000000a090d090a000000100d100000000000010a0b0a11020000000c000000000000000000000000000000000000000000000000000000001D1F02
Device answer: 01
done

root@raspberrypi:/opt/fhem/divoom3#


edit:

Hier mal ein Bild

https://www.dropbox.com/home/Divoom/TestPicture?preview=IMG_20181205_215551.jpg

schwatter

Aber auch ein Erfolg, die angehängten Bilder funktionieren. Sind in rein rot.

#!/usr/bin/perl
require "./divoom.pl";

# load picture
my $pic = convertImageTBEVO('/opt/fhem/divoom3/tb_evo.png', 16);
my $pic1 = convertImageTBEVO('/opt/fhem/divoom3/1.png', 16);
my $pic2 = convertImageTBEVO('/opt/fhem/divoom3/2.png', 16);
my $pic3 = convertImageTBEVO('/opt/fhem/divoom3/3.png', 16);
my $pic4 = convertImageTBEVO('/opt/fhem/divoom3/4.png', 16);
my $pic5 = convertImageTBEVO('/opt/fhem/divoom3/5.png', 16);
my $pic6 = convertImageTBEVO('/opt/fhem/divoom3/6.png', 16);
my $pic7 = convertImageTBEVO('/opt/fhem/divoom3/7.png', 16);
my $pic8 = convertImageTBEVO('/opt/fhem/divoom3/8.png', 16);


if (connectDivoom('11:75:68:C9:7D:36'))
{
  #setClockGreen
  sendRaw('010d00450001000100000000ff05580102', 10);
  # set picture
  #sendPlain('44000A0A04AA2D00000000'.$pic, 1, 0);
  sendPlain('44000A0A04AA2D00000000'.$pic1, 2, 0);
  sendPlain('44000A0A04AA2D00000000'.$pic2, 2, 0);
  sendPlain('44000A0A04AA2D00000000'.$pic3, 2, 0);
  sendPlain('44000A0A04AA2D00000000'.$pic4, 2, 0);
  sendPlain('44000A0A04AA2D00000000'.$pic5, 2, 0);
  sendPlain('44000A0A04AA2D00000000'.$pic6, 2, 0);
  sendPlain('44000A0A04AA2D00000000'.$pic7, 2, 0);
  sendPlain('44000A0A04AA2D00000000'.$pic8, 2, 0);
  disconnectDivoom();
}


root@raspberrypi:/opt/fhem/divoom3# perl setPictureTbEvo.pl
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 3)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 1)
Image: 16x16 (maxcolors: no palette found, usedcolors: 1)
Create RFCOMM client (11:75:68:C9:7D:36 with port 1)...

done

Send raw command: 010d00450001000100000000ff05580102
Device answer: 01
done

Send plain command: 44000A0A04AA2D0000000002000000FF00000000000000000000000000000000800180010000000000000000000000000000
Generated raw command: 01340044000A0A04AA2D0000000002000000FF000000000000000000000000000000008001800100000000000000000000000000006A0302
Send raw command: 01340044000A0A04AA2D0000000002000000FF000000000000000000000000000000008001800100000000000000000000000000006A0302
Device answer: 01
done

Send plain command: 44000A0A04AA2D00000000030000008F0000AB000000000000000000000000000000000000004001000040010000200800000550000005500000200800004001000040010000000000000000000000000000000000
Generated raw command: 01570044000A0A04AA2D00000000030000008F0000AB000000000000000000000000000000000000004001000040010000200800000550000005500000200800004001000040010000000000000000000000000000000000C50402
Send raw command: 01570044000A0A04AA2D00000000030000008F0000AB000000000000000000000000000000000000004001000040010000200800000550000005500000200800004001000040010000000000000000000000000000000000C50402
Device answer: 01
done

Send plain command: 44000A0A04AA2D0000000002000000FF00000000000000008001300c300c0000081008100000300c300c8001000000000000
Generated raw command: 01340044000A0A04AA2D0000000002000000FF00000000000000008001300c300c0000081008100000300c300c80010000000000008A0402
Send raw command: 01340044000A0A04AA2D0000000002000000FF00000000000000008001300c300c0000081008100000300c300c80010000000000008A0402
Device answer: 01
done

Send plain command: 44000A0A04AA2D0000000002000000FF00000000800180010810000000000000066006600000000000000810800180010000
Generated raw command: 01340044000A0A04AA2D0000000002000000FF00000000800180010810000000000000066006600000000000000810800180010000680502
Send raw command: 01340044000A0A04AA2D0000000002000000FF00000000800180010810000000000000066006600000000000000810800180010000680502
Device answer: 01
done

Send plain command: 44000A0A04AA2D0000000002000000FF00008001066006600000000000000000018001800000000000000000066006608001
Generated raw command: 01340044000A0A04AA2D0000000002000000FF00008001066006600000000000000000018001800000000000000000066006608001040602
Send raw command: 01340044000A0A04AA2D0000000002000000FF00008001066006600000000000000000018001800000000000000000066006608001040602
Device answer: 01
done

Send plain command: 44000A0A04AA2D0000000002FF0000000000fe7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f
Generated raw command: 01340044000A0A04AA2D0000000002FF0000000000fe7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f462102
Send raw command: 01340044000A0A04AA2D0000000002FF0000000000fe7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f462102
Device answer: 01
done

Send plain command: 44000A0A04AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000
Generated raw command: 01310044000A0A04AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000650102
Send raw command: 01310044000A0A04AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000650102
Device answer: 01
done

Send plain command: 44000A0A04AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000
Generated raw command: 01310044000A0A04AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000650102
Send raw command: 01310044000A0A04AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000650102
Device answer: 01
done

root@raspberrypi:/opt/fhem/divoom3#

schwatter

Erfolg, muss an deinem Bild liegen. Das Bild hier funktioniert  :)

root@raspberrypi:/opt/fhem/divoom3# perl setPictureTbEvo.pl
Image: 16x16 (maxcolors: no palette found, usedcolors: 177)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 3)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 1)
Image: 16x16 (maxcolors: no palette found, usedcolors: 1)
Create RFCOMM client (11:75:68:C9:7D:36 with port 1)...

done

Send raw command: 010d00450001000100000000ff05580102
Device answer: 01
done

Send plain command: 44000A0A04AA2D00000000B1939393AEAEAEABABABC2C4C4D9D9D8000000D9D9D9C3C4C3ACACACAFAFAFCECECFFCFCFBF4F73AE0E121E1DB35E1E11DDEDF34F6F72BCBCBCCCBCBCBFBFBFAF7F827E2E110C7C71DCACB07C9C61CCBCC05C8C71CCBCB08E1DF26F7FA16F8F8F8C7C7C7C3C4C5F7F928C9DA31C6C71DCAD92EC6C91BC6C530C8C81DC4C631CBDD17C5C434CBDD1BF4F43BE0E0DED8D9D7F4FF10BE003BDFFF06C0003CD6F00CC7C71CCACD05D4EF1CCB0033D5FF18CA002EE8FF1FF7F7F9FAFF35BF0040B8123AC7003CB7123AB80039C7DB2ED4DA1FAC003CCA0A39B6003DCB0A3BAE003FF9FF29DFE122D4F208BC0039E00038B90038CDF409C9C81BC9CD04D0F021CC0018CC083AC50032CAF41CDFE20D000001E0DC34CFEF2CB20033CBF030DDE21DC8C230C9C91BD8DE34D5F11DAC003ECDF31DC7C330DFDE24E2E21DCBCB06C8C91CCFE006DFE01FE0E21CDDE40DE0E50BCADC1ECACC05C9C91CE1E30BDEDF33C9C71EC6C433CBD92FD50037C6DC2FD1DB1DCB0042C8DF1AC7C530C8C331DCE022F6F72CCACA09C7C81BDEE00EE3F420DA003DDFF620EDF410D10044E1F70FCAC908C8C81BF4F817D8D9D9E2DE26DDDD36000008E0E023DEDB35F8F8F6C3C4C2F7F915C7C71FF9F814AF2C179D291BA22B19A32E20F4F626DFDFDFF4F33CE0DF1CF2F737F6F825DEDB36F4F725F8F9F9C8C8C8CACBCBF8F7F7F5F727F8FA15F7F62CF8FC13F7F916F9F9F8C7C8C8DFDFDEF8F8F9E0E0E000010203040505050505050607020802090a0b05050c0d0e0f101105050b121302140515161718191a1b1c1d1e051f20210522232425262728292a2b2c2d052e2f05303132333435363738393a3b053c053d3e3f404142434445464748494a05054b4c4d4e4f50515253545556575859055a515b5c5d5e5f6061626364656605056768696a6b056c6d056e6f707172050573747519767778797a7b7c197d7e05057f80818283848586878866898a8b058c058d8e0559050505058f05909105929305949596059798999a0515899b059c080b059d9e9f05050505a0a1a205a3a402a5a60505a7a8a9aa11ab0505acad200813a4aeaf05050505050592b020a420
Generated raw command: 01210344000A0A04AA2D00000000B1939393AEAEAEABABABC2C4C4D9D9D8000000D9D9D9C3C4C3ACACACAFAFAFCECECFFCFCFBF4F73AE0E121E1DB35E1E11DDEDF34F6F72BCBCBCCCBCBCBFBFBFAF7F827E2E110C7C71DCACB07C9C61CCBCC05C8C71CCBCB08E1DF26F7FA16F8F8F8C7C7C7C3C4C5F7F928C9DA31C6C71DCAD92EC6C91BC6C530C8C81DC4C631CBDD17C5C434CBDD1BF4F43BE0E0DED8D9D7F4FF10BE003BDFFF06C0003CD6F00CC7C71CCACD05D4EF1CCB0033D5FF18CA002EE8FF1FF7F7F9FAFF35BF0040B8123AC7003CB7123AB80039C7DB2ED4DA1FAC003CCA0A39B6003DCB0A3BAE003FF9FF29DFE122D4F208BC0039E00038B90038CDF409C9C81BC9CD04D0F021CC0018CC083AC50032CAF41CDFE20D000001E0DC34CFEF2CB20033CBF030DDE21DC8C230C9C91BD8DE34D5F11DAC003ECDF31DC7C330DFDE24E2E21DCBCB06C8C91CCFE006DFE01FE0E21CDDE40DE0E50BCADC1ECACC05C9C91CE1E30BDEDF33C9C71EC6C433CBD92FD50037C6DC2FD1DB1DCB0042C8DF1AC7C530C8C331DCE022F6F72CCACA09C7C81BDEE00EE3F420DA003DDFF620EDF410D10044E1F70FCAC908C8C81BF4F817D8D9D9E2DE26DDDD36000008E0E023DEDB35F8F8F6C3C4C2F7F915C7C71FF9F814AF2C179D291BA22B19A32E20F4F626DFDFDFF4F33CE0DF1CF2F737F6F825DEDB36F4F725F8F9F9C8C8C8CACBCBF8F7F7F5F727F8FA15F7F62CF8FC13F7F916F9F9F8C7C8C8DFDFDEF8F8F9E0E0E000010203040505050505050607020802090a0b05050c0d0e0f101105050b121302140515161718191a1b1c1d1e051f20210522232425262728292a2b2c2d052e2f05303132333435363738393a3b053c053d3e3f404142434445464748494a05054b4c4d4e4f50515253545556575859055a515b5c5d5e5f6061626364656605056768696a6b056c6d056e6f707172050573747519767778797a7b7c197d7e05057f80818283848586878866898a8b058c058d8e0559050505058f05909105929305949596059798999a0515899b059c080b059d9e9f05050505a0a1a205a3a402a5a60505a7a8a9aa11ab0505acad200813a4aeaf05050505050592b020a420C58102
Send raw command: 01210344000A0A04AA2D00000000B1939393AEAEAEABABABC2C4C4D9D9D8000000D9D9D9C3C4C3ACACACAFAFAFCECECFFCFCFBF4F73AE0E121E1DB35E1E11DDEDF34F6F72BCBCBCCCBCBCBFBFBFAF7F827E2E110C7C71DCACB07C9C61CCBCC05C8C71CCBCB08E1DF26F7FA16F8F8F8C7C7C7C3C4C5F7F928C9DA31C6C71DCAD92EC6C91BC6C530C8C81DC4C631CBDD17C5C434CBDD1BF4F43BE0E0DED8D9D7F4FF10BE003BDFFF06C0003CD6F00CC7C71CCACD05D4EF1CCB0033D5FF18CA002EE8FF1FF7F7F9FAFF35BF0040B8123AC7003CB7123AB80039C7DB2ED4DA1FAC003CCA0A39B6003DCB0A3BAE003FF9FF29DFE122D4F208BC0039E00038B90038CDF409C9C81BC9CD04D0F021CC0018CC083AC50032CAF41CDFE20D000001E0DC34CFEF2CB20033CBF030DDE21DC8C230C9C91BD8DE34D5F11DAC003ECDF31DC7C330DFDE24E2E21DCBCB06C8C91CCFE006DFE01FE0E21CDDE40DE0E50BCADC1ECACC05C9C91CE1E30BDEDF33C9C71EC6C433CBD92FD50037C6DC2FD1DB1DCB0042C8DF1AC7C530C8C331DCE022F6F72CCACA09C7C81BDEE00EE3F420DA003DDFF620EDF410D10044E1F70FCAC908C8C81BF4F817D8D9D9E2DE26DDDD36000008E0E023DEDB35F8F8F6C3C4C2F7F915C7C71FF9F814AF2C179D291BA22B19A32E20F4F626DFDFDFF4F33CE0DF1CF2F737F6F825DEDB36F4F725F8F9F9C8C8C8CACBCBF8F7F7F5F727F8FA15F7F62CF8FC13F7F916F9F9F8C7C8C8DFDFDEF8F8F9E0E0E000010203040505050505050607020802090a0b05050c0d0e0f101105050b121302140515161718191a1b1c1d1e051f20210522232425262728292a2b2c2d052e2f05303132333435363738393a3b053c053d3e3f404142434445464748494a05054b4c4d4e4f50515253545556575859055a515b5c5d5e5f6061626364656605056768696a6b056c6d056e6f707172050573747519767778797a7b7c197d7e05057f80818283848586878866898a8b058c058d8e0559050505058f05909105929305949596059798999a0515899b059c080b059d9e9f05050505a0a1a205a3a402a5a60505a7a8a9aa11ab0505acad200813a4aeaf05050505050592b020a420C58102
Device answer: 01
done

root@raspberrypi:/opt/fhem/divoom3#


edit:
Habe noch mehr Bilder erfolgreich getestet.
Das parsen und neubauen des Bildes dauert pro Bild ca. 10 Sekunden.

edit2:
Das Bild oben was nicht funktioniert hat, war wohl beim Upload von mir schon defekt...
Habe das von mir ein paar Antworten vorher nochmal getestet. Gleicher Effekt.
Das 240x240Pixel wird astrein gesendet, ist dann halt blurred.

mumpitzstuff

Also deine Bilder haben alle funktioniert und nur das von mir nicht? Komisch. Aber zumindest grundsätzlich geht ja schon mal was.
10s ist natürlich ganz schön bescheiden, wobei mir das extrem lange erscheint. Ich muss mir mal ansehen, wo ich da noch was machen kann. Zur Not kann man aber die Plain Nachricht verwenden, anstatt das Bild zu laden.

schwatter

Mit mehr oder weniger Bildern nacheinander senden getestet, der Break ist immer 10sec.

edit....

Ich habe ein Break im Kopf....meine Schuld....Habe Delay von 10 Sec. gesetzt. Morgen gehts weiter,
bin Müde ^^

mumpitzstuff

Ahh hehe. Dann bin ich ja beruhigt. Habe trotzdem grade noch etwas geschraubt. Wenn das Bild jetzt genauso groß ist wie es sein soll, dann wird kein resize mehr gemacht. Außerdem verwende ich Zahlen für den Hash anstatt einem String. Eventuell geht das ebenfalls schneller. Ich würde es dann so erst einmal einchecken.

PS: Deine Farbänderung für die Aurabox ist jetzt auch drin.

schwatter

Sieht mit der Änderung Ok aus.
So, jetzt geht es weiter mit Animation in den Speicher laden. Werde mal testen.

schwatter

So,

ich habe Animation stumpf von der Aurabox/Timebox übernommen und erweitert. Leider, first shot, kein Ergebnis.

#!/usr/bin/perl
require "./divoom.pl";

# load animation pictures
my $pic1 = convertImageTBEVO('timeboxevo/1.png', 16);
my $pic2 = convertImageTBEVO('timeboxevo/2.png', 16);
my $pic3 = convertImageTBEVO('timeboxevo/3.png', 16);
my $pic4 = convertImageTBEVO('timeboxevo/4.png', 16);
my $pic5 = convertImageTBEVO('timeboxevo/5.png', 16);
my $pic6 = convertImageTBEVO('timeboxevo/6.png', 16);
my $pic7 = convertImageTBEVO('timeboxevo/7.png', 16);
my $pic8 = convertImageTBEVO('timeboxevo/8.png', 16);

if (connectDivoom('11:75:68:C9:7D:36'))
{
  # set clock
  sendRaw('010d00450001000100000000ff05580102', 2);
  # set animation
  sendPlain('49000A0A040000AA2D00000000'.$pic1, 1, 0);
  sendPlain('49000A0A040100AA2D00000000'.$pic2, 1, 0);
  sendPlain('49000A0A040200AA2D00000000'.$pic3, 1, 0);
  sendPlain('49000A0A040300AA2D00000000'.$pic4, 1, 0);
  sendPlain('49000A0A040400AA2D00000000'.$pic5, 1, 0);
  sendPlain('49000A0A040500AA2D00000000'.$pic6, 1, 0);
  sendPlain('49000A0A040600AA2D00000000'.$pic7, 1, 0);
  sendPlain('49000A0A040700AA2D00000000'.$pic8, 1, 0);
  disconnectDivoom();
}


root@raspberrypi:/opt/fhem/divoom2# perl setAnimation.pl
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 3)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 1)
Image: 16x16 (maxcolors: no palette found, usedcolors: 1)
Create RFCOMM client (11:75:68:C9:7D:36 with port 1)...

done

Send raw command: 010d00450001000100000000ff05580102
Device answer: 01
done

Send plain command: 49000A0A040000AA2D0000000002000000FF00000000000000000000000000000000800180010000000000000000000000000000
Generated raw command: 01360049000A0A040000AA2D0000000002000000FF00000000000000000000000000000000800180010000000000000000000000000000710302
Send raw command: 01360049000A0A040000AA2D0000000002000000FF00000000000000000000000000000000800180010000000000000000000000000000710302
Device answer: 01
done

Send plain command: 49000A0A040100AA2D00000000030000008F0000AB000000000000000000000000000000000000004001000040010000200800000550000005500000200800004001000040010000000000000000000000000000000000
Generated raw command: 01590049000A0A040100AA2D00000000030000008F0000AB000000000000000000000000000000000000004001000040010000200800000550000005500000200800004001000040010000000000000000000000000000000000CD0402
Send raw command: 01590049000A0A040100AA2D00000000030000008F0000AB000000000000000000000000000000000000004001000040010000200800000550000005500000200800004001000040010000000000000000000000000000000000CD0402
No answer from device!
done

Send plain command: 49000A0A040200AA2D0000000002000000FF00000000000000008001300c300c0000081008100000300c300c8001000000000000
Generated raw command: 01360049000A0A040200AA2D0000000002000000FF00000000000000008001300c300c0000081008100000300c300c8001000000000000930402
Send raw command: 01360049000A0A040200AA2D0000000002000000FF00000000000000008001300c300c0000081008100000300c300c8001000000000000930402
No answer from device!
done

Send plain command: 49000A0A040300AA2D0000000002000000FF00000000800180010810000000000000066006600000000000000810800180010000
Generated raw command: 01360049000A0A040300AA2D0000000002000000FF00000000800180010810000000000000066006600000000000000810800180010000720502
Send raw command: 01360049000A0A040300AA2D0000000002000000FF00000000800180010810000000000000066006600000000000000810800180010000720502
No answer from device!
done

Send plain command: 49000A0A040400AA2D0000000002000000FF00008001066006600000000000000000018001800000000000000000066006608001
Generated raw command: 01360049000A0A040400AA2D0000000002000000FF000080010660066000000000000000000180018000000000000000000660066080010F0602
Send raw command: 01360049000A0A040400AA2D0000000002000000FF000080010660066000000000000000000180018000000000000000000660066080010F0602
No answer from device!
done

Send plain command: 49000A0A040500AA2D0000000002FF0000000000fe7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f
Generated raw command: 01360049000A0A040500AA2D0000000002FF0000000000fe7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f522102
Send raw command: 01360049000A0A040500AA2D0000000002FF0000000000fe7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffe7f522102
No answer from device!
done

Send plain command: 49000A0A040600AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000
Generated raw command: 01330049000A0A040600AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000720102
Send raw command: 01330049000A0A040600AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000720102
No answer from device!
done

Send plain command: 49000A0A040700AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000
Generated raw command: 01330049000A0A040700AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000730102
Send raw command: 01330049000A0A040700AA2D00000000010000000000000000000000000000000000000000000000000000000000000000000000730102
No answer from device!
done

root@raspberrypi:/opt/fhem/divoom2#

mumpitzstuff

Das war fast klar. Du must den Download einer Animation mit loggen, um das neue Format zu ermitteln. Da das Kommandobyte 49 bestimmt gleich ist, hast du das sicher schnell gefunden.

schwatter

So, ich meine, ich habe eine komplette Animation zusammen.


  sendRaw('01ce0049450700aa79004d000006000000780303ff0000146464074624ffffff000000000000000000000000000000400000000000880200000000c00000000000c000000000001800000000802400000000902b01000000901b010000008ce400000000601b0000000000000000000000000000000000000000000000000000aa67004d000100000000000000000000000000000000000000000000400000000000c00000000000c000000000001800000000802400000000902b01000000901b010000008ce400000000601b0000271602', 1);
  sendRaw('01ce0049450701000000000000000000000000000000000000000000000000aa67004d000100000000000000000000000000000000000000000000400000000000880200000000c000000000001800000000802400000000902b01000000901b010000008ce400000000601b0000000000000000000000000000000000000000000000000000aa67004d000100000000000000000000000000000000000000000000000000000000400000000000c000000000001800000000802400000000902b01000000901b010000008ce400004f0e02 ', 1);
  sendRaw('01ce00494507020000601b0000000000000000000000000000000000000000000000000000aa67004d0001000000000000000000000000000000000000000000000000000000004000000000008802000000005800000000802400000000902b01000000901b010000008ce400000000601b0000000000000000000000000000000000000000000000000000aa67004d0001000000000000000000000000000000000000000000000000000000000000000000004000000000001800000000802400000000902b01000000901b01001b0c02', 1);
  sendRaw('01ce004945070300008ce400000000601b0000000000000000000000000000000000000000000000000000aa67004d0001000000000000000000000000000000000000000000000000000000000000000000000800000000005100000000802400000000902b01000000901b010000008ce400000000601b0000000000000000000000000000000000000000000000000000aa67004d0001000000000000000000000000000000000000000000000000000000000000000000000000000000000800000000802400000000902b0100c70b02', 1);
  sendRaw('01ce00494507040000901b010000008ce400000000601b0000000000000000000000000000000000000000000000000000aa67004d0001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000802400000000902b01000000901b010000008ce400000000601b0000000000000000000000000000000000000000000000000000aa6d004d000102eb8905ffff00000000000000000000000000000000000000000000000000000000000000000000000000000000000000320e02', 1);
  sendRaw('01ce004945070500000000000091ecbffd6d29000000000000000000000000000000000000000000000000000000000000000000000000000000000000aa53004d000004000000d76c05ffd255ffffff0000000000000000000000000000000000000000000410000020080000c0030000c0030000200800000410000000000000000000000000000000000000000000aa6d004d000102780303af0e0724499224499224499224499224499224499224c93669499224d948524a92241b6d9b529224ab6ddb549224a36ddb149224a30f2502', 1);
  sendRaw('01ce00494507066ddb149224ab6ddb5492241b6d9b529224d948524a9224c936694992244992244992244992244992244992244992aa67004d0001000000000000000000a005000000daa2455b00409b0448d2024023258994024023a58d94020092a44d12006891b66d83166891b66d83160092a44d12004023a58d9402402325899402409b0448d20200daa2455b000000a0050000000000000000aa2d004d0000020000005555550000c003ec37ec37e007dc3bfe7ffe7ffe7ffe7fdc3be007ec37ec37c0030000aa27004d0001a84102', 1);
  sendRaw('01ce0049450707008001c4238241000000000000024007e007e002400000000000008241c4238001aa27004d0001000000000000000000000000000000000000000000000000000000000000000000aa4d004d00010214646407462400e02f0000800a000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000aa6a004d000101ffffff00006ce3000000006ce3000000006ce2000000004cd200000000689b000000004012000000000000001d1802', 1);
  sendRaw('01ce004945070800000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000aa67004d00010000006cdb000000006cdb000000006cd3000000006cd3000000006cd3000000006ce2000000006ce2000000006ce2000000006ce2000000006cd200000000689b0000000040120000000000000000000000000000000000000000000000000000aa67004d0001000000000000000000000000000000000000000000000000000000000000000000008000bf1202', 1);
  sendRaw('014300494507090000000000040000000000040000006cdb000000806da2060000006ddb0400000048920000000000000000000000000000000000000000000000000000eb0502', 1);



Und noch eine


01ce00499a0900aa53004b000004000000842404ff6400ffff00000000000000000004000010a400801ae402e006d00bf8014003700000c000000090010008000020e4c0c01890f3f30650feaf0540a95a010044040000000000aa6a004b000101440a0400000000000000000000000020000000001060020000921060140040140200a500884400003800c0080000004000000000003004000008000000000460046000841000234c83140200134952120200c824094900000082200000000000000000aa6a004b0001011f060100e22302
01ce00499a0901000000000000000000000028000000001428090000481628430000c302401302605200002a00800a0000002000000000009405000020000000001028034000021640192842c20240c92409c902005a92645b000080a2280000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200001a00400a0000002000000000009405000020000000001028032000021640198441c802405b9264db0200dab66d5b000080a2280000000000000000aa67721c02
01ce00499a0902004b000100000000000000000000000000280000000014680b0000da1668590040d90240c902285900004a00000b000000800000000000b405000020000000001028098000081640499004c902405b9264db0200dab66d5b000080a2280000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200001a00400a0000002000000000009405000020000000001028032000021640198441c802405b9264db0200dab66d5b000080a228000000009b1f02
01ce00499a090300000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200002a00800a0000002000000000009405000020000000001028034000021640192842c20240c92409c902005a92645b000080a2280000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200001a00400a0000002000000000009405000020000000001028032000021640198441c802405b9264db0200dab66d5b000080f61b02
01ce00499a0904a2280000000000000000aa67004b000100000000000000000000000000280000000014680b0000da1668590040d90240c902285900004a00000b000000800000000000b405000020000000001028098000081640499004c902405b9264db0200dab66d5b000080a2280000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200001a00400a0000002000000000009405000020000000001028032000021640198441c802405b9264db0200dab01e02
01ce00499a0905b66d5b000080a2280000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200002a00800a0000002000000000009405000020000000001028034000021640192842c20240c92409c902005a92645b000080a2280000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200001a00400a0000002000000000009405000020000000001028032000021640198441c802405b151a02
01ce00499a09069264db0200dab66d5b000080a2280000000000000000aa67004b000100000000000000000000000000280000000014680b0000da1668590040d90240c902285900004a00000b000000800000000000b405000020000000001028098000081640499004c902405b9264db0200dab66d5b000080a2280000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200001a00400a000000200000000000940500002000000000102803200002164019861e02
01ce00499a09078441c802405b9264db0200dab66d5b000080a2280000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200002a00800a0000002000000000009405000020000000001028034000021640192842c20240c92409c902005a92645b000080a2280000000000000000aa67004b00010000000000000000000000000020000000001060020000921060140040140200a500884400003800c0080000004000000000003004000008000000000460040c1d02
01ce00499a09086000841000234c83140200134952120200c824094900000082200000000000000000aa67004b00010000000000000000000000000008000000000488040000240588260080a600403601d01600003200c0020000006000000000002802000010000000000888066000060540346cc3a60040a26d9b9400001249521200008020080000000000000000aa67004b00010000000000000000000000000020000000001060020000921060140040140200a500884400003800c008000000400000000000280200000800aa1a02
01ce00499a09090000000460046000841000234c83140200134952120200c824094900000082200000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200002a00800a0000002000000000009405000020000000001028034000021640192842c20240c92409c902005a92645b000080a2280000000000000000aa67004b00010000000000000000000000000020000000001060020000921060140040140200a500884400003800c008000000400000000000d11902
01ce00499a090a2802000008000000000460046000841000234c83140200134952120200c824094900000082200000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200002a00800a0000002000000000009405000020000000001028034000021640192842c20240c92409c902005a92645b000080a2280000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200001a00400a000000bb1802
01ce00499a090b2000000000009405000020000000001028032000021640198441c802405b9264db0200dab66d5b000080a2280000000000000000aa67004b000100000000000000000000000000280000000014680b0000da1668590040d90240c902285900004a00000b000000800000000000b405000020000000001028098000081640499004c902405b9264db0200dab66d5b000080a2280000000000000000aa67004b00010000000000000000000000000028000000001428090000481628430000c302401302605200001a6b2002
014000499a090c00400a0000002000000000009405000020000000001028032000021640198441c802405b9264db0200dab66d5b000080a2280000000000000000c60a02


Und noch eine:

01ce0049d30400aa7f0063000008000000646464a5a5a5e7eaeb7d7d7dffffff5050504646460000000000000000000000000080480a000000106d53000000a26d9b020000a26d9b020000a26d9b020000026000020000026401020000d80e6b09000060eea3010000006f3300000060d99601000000b7350000000048020000000000000000aa900063000103878787d7d7d7d2cece000000000000000000000000000000000000108888010000000051558518000000005855559901000010555555990100008055555599010000e12d02
01ce0049d3040110500050990100001050081099010000800aaaaa99010000101a8a911900000000a8aa010000000000101118000000000081aa180000000000818a000000000000000000000000aa790063000006000000505050b9b9b9787878ffffff2d2d2d00000000000000000000000000804852000000309224170000429224a90000469224a90040478a24a90000068924a500000648a4a40000304991140000222d49020000366501000000904803000000226d00000000b001000000000000000000aa9600630001054b1a2602
01ce0049d304024b4ba5a5a57d7d7d737171c8c5c5000000000000000000000000000000000000007677060000000076444487060000604744444467000070444444446700007044444444670000704944444467000000994444746a000040444474660600009064466666000000904666060000000000466606000000006044660000000000006600000000000000000000000000aa530063000004000000696969afafafffffff000000000000000000a41a0000f96f0040febf0180ffbf0180ffbf0180febf0180febf01406f9ac63202
01ce0049d3040300405a15000056050000560500005501000054000000000000aa700063000103787676dcdcdc5f5f5f0000000000000000000000000000b625000000a06d9b000000b86ddb080000b46ddb040000b46ddb040000b46ddb040000b46ddb0400002c4bb20c000060dbb601000000db3600000000db3600000000db3600000000d8060000000000000000aa9300630001044b4b4bbebebea0a0a06e6e6e0000000000000000000000000000000000008788780000000070383383070000008733333379000000873333b52b02
01ce0049d30404339300000087333333930000008733333399000000873333339900000080877838a300000000777787a8000000007077770800000000707777080000000000777707000000000070770000000000000000000000aa5300630000040000005f5f5fafafafffffff000000000000000000a9010090ff1b00e4ff6f00e4ffbf00e4ffbf00e4ffaf00a4ff2b0050f9ff004095b50000509d0000501d0000406d000000140000000000aa960063000105b4b4b4919191aaaaaa1e1e1e4b4b4b00000000000000000000006f3502
01ce0049d30405000000000000004144140000000041333333050000103433333313000010343333334300001034333336430700104433336640000010443463084000000041443133040000001011113413000000000041314400000000003413010000000000403413000000000000400400000000000000000000aa7600630000050000005050508c8c8caaaaaaffffff0000000000000000000000000010490b0000003291640000403692a4000040369224030040369224070040360220020040b60023020040369204070000df1d02
01290049d30406b2650c0300000084e4000000802c09000000808c5c00000000605c0000000000000000b60602

schwatter

So, setAnimation in Raw klappt. Juhu  :)


#!/usr/bin/perl
require "./divoom.pl";

if (connectDivoom('11:75:68:C9:7D:36'))
{
  # set clock
  sendRaw('010d00450001000100000000ff05580102', 2);
  # set animation
  sendRaw('01ce0049d20200aa53006200000400000003036e0404b40000ff000000000000000000a4060000f91b0040fe6f0040fe6f0040fe6f0040c0400040e04200803fbf0000792b0000f407000059190000f4070000a0020000000000aa470062000100000000000000000000a41a0000fd6b0000feaf0140ffaf0180ffaf01400cac01402ca40180f3af0140b7690000fe01000054060000f9060000b9000000000000aa470062000100000000000000000000a41a0000febf0140ffff0680ffff0690efff0680e8bf0680a0af0600fea9b93602', 0, 0);
  sendRaw('01ce0049d2020101406f5500809e010000f5020040af0000000a000000000000aa470062000100000000000000000000901a0000f9bf0140feff0680ffff0680ffff0680feff0600fabf06c0ff5b0180975500805d0100005d0100405e00000005000000000000aa470062000100000000000000000000a41a0000f96f0040febf0180ffbf0180ffbf0180febf0180febf01406f9a00405a15000056050000560500005501000054000000000000aa470062000100000000000000000000a4060000fe2f0040ff7f0080ffbf0080ff1a3502', 0, 0);
  sendRaw('01ce0049d20202bf0080ffbf0080ffbf0040a66600005515000054050000540500005405000050010000000000aa470062000100000000000000000000a9060040fe1b0090ff6f0090ffbf0090ffbf0090ffaf0090ffaf0080697e00005569000054250000542500005015000040050000000000aa470062000100000000000000000000a9010090ff1b00e4ff6f00e4ffbf00e4ffbf00e4ffaf00a4ff2b0050f9ff004095b50000509d0000501d0000406d000000140000000000aa470062000100000000000000000000a90600908b3402', 0, 0);
  sendRaw('01800049d20203ff2f00e4ff7f00e4ffbf00e4ffbe01a4ff8a00a4be820090da2f0040557e000090ad0000e0170000807e000000280000000000aa470062000100000000000000000000a9060040fa1f0090fe2f0090fe7f0090febf00900e4c0090064e0090feb300409a770000d02f000064050000e41b0000801b0000000000602602',  0, 0);
}


root@raspberrypi:/opt/fhem/divoom2# perl setAnimation.pl
Image: 16x16 (maxcolors: 256, usedcolors: 5)
Image: 16x16 (maxcolors: no palette found, usedcolors: 3)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 2)
Image: 16x16 (maxcolors: no palette found, usedcolors: 1)
Image: 16x16 (maxcolors: no palette found, usedcolors: 1)
Create RFCOMM client (11:75:68:C9:7D:36 with port 1)...

done

Send raw command: 010d00450001000100000000ff05580102
No answer from device!
Device answer: 01
done

Send raw command: 01ce0049d20200aa53006200000400000003036e0404b40000ff000000000000000000a4060000f91b0040fe6f0040fe6f0040fe6f0040c0400040e04200803fbf0000792b0000f407000059190000f4070000a0020000000000aa470062000100000000000000000000a41a0000fd6b0000feaf0140ffaf0180ffaf01400cac01402ca40180f3af0140b7690000fe01000054060000f9060000b9000000000000aa470062000100000000000000000000a41a0000febf0140ffff0680ffff0690efff0680e8bf0680a0af0600fea9b93602
Device answer: 01
done

Send raw command: 01ce0049d2020101406f5500809e010000f5020040af0000000a000000000000aa470062000100000000000000000000901a0000f9bf0140feff0680ffff0680ffff0680feff0600fabf06c0ff5b0180975500805d0100005d0100405e00000005000000000000aa470062000100000000000000000000a41a0000f96f0040febf0180ffbf0180ffbf0180febf0180febf01406f9a00405a15000056050000560500005501000054000000000000aa470062000100000000000000000000a4060000fe2f0040ff7f0080ffbf0080ff1a3502
No answer from device!
done

Send raw command: 01ce0049d20202bf0080ffbf0080ffbf0040a66600005515000054050000540500005405000050010000000000aa470062000100000000000000000000a9060040fe1b0090ff6f0090ffbf0090ffbf0090ffaf0090ffaf0080697e00005569000054250000542500005015000040050000000000aa470062000100000000000000000000a9010090ff1b00e4ff6f00e4ffbf00e4ffbf00e4ffaf00a4ff2b0050f9ff004095b50000509d0000501d0000406d000000140000000000aa470062000100000000000000000000a90600908b3402
No answer from device!
done

Send raw command: 01800049d20203ff2f00e4ff7f00e4ffbf00e4ffbe01a4ff8a00a4be820090da2f0040557e000090ad0000e0170000807e000000280000000000aa470062000100000000000000000000a9060040fa1f0090fe2f0090fe7f0090febf00900e4c0090064e0090feb300409a770000d02f000064050000e41b0000801b0000000000602602
Device answer: 01
done

root@raspberrypi:/opt/fhem/divoom2#



Das Gif im Anhang ist die Animation.

mumpitzstuff

Das ist zu kompliziert als das man da was sehen könnte. Das beste wäre eine Animation in der ein einzelner weißer Pixel von links nach rechts wandert. Also Bild1 mit dem Pixel bei 0:0 und Bild2 dann mit dem Pixel bei 1:0 usw.

Dann kann man sich auf das wesentliche konzentrieren.

schwatter

Ok, hier der Pixelrunner. Horizontal, von links oben nach rechts oben.

#!/usr/bin/perl
require "/opt/fhem/divoom2/divoom.pl";

if (connectDivoom('11:75:68:C9:7D:36'))
{
  # set animation
  sendRaw('01ce0049760200aa2d00f4010002ffffff000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100fdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100fbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb8ab02', 0, 0);
  sendRaw('01ce0049760201ffaa2700f4010100dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f40101007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100fffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100fffdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4b4ab02', 0, 0);
  sendRaw('01ce0049760202010100fffbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100fff7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100ffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100ffdfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100ffbfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100ff7fd8aa02', 0, 0);
  sendRaw('01240049760203ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffca1e02',  0, 0); 
  disconnectDivoom();
}


root@raspberrypi:/opt/fhem/divoom2# perl setWhiteRunner.pl
Create RFCOMM client (11:75:68:C9:7D:36 with port 1)...

done

Send raw command: 01ce0049760200aa2d00f4010002ffffff000000feffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100fdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100fbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100f7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100efffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffb8ab02
No answer from device!
done

Send raw command: 01ce0049760201ffaa2700f4010100dfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100bfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f40101007fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100fffeffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100fffdffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4b4ab02
No answer from device!
done

Send raw command: 01ce0049760202010100fffbffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100fff7ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100ffefffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100ffdfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100ffbfffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffaa2700f4010100ff7fd8aa02
No answer from device!
done

Send raw command: 01240049760203ffffffffffffffffffffffffffffffffffffffffffffffffffffffffffffca1e02
Device answer: 01
done

root@raspberrypi:/opt/fhem/divoom2#


16 weiße Pixel auf 4 Rawmessages aufgeteilt.

edit:

5 Bilder max. pro Rawmessage.