Muntproever - Motorola ZC93746P, info gevraagd!

Ik heb een muntproever van NRI, de G13.0026 (oude serie, bj 1993, voor de kenners :))

Nou wil ik dat ding programmeren voor euro's, want hij doet nu alleen nog maar guldens (en kwartjes, knaken en vijfjes).

Met speciale software (PROEMP.EXE, PROEMPD.EXE, EMP.EXE) kan het apparaat geprogrammeerd worden, maar helaas: die software heb ik niet en het lukt me ook niet eraan te geraken (niemand lijkt het meer te hebben, is nogal een oud DOS-programma).

Nou ben ik al zover dat ik de boel wat reversed-engineerd heb. Heb ontdekt dat er een seriele interface op TTL niveau aan hangt, en heb mijn pas verkregen scoop eraan gehangen. Kwam erachter dat dat op 300 baud tekeer gaat en ben met een MAX232 en de PC (hyperterminal) wat gaan experimenteren.

Nou LIJKT het alsof ik wat voor elkaar krijg, ik kan waarden uitlezen als er een munt doorheen gaat, ik kan nieuwe grenswaarden instellen, maar hij doet daar niks mee.
Oftewel: ze hebben het protocol dusdanig vaag gehouden dat ik er na een halve dag (.. eh, shit, het is al nacht) niks meer in zie.. :(

Nou dacht ik: misschien kan ik de programmacode in dat ding reverse-engineren om toch verder te komen. Maar ik kan niks vinden over de Motorola ZC93746P die erin zit. Google geeft me een hoop handelaars die nog zo'n ding op voorraad hebben, maar daar blijft het bij. Er zit ook nog een EEPROMmetje op de print. Misschien ook nog wat op de onderkant van de print, kan ik zo niet zien (en zitten een hoop spoelen aan vast gesoldeerd waardoor die print ook zo 1,2,3 niet los kan.

Even een foto'tje (klikbaar voor groter formaat):
http://www.uploadarchief.net/files/download/muntproever-thumb.jpg

Iemand die wat info daarover heeft? Het is een microprocessor/-controller? En verder?
Dat rijtje van 4 pennen onder die chip, net naast het 4 MHz kristal, zit de TTL Rx en Tx op, met aan de buitenkant 5V voedingslijnen voor de liefhebber.

Ik ken iemand die in de automatenhandel zit, misschien weet ik morgen meer.

Je Motorola microcontroller heeft oa PROM aan boord met firmware, leeg heb je er nog niks aan, sorry geen data.

[Bericht gewijzigd door Henry S. op ]

Op 14 september 2006 02:17:56 schreef Henry S.:
Ik ken iemand die in de automatenhandel zit, misschien weet ik morgen meer.

Toppie! :)
(Genoemde software is ook meer dan welkom! Tegenwoordig is het WinEMP, maar das met licenties enzo, werkt misschien zelfs niet met mijn oude versie van de G13. Dus de ouwe meuk heeft de voorkeur!)

Je Motorola microcontroller heeft oa PROM aan boord met firmware, leeg heb je er nog niks aan, sorry geen data.

Hm, dan zal de programmacode er ook wel niet uit te lezen zijn... had gehoopt dat die ergens los in een rommetje zat :)

[Bericht gewijzigd door Jochem op ]

die 8-poter (met CSI erop) is een eeprom.

http://www.obsolete-transistors.com/pdf/cat59c11p-datasheet/cat59c11p-…

anders gewoon eventjes typenummer in google inkloppen en de diverse datasheet sites afschuimen.

in dit eeprommetje staat je muntdata.

sluit er Hyperterminal op aan, verbind met de PC, gooi wat muntstukken erdoor, en bewaar de resultaten, zet ze online.

hoeveel bytes stuurt die serieel door, waarschijnlijk bestaat het paket uit HEADER(S),COMMAND, DATA(X), CRC
ergens in DATA(X) zal wel op bitnivo de munteenheid gecodeerd worden.

als je op 300 Baud geldige data hebt ben je al een eind ver.

[Bericht gewijzigd door shortcircuit op ]

volgens mij waren de dipswitches voor het selecteren welke munten aangenomen mogen worden.
in de microproc staat de muntdata (nlg).
in de eeprom staan de prijzen waneer er een uitgang actief wordt.
muntdata kan niet veranderd worden:( , andere micro voor alle valuta toen nog in europa (bef,dm,frf enz)

@Johne,

ik denk ook idd dat hij enkel informatie zend via RS232. de rest zal via die dips moeten gebeuren.
zou eens leuk zijn om mijn data logic analyzer er aan te hangen :-) en dan de RS232 interpreter erop los laten!

