summaryrefslogtreecommitdiff
path: root/RecoveryNode2mInterface.mdwn
blob: 917deb0c89c7f9980f282ba5d2deeda02b812505 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
# <a name="PC to 2m Transceiver Interface H"></a> PC to 2m Transceiver Interface Hardware

Here, in all of it's glory, is a serial (COM) port to 2m packet radio interface which injects DTMF tones into the 1200 bps packet port.

## <a name="Serial Link"></a> Serial Link

9600 bps, 8bits, no parity, 1 stop bit ("8N1"). You can tell if your serial port is sending characters since the amber 'COM\_LED' will be blinking if the interface is receiving characters. The board is wired up correctly for a DTE so it requires only a standard DB9 serial cable and does NOT require a null modem or anything fancy.

## <a name="Behaviors"></a> Behaviors

<table border=1 cellpadding=0 cellspacing=0>
  <tr>
    <th bgcolor="#99CCCC"><strong> ASCII Character </strong></th>
    <th bgcolor="#99CCCC"><strong> Behavior </strong></th>
  </tr>
  <tr>
    <td> 0,1,2,3,4,5,6,7,8,9,a,b,c,d,*,# </td>
    <td> DTMF generator plays appropriate DTMF tone and character is echoed back </td>
  </tr>
  <tr>
    <td> o </td>
    <td> Turns off the tone output of the DTMF generator and character is echoed back </td>
  </tr>
  <tr>
    <td> h </td>
    <td> Keys up the transmitter (for &#39;high&#39;) (red LED turns on) and character is echoed back </td>
  </tr>
  <tr>
    <td> l </td>
    <td> keys down the transmitter (for &#39;low&#39;) (red LED turns off) and character is echoed back </td>
  </tr>
  <tr>
    <td> Any other key </td>
    <td> Unknown command: &#39;x&#39; is echoed back over the serial line </td>
  </tr>
</table>

So to send an old LV\`b command, like '#\*0', you'd send 'h#o\*o0ol': this translates as "key up the radio, play a #, turn off the tone, play a \*, turn off the tone, play a 0, turn off the tone, key down the transmitter".

Note that there's NO timing done in the interface AT ALL; that's the responsibility of the PC. So the reality is there'd be a sleep (or some time delay to be chosen later) after both playing a tone and after turning it off. I envision three different kinds of sleep, which should be customizable:

1. sleep time after key up (time necessary for the radio to key up. Best guess: 750ms)
2. sleep time after a tone on command (time the tone is played. Best guess: 250ms)
3. sleep time after tone off command (time between tones. Best guess: 100ms)

## <a name="LEDs"></a> LEDs

There are thre LEDs on the board:

<table border=1 cellpadding=0 cellspacing=0>
  <tr>
    <th bgcolor="#99CCCC"><strong> LED Name </strong></th>
    <th bgcolor="#99CCCC"><strong> Color </strong></th>
    <th bgcolor="#99CCCC"><strong> Description </strong></th>
  </tr>
  <tr>
    <td> Power </td>
    <td> Green </td>
    <td> Duh. </td>
  </tr>
  <tr>
    <td> COM_LED </td>
    <td> Amber </td>
    <td> Flashes when a character is received on the serial line </td>
  </tr>
  <tr>
    <td> TX_ON_LED </td>
    <td> Red </td>
    <td> On when radio is keyed up </td>
  </tr>
</table>

## <a name="Schematics and Firmware"></a> Schematics and Firmware

... are attached below.