@@ -225,17 +225,16 @@ void handleE131Packet(e131_packet_t* p, IPAddress clientIP, byte protocol){
225225 if (e131_data[dataOffset+3 ] != seg.intensity ) seg.intensity = e131_data[dataOffset+3 ];
226226 if (e131_data[dataOffset+4 ] != seg.palette ) seg.setPalette (e131_data[dataOffset+4 ]);
227227
228- uint8_t segOption = e131_data[dataOffset+5 ];
229- if ((segOption & (1 << 0 )) != seg.reverse_y ) { seg.setOption (SEG_OPTION_REVERSED_Y, segOption & (1 << 0 )); }
230- if ((segOption & (1 << 1 )) != seg.mirror_y ) { seg.setOption (SEG_OPTION_MIRROR_Y, segOption & (1 << 1 )); }
231- if ((segOption & (1 << 2 )) != seg.transpose ) { seg.setOption (SEG_OPTION_TRANSPOSED, segOption & (1 << 2 )); }
232- if ((segOption & ((1 << 3 ) | (1 << 4 ))) >> 3 != seg.map1D2D ) {
233- seg.map1D2D = (segOption & ((1 << 3 ) | (1 << 4 ))) >> 3 ;
228+ if ((e131_data[dataOffset+5 ] & 0b00000001 ) != seg.reverse_y ) { seg.setOption (SEG_OPTION_REVERSED_Y, e131_data[dataOffset+5 ] & 0b00000001 ); }
229+ if ((e131_data[dataOffset+5 ] & 0b00000010 ) != seg.mirror_y ) { seg.setOption (SEG_OPTION_MIRROR_Y, e131_data[dataOffset+5 ] & 0b00000010 ); }
230+ if ((e131_data[dataOffset+5 ] & 0b00000100 ) != seg.transpose ) { seg.setOption (SEG_OPTION_TRANSPOSED, e131_data[dataOffset+5 ] & 0b00000100 ); }
231+ if ((e131_data[dataOffset+5 ] & 0b00011000 ) / 8 != seg.map1D2D ) {
232+ seg.map1D2D = (e131_data[dataOffset+5 ] & 0b00011000 ) / 8 ;
234233 }
235234 // To maintain backwards compatibility with prior e1.31 values, reverse is fixed to mask 0x01000000
236- if ((segOption & ( 1 << 6 )) != seg.reverse ) { seg.setOption (SEG_OPTION_REVERSED, segOption & ( 1 << 6 ) ); }
235+ if ((e131_data[dataOffset+ 5 ] & 0b01000000 ) != seg.reverse ) { seg.setOption (SEG_OPTION_REVERSED, e131_data[dataOffset+ 5 ] & 0b01000000 ); }
237236 // To maintain backwards compatibility with prior e1.31 values, mirror is fixed to mask 0x10000000
238- if ((segOption & ( 1 << 7 )) != seg.mirror ) { seg.setOption (SEG_OPTION_MIRROR, segOption & ( 1 << 7 ) ); }
237+ if ((e131_data[dataOffset+ 5 ] & 0b10000000 ) != seg.mirror ) { seg.setOption (SEG_OPTION_MIRROR, e131_data[dataOffset+ 5 ] & 0b10000000 ); }
239238
240239 uint32_t colors[3 ];
241240 byte whites[3 ] = {0 ,0 ,0 };
0 commit comments