What's new
If anyone wants to play with the script I've currently got together, let me know and I can send it.
yesterday I ordered the serial device you mentioned so depending on when it arrives I might be able to play around with it this weekend.
 
I noticed I'm now sometimes failing initialization and sometimes failing after a game ends... so there's still some work to do.
 
If all I have to do is wire a 9 pin serial cable to the front of the Naomi 2, I could easily wire that. So if you need a tester, I would be more then happy to help. As long as it would work with Windows Xp since I think my older XP laptop actually has a serial port on it.
 
If all I have to do is wire a 9 pin serial cable to the front of the Naomi 2, I could easily wire that. So if you need a tester, I would be more then happy to help. As long as it would work with Windows Xp since I think my older XP laptop actually has a serial port on it.
I would assume you could install Python 3 on XP, but not sure.

As far as the port on the laptop goes, I'd be a little concerned about signal voltages. I'm not entirely sure what the NAOMI is putting out and can accept compared to a laptop. I don't want to encourage anyone to wire up if there's a potential risk of damaging either the laptop or the NAOMI. AFAIK, the USB adapter I linked to mitigates that risk... at the very least I've confirmed that it works fine for me.

You'll want to make sure if you use a serial cable that you use a DMM to verify that it's straight-through, or change your adapter to suite. You would need to make up some kind of adapter to wire it into the header on the NAOMI which isn't a 9 pin d-sub.
 
I'm slightly embarrassed to admit this, but a few minutes ago I stumbled over a USB serial adapter on the ground in my basement that must have fallen out of a box nearby. I was shocked to see that it's a TU-S9 adapter! I ordered 2 for this project when I had one all this time. I have about zero memory of ever purchasing one of these... maybe my adapters are breeding. 8o
 
I should be able to. What should I send?
with no card inserted
02 07 10 00 00 00 31 03 25
05
05
05 (if reply is not 02 06 10 A0 30 30 03 B5 wait and/or sent 05 again)
02 0B 78 00 00 00 37 31 30 30 30 03 46
05
05
05
02 09 33 00 00 00 30 31 30 03 08
05
05
05

thanks in advance
MetalliC, I finally reversed the wiring and unplugged from the NAOMI, so I could talk to the reader:
Still in the free version which doesn't allow hex, so converted to dec.

Data sent: 2,7,16,0,0,0,49,3,
Data received: 21,
Data sent: 5,
Data received: 2,6,16,160,48,48,3,181,
Data sent: 5,
Data received: 2,6,16,160,48,48,3,181,
Data sent: 2,11,120,0,0,0,55,49,48,48,48,3,
Data received: 21,
Data sent: 5,
Data received: 2,6,16,160,48,48,3,181,
Data sent: 5,
Data received: 2,6,16,160,48,48,3,181,
Data sent: 5,
Data received: 2,6,16,160,48,48,3,181,
Data sent: 2,9,51,0,0,0,48,49,48,3,
Data received: 21,
Data sent: 5,
Data received: 2,6,16,160,48,48,3,181,
Data sent: 5,
Data received: 2,6,16,160,48,48,3,181,
Data sent: 5,
Data received: 2,6,16,160,48,48,3,181,
 
Just out of curiosity, I wired up for WMMT on the Chihiro. It's definitely not compatible with the ID3 reader, at least not with the rom that's installed.

I also tried wiring it up to my emulator:

2016-03-11 21:11:50.957799: Chihiro
FF FF FD
ERROR: Emulator does not know how to respond to: FF FF FD
2016-03-11 21:11:51.754695: Chihiro
FF
ERROR: Emulator does not know how to respond to: FF
2016-03-11 21:12:01.718369: Chihiro
FF FF FD FF FF
ERROR: Emulator does not know how to respond to: FF FF FD FF FF
2016-03-11 21:12:02.030870: Chihiro
FD
ERROR: Emulator does not know how to respond to: FD
2016-03-11 21:12:02.280852: Chihiro
FF
ERROR: Emulator does not know how to respond to: FF
2016-03-11 21:12:02.530851: Chihiro
FF
ERROR: Emulator does not know how to respond to: FF
2016-03-11 21:13:13.936955: Chihiro
FD FF FF FF
ERROR: Emulator does not know how to respond to: FD FF FF FF
2016-03-11 21:22:09.820014: Chihiro
FF FF BE CF 7B B7 FB CF CF F3 FF CF CF CF 1C 78 7F 78 FC 1E 1E 1E 78 FE ED 78 F8 1F FA 80 7E FF FF
ERROR: Emulator does not know how to respond to: FF FF BE CF 7B B7 FB CF CF F3 FF CF CF CF 1C 78 7F 78 FC 1E 1E 1E 78 FE ED 78 F8 1F FA 80 7E FF FF

Whenever I try initialization with nothing plugged up, the game usually freezes... same as when I have the emulator plugged up. With the ID3 reader plugged up, it at least gave a connection error. Anyway, no way I'm going to guess at the correct responses with nothing to monitor... :(

Edit: I had it plugged up into the wrong header... It appears that WMMT does use the same protocol, but different serial settings documented a few posts from this one.
 
