Een Kenwood TK-3101 programmeren op een te snelle computer
Vertaald uit het Engels. Lees het origineel.
Ik ben erin geslaagd om de typische Kenwood-software KPG54D en KPG48D voor hun TK-3101-transceiver te laten werken op een van de snelste Apple MacBook Pro’s die momenteel op de markt zijn, met OSX Lion, VMWare Fusion (link niet meer beschikbaar), Windows XP en DOSBox. Dit werkt misschien ook in elke andere virtualisatieomgeving, zoals Parallels of VirtualBox, en zelfs rechtstreeks op andere Windows-versies.
Ik heb al jaren een Kenwood TK-3101-radio die afgestemd is op de PMR446-frequenties. PMR446 is in Europa een manier om via de radio te communiceren zonder dat je een vergunning nodig hebt. Als het weer niet al te gek is en je in open terrein staat, zou je PMR446-uitzendingen moeten kunnen ontvangen tot op 5 kilometer afstand.
Ik had niet veel aan de radio tot ik met de moto begon te rijden. Onderweg is de afstand van enkele kilometers van PMR interessanter dan de paar meter die je uit bluetooth haalt, of de enkele tientallen meters van een draadloze helmkit. Leuk om te praten met de persoon achter je op de duozit, maar niet genoeg om te praten met een medemotorrijder die voor of achter je rijdt.
Mijn broer begon ook te rijden en ik kocht/won een paar Kenwood TK-3101’s op eBay, om ze onderweg te gebruiken. Ik kocht ook een USB-seriële kabel van een ander merk, waarvan de verkoper beweerde dat hij met TK-3101’s zou werken.
Nu beweert iedereen op het internet 2 dingen:
- Je hebt een trage computer nodig om KPG48D of KPG54D te draaien, omdat nieuwere, snellere computers te snel zijn: de radio kan niet antwoorden op de snelheid waarmee de software op je snelle computer gegevens verwacht;
- KPG48D en KPG54D, allebei echte DOS-toepassingen, hebben een rechtstreekse verbinding met de seriële COM-poort nodig. USB volstaat niet.
Wel, het blijkt dat het bovenstaande maar gedeeltelijk waar is.
VMWare Fusion, Windows XP
Om te beginnen had ik iets nodig dat DOS begrijpt. Ik had VMWare Fusion al geïnstalleerd en er een 32-bit installatie van Windows XP Professional in opgezet. Beide werken meteen zoals ze geleverd worden, dus je hoeft hier niets aan te passen.
Seriële adapter
De USB-naar-seriële adapter die ik heb, blijkt de populaire Prolific PL-2030 USB-naar-seriële adapter te zijn, maar in mijn geval eindigt hij in een mini- en microjackconnector voor Kenwood. Installeer de driver op de virtuele Windows XP, sluit de USB-kabel aan op je Mac, en VMWare Fusion vraagt je met welke machine het de USB-adapter moet verbinden. Voor ons is de keuze voor de hand liggend: de gevirtualiseerde Windows XP.
De Kenwood-software KPG48D en KPG54D kent alleen COM1 en COM2, dus je moet ervoor zorgen dat je USB-seriële adapter zich voordoet als een van die twee poorten. Duik in Apparaatbeheer van Windows XP om een van de twee COM-poorten uit te schakelen, en stel de COM-poort van je USB-adapter in op de COM-poort die je net uitgeschakeld hebt.
De Prolific-poort staat op 9500 bps, en dat werkt.
DOSBox installeren
Installeer daarna DOSBox. Dat is een DOS-emulator die eruitziet als je gewone DOS-venster, maar dat niet is. Om te beginnen kan je er elk programma dat erin draait mee vertragen terwijl het loopt.
Na de installatie kijk je in je Startmenu om de Options van DOSBox aan te passen. Deze snelkoppeling opent het configuratiebestand van DOSBox. Scrol naar beneden tot [serial] en zorg ervoor dat de COM-poort die je gaat gebruiken op ‘direct’ staat.
In mijn geval gebruikte ik COM2, dus paste ik de volgende regel aan:
serial2=directserial realport:COM2
Daarmee laat DOSBox alle communicatie van of naar de COM2-poort in de DOSBox-emulator rechtstreeks door naar de COM2-poort van Windows XP, wat in ons geval via een gevirtualiseerde en fysieke USB-poort loopt.
Alles laten werken
Goed. Je virtuele machine staat klaar, je COM-poort is ingesteld en DOSBox is geïnstalleerd.
Zorg ervoor dat de software KPG54D en KPG48D in een makkelijk bereikbare map op je virtuele Windows XP-machine staat, bij voorkeur iets als C:\KENWOOD. De reden is dat DOSBox bij het opstarten niets weet van je C:-schijf. Je moet de map die je wilt gebruiken mounten als de geëmuleerde C:-schijf in de emulator.
mount c: c:\kenwood
Zodra je dat gedaan hebt, meldt DOSBox dat schijf C gemount is op de opgegeven map. Ga naar de C:-schijf en start KPG54D.
KPG54D verschijnt. Gebruik de Alt-toets om het menu te activeren, en ga met de pijltjestoetsen naar Setup, waar je controleert of je de juiste COM-poort gekozen hebt.
Nu kunnen we de geëmuleerde versie van DOS vertragen. Druk op Ctrl+F11 om het aantal CPU-cycli te verlagen en op Ctrl+F12 om het te verhogen; dat aantal staat in de titelbalk van DOSBox. Zodra je ongeveer 190 cycli bereikt, kan je naar het menu Program gaan, je Kenwood TK-3101 aansluiten, hem aanzetten en alle kanaalinformatie uit je radio lezen.
UPDATE: zelfs bij 3000 cycli kon ik alle gegevens lezen.
Problemen oplossen
Krijg je om een of andere reden toch nog leesfouten, probeer dan de CPU-cycli of de COM-poortinstellingen in Windows te wijzigen. Het zou meteen moeten werken op 9500 bps en 3000 CPU-cycli, maar soms moet je de transceiver uit- en weer aanzetten en de snelheid van de COM-poort of van de geëmuleerde DOS-box aanpassen om het te laten werken.
Bedenkingen
Waarschijnlijk kan je VMWare Fusion en Windows XP overslaan met de OSX-versie van DOSBox, maar dat moet ik nog bekijken. Ik heb in elk geval een manier gevonden om technologie uit 1999 te gebruiken met de snelste consumentenhardware van 2011.