[Bericht gewijzigd door shortcircuit op ]

Op 14 september 2006 09:18:04 schreef DC2PCC:
die 8-poter (met CSI erop) is een eeprom.

http://www.obsolete-transistors.com/pdf/cat59c11p-datasheet/cat59c11p-…

anders gewoon eventjes typenummer in google inkloppen en de diverse datasheet sites afschuimen.

in dit eeprommetje staat je muntdata.

Ja, die eeprom was me duidelijk. De rest (uC) kan ik in google dus BAR weinig over vinden.

Op 14 september 2006 09:33:52 schreef johne:
volgens mij waren de dipswitches voor het selecteren welke munten aangenomen mogen worden.

Correct, eenmaal ingeprogrammeerde munten kunnen 'tijdelijk' worden uitgeschakeld. Zo stond kanaal 1 uitgeschakeld (de flipperkast deed niks met kwartjes, dus die wil je ook niet accepteren). Kanaal 2 (gulden) 3 (knaak) en 4 (vijfje) waren ingeschakeld. Kanaal 5 en 6 ook ingeschakeld, maar door de meetwaarden die daaraan gekoppeld zijn (maximum onder minimum) worden hiermee nooit munten geaccepteerd.

in de microproc staat de muntdata (nlg).
in de eeprom staan de prijzen waneer er een uitgang actief wordt.

Ik denk dat jij een ander type in gedachte hebt (voor vending machines). Uitgangen zijn parallel, 6 stuks actief laag, en worden hoog als er een munt herkend wordt (6 verschillende mogelijk dus). Hoe kom je aan deze info?

muntdata kan niet veranderd worden:( , andere micro voor alle valuta toen nog in europa (bef,dm,frf enz)

Muntdata kan WEL worden veranderd. Met de genoemde software is het zonder meer mogelijk. (maar misschien voor een distributeur handiger om een chip uit het voetje te trekken en er een nieuwe in te zetten, dan voor elke muntproever een tijdje met de computer te zitten klieren??) Wederom de vraag: hoe kom je aan deze info? :)

Wat betreft de analyse van RS232-data:
Op die 300 baud is er best wel wat te beginnen in hyperterminal. Ze zijn zo vriendelijk geweest het leesbaar te houden. Wat dingen die ik heb uitgezocht:

