SimpleUSB Channel Driver

From AllStarLink Wiki
Jump to navigation Jump to search

chan_simpleusb is ideal for smaller computers and those systems that do not need the chan_usbradio driver.

You must enable to load in modules.conf first.


The configuration of chan_simpleusb is done with the simpleusb.conf file and is self explanatory:

; SimpleUSB configuration



hdwtype=0               ; Leave this set to 0 for USB sound fobs modified using
                        ; the instructions from usbfob.pdf. Use a setting of 
                        ; 1 is for Dingotel/Sph interfaces.

rxboost=1               ; 0 = 20db attenuator inserted, 1= 20db attenuator removed
                        ; Set to 1 for additonal gain if using a low-level receiver output

carrierfrom=usbinvert   ; no,usb,usbinvert
                        ; no - no carrier detection at all
                        ; usb - from the COR line on the modified USB sound fob
                        ; usbinvert - from the inverted COR line on the modified USB sound fob

ctcssfrom=usbinvert             ; no,usb,usbinvert
                        ; no - CTCSS decoding, system will be carrier squelch
                        ; usb - CTCSS decoding using input from USB FOB 
                        ; usbinvert - from the inverted CTCSS line on the modified USB sound fob

txmixa=voice            ; Left channel output: no,voice,tone,composite,auxvoice
                        ; no - Do not output anything
                        ; voice - output voice only

txmixb=no               ; Right channel output: no,voice,tone,composite, auxvoice
                        ; See txmixa above.

invertptt=0             ; Invert PTT 0 = ground to transmit, 1 = open to transmit
                        ; This is the collector lead of the 2n4401 on the modified
                        ; usb sound fob.
                        ; please refer to the howto for the procedure to do this.

duplex=1                ; Full Duplex


Parallel Port

When setting chan_simpleusb to use a parallel port for I/O you must set a definition for the port address in rpt.conf:

iobase=0x378     ; Parallel port address (using for cor/ptt & switches +dh-rbi  - 378,278,3bc common Lpt 1,2,3

You must then define the parallel port pins used for I/O in simpleusb.conf:

[usb_<node#1>]  ( ie [usb_1234] )
...(+ additional info for this nodes usb config)...


...(+ additional info for this nodes usb config)...

When configuring your simpleusb radio node you MUST ensure that the name of the radio is the same in both rpt.conf and simpleusb.conf. The system looks inside the file SimpleUSB.conf for the match of the node# to be configured (i.e. usb_1234).

Node names are in format of usb_<nodenumber>. Where <nodenumber> = the AllStar Link node of your system. Note that usb and the node number are separated by an underscore (_) character.


Your simpleusb.conf file defines your usb radio as [usb_1000]. Your rpt.conf file would then have:

rxchannel = SimpleUSB/usb_1000

If you are reusing the simpleusb.conf file from an older installation (i.e., ACID), take special note of the change in naming. When a exact match is not made, the settings that follow will not be loaded.


Parallel Port Addressing:

A line is required in your node stanza in RPT.conf to access the parallel port in the software.

iobase=0x378 ; Parallel port address

Settings are 0x378 = LPT1, 0x278 = LPT2, 0x3bc = LPT3

You can have more than one, but you need to place them in other node stanza's addressed separately. Note: Some older systems plug and play can have issues addressing these. If so, go to bios setup and address them manually. This will prevent the system from changing the address.

Parallel Port Pin Numbers

Additional note on parallel port pin numbers:

When you are looking at the pp# addressing, the actual hardware pin numbers are in computer natural logical format.
So hardware pin D0 on the LPT port is equal to pp1 in the software configuration.

"0" is the first number to a computer as seen at the BIOS and/or hardware addressing.
Be sure you are testing/setting/attaching the correct pin number.

Here is a listing of hardware pins and the software setup equivalents:

Hardware pin Software equivalent
D0 pp1
D1 pp2
D2 pp3
D3 pp4
D4 pp5
D5 pp6
D6 pp7
D7 pp8

Allstar denoted pins pp9 through pp12 are 'Input pins' listed as 'A#' in the parallel port scheme.

Special note: All these pins require 'buffering' by adding a transistor to do the actual switching. They will not sink much current on their own. While these port pins vary, most will only sink about 20ma-50ma of current. In the case of some older radios you might interface, you might need to buffer with a transistor (2n2222 / 3904/3906) AND/OR a relay actuated by the buffer transistor. Mainly the PTT lines.

The best design is with optically-coupled transistors to prevent voltages and/or rf from running back through this port. The unused output pins can be applied to switch things at the site. i.e. fan/light/alarm or even switching off other equipment. It is not advisable to work a relay coil directly with a PP pin. It is a coil and susceptible to absorbing RF and there is no quicker way to lock a computer up than to bugger this input/output with a stray signal.

Final Note: If you think you might be adding a Doug Hall RBI-1 Remote base later, Start populating pins 'above' pp3 reserving the 1st 3 pins.

Check command tables for info, not related to simple_usb.conf.