Overblog Suivre ce blog
Editer la page Administration Créer mon blog
Xtase & Androids

Canon X-07 ... next is serial port

After Casette AUDIO Port (for programs transmition), after parallel port (now coupled to VGA display board), Here is ... Tadah : The Serial port !

Serial port (on the left side of X-07)

It made me crazy to make it work. The final result comes from an error of my own ;)

(again, thx to http://www.old-computers.com/museum/hardware.asp?t=2&c=258&st=1 for help, w/o forgetting Thierry A.C for his precious advices)


There are 2 distincts GND signals on the serial port, & I read that the signal logic was ~TTL inverted, & that the default operating mode is 8N2 not 8N1, so I looked for an Arduino Library that could handle that config.

I found CustomSerialPort lib, I had to fix two issues, I have to notify it's writer ...

I setted the final bool arg to true for inverted_logic & .... nothing happend !

I tried to read voltage on my RX pin with Analog Input, nothing useable...

so I decided to plug a voltmeter between RX & GND, it shows me 5v Grrrrr,

I removed it : nothing again,

Lately I understood that my voltmeter acted as a pullDown resistor, I placed a 10KR between RX & GND Tadah ... I received bytes. (I had to tune a bit to have a correct transmition)

I do now have a casual 115200, 8n1 TTL adpater to Canon X-07.


Here is the final minimal diagram :

X-07 SerialTTL adapter

I used a male DB9 connector, it fits in the Canon port but I reversed it so don't count on the PCish pin numbers, use the schema ones instead



DB9 male connector in Canon X-07 serial portDB9 male connector in Canon X-07 serial port

DB9 male connector in Canon X-07 serial port

Any <NonEscaped> Strings goes from one RX/TX to the other (ex. PC to X-07 / X-07 to PC)


Now, I starting to add a SPI SDcard reader & make a tiny command parser to LS, CAT, RM, WRITE, APPEND... files on my SDcard from PC (via arduino built-in UART) AND from the X-07.

for the last case, my process is the following :

10 INIT #1, "COM:", 4800, "B"

20 A$=CHR$(<escapeCmdSequence>)+"DIR"+CHR$(10)

30 PRINT #1, A$ : REM sends the "DIR" escaped cmd

40 A = INP(#1)

50 IF A = 0 THEN GOTO 200


70 GOTO 40 : REM read until 0x00 (end of the listing)

200 PRINT "-EOF-"



simple "DIR" demo (from SDCard)

simple "DIR" demo (from SDCard)

I have a lot of ideas to use my mod.

Asap I'll replace my AT328P (pro mini board 32KFlash-2KRAM) by a 5v Teensy++2.0 (128KFlash-8KRAM) to add functionalities to my HandHeldComputer...


Hope I could share soon.


See you.

Partager cette page

Repost 0