Hi guys, check it: - I need to send bytes from any value (0 to 255) trough the serial port. It serves to control the machine Iām building with an 16F877. the whole program is working good. The software that run in the PC was write in QBASIC. There are two versions: in the first, I type the ASCII character corresponding to the desired byte I wish to send and it sends out without problem and the machine works fine. But in this version, I have to see in an ASCII table the corresponding character for the number I wish to send ö Itās too much work. So, Iām trying to write another program that sends out an byte according to the number I type, i.e., if I type 3, then the program must shift out 00000011 by the com port (not the ASC value for the number 3 as the previous version does). The problem in the program I wrote is that it send out the number I want and another byte which I donāt desire (probably an EOF char (?...) ). So it looks like an integer number, but I need an single char... If you know how to solve it and/or has another hints, or some code that do the same task, please tell me. The two programs I told was described below. The first version is: OPEN "com1:9600,n,8,1,cd0,cs0,ds0,op0" FOR OUTPUT AS #1 GetKey: A$ = INKEY$ IF A$ = "" THEN GOTO GetKey PRINT #1, A$; PRINT A$; GOTO GetKey END The second version is: OPEN "com1:9600,n,8,1,BIN,cd0,cs0,ds0,op0" FOR OUTPUT AS #1 1 INPUT "type an number from 0 to 255: ", a e$ = CHR$(a) PRINT e$ PRINT #1, e$ GOTO 1 END Observation: I think that the problem is the transformation CHR$(a), which Iām not sure if it insert an EOF char... If Iām right, than please tell me how to eliminate the EOF of the string (if possible) and then my problem is solved.