(COMMANDO'S ALLEEN IN HOOFDLETTERS)
Bij onbekende invoer komt muntproever terug met '?[CR]' (CR=Carriage Return)
Verder: apparaat is van duitse origine, mogelijk zijn de letters afkortingen van duitse woorden?
Nog iets: het schijnt dat de verschillende kanalen (6 stuks, voor herkenning 6 muntsoorten) dynamisch aan 1 van de 6 uitgangen kan worden toegekend. Ik heb nog niet kunnen achterhalen hoe dat werkt.

command - response

A - geen antwoord terug, lijkt te wachten op meer. Bij elk volgende karakter NA de 'A' springt hij meteen weet terug met '?[CR]'

B - geen antwoord, kan gevolgd worden door 31 karakters, daarna respons '?[CR]'

C - gevolgd hele rij karakters (56 of 57?), resulteert in het overschrijven van de string die je met 'Z' terugkrijgt. Z reflecteert de invoer die VANAF het 4e karakter in C is opgegeven. De Z-string heeft een totale lengte van 36 karakters. (dus aan beide 'zijden' minder dan wat met C is ingevoerd)

D - gevolgd door 1 t/m 6: lijkt de waarden voor de verschillende kanalen te veranderen. (Op te vragen met V, zie ook daar voor uitleg waarden).
invoer voorbeeld:
'D1154140246041 134120226021 ' (let op lege karakters->mag alles zijn, maar niet terug te zien ergens! misschien checksum o.i.d.?)
Resultaat bij opvragen (V1 is mijn invoer)
V1154
140
246
041
134
120
226
021
Deze waarden blijven keurig staan, zelfs na een nacht stroomloos.
Hiermee zouden de waarden voor het 'kwartje' moeten zijn overschreven, maar hij accepteert nog steeds kwartjes (en geen 2-euro stukken, die binnen de bovenstaande grenzen vallen). Mijn vermoeden is dat er OF een controle-waarde ergens in bovenstaande invoer bij moet, OF dat er 'geactiveerd' moet worden met een bepaalde code?

E - Wacht op meer: kunnen soms 10 karakters volgen, soms een hele rij voordat de respons '?[CR]' komt. (E van entfernen? E van Erase? E van eeprom?)

G - gedrag gelijk aan 'A'
I - gelijk respons '0[CR]'

J - gevolgd door een aantal cijfers, na invoer van 3 of 4 cijfers is de respons weer '?[CR]'. Aantal cijfers dat ingevoerd 'mag' worden, hangt af van welke cijfers gebruikt worden. Geen duidelijk patroon kunnen ontdekken. voorbeelden: ('?' is steeds respons)
J111?
J991?
J001?
J123?
J1222?
J1222? (hierna wilde hij geen 4 cijfers meer)
J123?
J121?
J122?
J122?
J122?
J123?
J123?
J122?
J122?
J122?
J121?
J000?
J122?
Soms accepteert het apparaat geen enkele munt meer, alles komt retour, en dan na een bepaalde cijferreeks achter J wil hij ineens weer WEL. (uit- en inschakelen beinvloedde het gedrag NIET)

N - respons: '9200180-005[CR]' (nummer niet op apparaat terug te vinden)
T - Na dit commando een munt inwerpen geeft de 4 meetwaarden voor die munt terug (4x getal tussen 0 en 255, gescheiden door [CR])

U - respons (bijvoorbeeld!): '00=0130820820000000000=;[CR]' Waarde blijft niet constant, lijkt een aantal actuele sensorwaarden te verkondigen

V - gelijk gevolgd door 1 t/m 6
geeft 8 waarden terug tussen 0 en 255 gescheiden door [CR]
Eerst 4 maximum-waarden voor dat 'kanaal', daarna 4 minimum waarden.
Voorbeeld voor de gulden (kanaal 2)
(V2 is mijn invoer, daarna direct respons):
V2233
115
132
070
182
094
115
050

maximum eerste meetwaarde: 233
minimum eerste meetwaarde: 182
maximum tweede meetwaarde: 115
minimum tweede meetwaarde: 094
etc.
Komt keurig overeen met waarden die T of W geven bij inworp van een gulden (meetwaarden vallen dan binnen bovenstaande grenzen).

W - Vergelijkbaar met T, maar geeft de 8 waarden voor de laatst ingeworpen (al dan niet geaccepteerde) munt (na een tijdje geen munt ingeworpen: alle waarden 000)

Y - geeft 7 waarden terug, zoiets als W (maar dan dus 1 waarde minder). Krijg nu de hele tijd 000 voor alle waarden, maar heb al een keer een rits andere waarden gezien (even niet te reproduceren nu..?)
Z - respons: fabricagedatum serienummer afsteldatum (of deel van string (vanaf 4e karakter) die achter C is opgegeven)

in een ver verleden hoorde die dingen bij mijn werk.
had van allerhande lezers de documentatie.
weet nog wel dat als een munt slecht werd geaccepteerd van een nri-muntproever we de hele muntproever moesten opsturen naar fabrikant.
software hadden/kregen we niet.
ze zijn ook niet euro compatible,de waarden van x,y,z ( min-max waarden)zullen van verschillende munten in elkaars gebied komen en zo herkenningsfouten maken.
aan 1 kant zitten de osc.spoelen en aan de andere kant de pick-up spoelen.(3 stuks)
iedere spoel heeft een bepaalde freq.die beinvloed word door de munt,waarden x,y,en z
dit is de meest simpele muntproever die dus bij inworp een bepaalde uitgang hoog maakt en verder niet kan optellen ofzo.
maar is al weer zo'n poos terug dat het al weer is weggelekt uit de grijze massa:+

@johne: ook het formaat wordt nog met lichtsluizen bepaald. Verder inderdaad frequentie en amplitude m.b.v. die spoelen waar jij het over hebt.

Euro compatibaliteit is bij dit model inderdaad een issue. 20 eurocent wordt in beperkte mate weleens met 1 euro verward. Ook weleens problemen met 10 Baht (Thailand) en 5 Zloty (Polen).
Maar het 'werkt' verder wel. En dat hij af en toe een munt verward kan ik niet mee zitten. Het is voor de flipperkast bij ons in het jongerencentrum, waar ik vrijwilliger ben. Als de jongelui erachter komen dat het ding af en toe een 20 centje slikt als euro, dan hebben ze gewoon mooi geluk :) En die Baht'en en Sloty's ben ik niet zo bang voor. (Als ik nou een casino runde zou ik met dit soort dingen meer problemen hebben :P)