Last edited:
I finally reversed the wiring and unplugged from the NAOMI, so I could talk to the reader:Still in the free version which doesn't allow hex, so converted to dec.
thank you.
but as I see it went wrong ((
after first 0x10 (init) command it stays in this state, ie on all subsequent commands it sends reply of cmd 0x10. probably command 10 (or any command in general ?) must be followed by "cancel / stop execution" command, which is supposedly 0x40 (or 0x20 ?), so reader appeared in "ready to get new command" state
anyway thanks.
 
If, by chance, anyone could help me track down a reader for Mario Kart/WMMT, I'd appreciate it. Depending on price, I may be willing to purchase and try for something similar. I do believe the protocol was figured out for MK, though, because I have it running on a Wii and it saves card data down to the SD card. I would assume it's the same or similar for WMMT, since I've seen historical ebay sales that list a card rw kit indicating it's compatible with both games.
 
are you sure you wired serial to Chihiro correctly ? sniffed data looks like gibberish.
also possible port speed or settings is different.

I talked with crediar, it was long time ago, but iirc he said all known info is in dolphin sources, and I see there only same protocol as ID uses. so I tend to think they are the same, with possible different serial port settings (F-Zero manual have section with reader DIP SW settings, perhaps they are differ from ID settings).
 
I'll double check my wiring. I referenced the wiring on the WMMT schematics. They have just RXD, TXD and GND going to the game board, and the CTS/RTS at the reader is shorted, I guess tricking it into believing they are wired to another device.

I didn't look closely, but am not seeing dip switches on my reader.
 
okay, compiled latest rev of dolphin triforce branch, afrter some f*ing got it working )
as expected - Mario kart gp2 sent same command set to reader as IninialD
Well that's good news!

I guess it's going to be a matter of figuring out wiring and whether or not the serial communication needs different settings.

The WMMT schematics have the reader connected to JST NH 8P. The only 8 pin connector I see on the Chihiro is C5.

Pin 4 - TXD
Pin 5 - RXD
Pin 8 - GND

Pin 3 is also a GND (verified continuity with Pin 8), so I wired into pins 3, 4 and 5.

GND should be shared with the serial adapter.
TXD to RXD
RXD to TXD
 
I didn't look closely, but am not seeing dip switches on my reader.
there is 3x 8x DIPSW on reader PCB, on opposite to ROM side.
but my memory fools me, it was not F-Zero AX manual, but Derby Owners )
doc_crw_dsw.png
 
Would Club Kart European Session for Naomi 2 use the same reader as Initial D?
 
no, protocol completelly different.
until I in good mood ;)



Code:
	601-11039
	CR-1231R
	used in: Club Kart
	>>>	SEND CMD: [START 02][CMD char1][CMD char2]{parameter char}{data}[STOP 03][CRC]
	<<<	RECV ACK: [OK 06] or [ERR 15]
	<<<	RECV STX: [START 02]{REPLY}{data}[STOP 03][CRC]
	note: it seems reply packet sent only after command fully completed or error happened

	REPLY: 2chars
		OK - RESULT_OK
		O1 - RESULT_CANCEL_INSERT
		N0 - ERROR_CONNECT / Unknown Error
		N1 - ERROR_COMMAND / Connection Error
		N2 - ERROR_MOTOR / Mechanic Error 1
		N3 - ERROR_HEAD_UPDOWN / Mechanic Error 2
		N4 - ERROR_CARD_STUCK / Card Stuffed
		N5 - ERROR_VERIFY / OK ????
		N6 - ERROR_HEAD_TEMP / Mechanic Error 3
		N7 - ERROR_CARD_EMPTY / Card Empty
		N8 - ERROR_CARD_LOAD / Draw Card Error
		N9 - ERROR_NO_HOPPER / Card Empty
		NA - ERROR_CARD_PRESENT
		NB - ERROR_CARD_EJECT
		NC - ERROR_CANT_CANCEL
		ND - ERROR_NOT_INSERT
		NE - ERROR_NOT_WAIT
		NF - ERROR_BAD_CARD

	CMD SS REPLY: 6 ASCII characters
		5chars '0'/'1' - Card Sensors Status, MSB first
			0
			10 18
			1C C E 8 7 3
			other
		1char '0'/'1'  - Dispenser Status
			'0' - Empty
			'1' - Full

Commands:
IN     - init
CA    - cancel command
OT0  - eject card
HI     - get new card from dispenser
CL    - cleaning
RT5  - unknown
RL    - read data/load card into reader
WL   - write data (followed by 69 bytes of data)
SS    - get status

reply for commands is simple
06
02 'O' 'K' 03 crc
except
- RL command, which have 67 bytes of card data after OK (or no any reply if no card insterted)
- SS command, which is
06
02 '0/1' '0/1' '0/1' '0/1' '0/1' '0/1' 03 crc
there 0/1 - encoded in char binary value described earlier
as you may see, in general it looks simpler than InitialD reader command set. perhaps ClubKart uses some older and/or less functional CRW unit ?
 
Last edited:
Back
Top