According to me the mystery remains in what I already do I make an exchange. Byte but not the color.
ColoreX = Colors.RGB (B, G, R)
and not
ColoreX = Colors.RGB (R, G, B)
I reiterate that the code is always the same, emulator or physical device.
For the pair of bytes number 2830 the 3 following instructions
B1 = buffer (s) : B2 = buffer (i + 1) : H = Bit.AND (B1, 255) * 256 + Bit.AND (B2, 255)
produced to smartphone
B1 = -128
B2 = 0
H = 32768
and to emulator
B1 = 6
B2 = -10
H = 1768