I wish the download page indicated the version number as you don't get to know until after programming!
I don't understand the received numbers you have shown.
Do you get the same result every time?
I just used this section of your program:-
serialbranch [serialin]
wait
[serialin]
ID$ = ""
Do
ID$ = str(serial.read.int()) & ID$
Loop while serial.available()
print "received:" & ID$
and sent the following 10 characters from my terminal (your data with spaces omitted):-
00826B6F86
and printed:-
received:54567054665450564848
adding some spaces
54 56 70 54 66 54 50 56 48 48
and going to a decimal-ASCII table :-
6 8 F 6 B 6 2 8 0 0
which, as you say, is reversed
EDIT: but that can be changed by modifying the line to:-
ID$ = ID$ & str(serial.read.int())
But it is (sort of) recognisable as the string of characters I sent in the first place.
This is my doubt with your received number - not only is there and odd number of digits (13) - I can't spot any relationship to what you are sending/receiving.
My suggestion would be to concentrate on getting just this part of the program working consistently with your serial input so that the number can be recognised as something sensible.