Het probleem is dat we tot nog toe altijd guldens achter de bar hadden, en die konden ze dan 'kopen' met 50 eurocent. Die guldens raken echter (magisch genoeg) op, er gaat minder in de flipper dan men wisselt aan de bar.
We kunnen ook een nieuwe muntproever aanschaffen, maar dat is nogal kostbaar, en bovendien vind ik het sonde, omdat het ding omgeprogrammeerd moet kunnen worden.

[Bericht gewijzigd door Jochem op ]

johne moet eerst googlen dan pas denken :+
het is mogelijk om te programmeren.
http://home.scarlet.be/~pb007911/euro/elecmunt.htm
dat alles vast zit in de prom was dus bij mars.
alleen die software is nergens te vinden:r

Op 14 september 2006 18:02:44 schreef johne:
eerst google dan denken :+
het is mogelijk om te programmeren.

I know, I know.. al dagen gegoogled...

alleen die software is nergens te vinden:r

I KNOW, I KNOW :(

Ik heb nog wat info:
-In de Eeprom staat alle muntdata, inclusief de kleine verschillen per land.
-De software is onvindbaar maar automatenhandelaren hebben die of weten iemand die ze kan programmeren, ik krijg nog een adres in mail.
-Volgens m'n kennis zijn het rotdingen :P Veel last van wijgering van muntjes, kieskeurig.
-Let er op dat een automaat waar een wettig betaalmiddel in kan onder de wet van kansspelen valt, zorg voor registratie of verwacht een dikke boete bij controle.

denk het van wel :D
( is al dagen aan het googlen )

Op 14 september 2006 21:23:50 schreef Henry S.:
Ik heb nog wat info:
-In de Eeprom staat alle muntdata, inclusief de kleine verschillen per land.

Desnoods dus die eeprom handmatig aanpassen, zit er alleen niet op te wachten. Zonde als dat ding daar zelf een prachtige interface voor aan boord heeft. Bovendien moet ik dat ding dan uit de print solderen (ik kan niet bij de onderkant..) en heb ik geen programmer ervoor, dus moet ik dan ook nog maken.

-De software is onvindbaar maar automatenhandelaren hebben die of weten iemand die ze kan programmeren, ik krijg nog een adres in mail.

Dat klinkt in ieder geval hoopgevend.
Ik heb natuurlijk het liefst het programma, kan ik zelf nog eens wat spelen! Iemand die kan programmeren vraagt waarschijnlijk meer geld dan een muntproever voor euro's op ebay kost.
Bedankt voor de moeite alvast.

-Volgens m'n kennis zijn het rotdingen :P Veel last van wijgering van muntjes, kieskeurig.

Vooral met de euro's OF kieskeurig, OF ruimer afgesteld waardoor fraudegevoeliger. Beide zal me een worst wezen (zie boven) :)

-Let er op dat een automaat waar een wettig betaalmiddel in kan onder de wet van kansspelen valt, zorg voor registratie of verwacht een dikke boete bij controle.

De flipperkast is geregistreerd, controle hebben we nog nooit gehad, alleen de brandweer af en toe :P

Op 14 september 2006 21:51:22 schreef Boudie:
Jochem,
Heb je hier al gezocht:
http://www.nri.de/de_150_12.html

Op 14 september 2006 22:17:59 schreef johne:
denk het van wel :D
( is al dagen aan het googlen )

Inderdaad :P
En die link bevat alleen wat PDF'jes, gaat bovendien over de nieuwere series. (Bijna al die nieuwe zijn voor 2 'user-defined' kanalen heel makkelijk te programmeren overigens, DIPje omzetten, stapel van dezelfde muntjes inwerpen, DIPje terug, klaar!)

*bump*

Henry S., al mail gehad? :)

Denk je dat ze hun beloften nog nakomen?

Zijn we alweer een week verder? Grrrrr, ik zal er even achteraan.

Tja... Ik stuur nog een mailtje...

Sorry, ik had bovenstaande helemaal gemist (ben weer aan het werk sinds begin oktober, dus minder tijd voor CO :()

Bedankt voor de moeite Henry!