I have a LED clock module, uses some chinese 8051 clone. The issue is, it has no contro button, so always starts at 00:00. But it do has RX and TX pins. There's no activity on these pins when checked by scope, but when I run this simple code to the TX pin, display value do change, and depending on value of MATCH variable, I can set a random data on display, show only some segments, turn it off and so on.

The interesting thing is, that if I insert even a PAUSE 1 statement in the code, there will be no display change at all.

Other observations:

X must start at 0, if I start it at 1 or anything else, nothing will happen. Also, if X max value is below 100, there will be no changes.

The minimum amount of MATCH variable, on which the module responds is 6.

Based on that, can we estimate which protocol this module is using?
The outputs from the chip to the RX and TX pin have 1K resistors on board soldered in series, so definitely, this is not I2C.

Code runs at 16F886 @ 8Mhz

pause 2000
for x=0 to 101
serout2 portb.1,match,[x]
pause 1
if match=6 then stop
goto xozba