www.webx.dk Start page
OZ2CPU Radioamateur mainpage
Homemade Radio Electronics
Digital Radio amateur CALL-ID sender and reciever with selective call function
Danish Page, Se Dansk side
Radioamateur callsign sender and reciever, using digital encoded sound signal. You construct a little box with a LCD display and a PIC16F876 Flash type microcontroller. It will send out your callsign every time you start a radio transmission. The data signal says only a short click sound, It takes about 22ms to send the 6 carracters and checksum. The display will show the last 4 callsigns recieved with time information, This is handy if you want to know if your pals have been on your QRV frequency lately. I have an ide for future software versions, to turn off the speaker, and only turn it on again if someone transmit using this call-id system, This system should also work on SSB, since the digital coding dont care on frequency, information is coded with timepulses of 400, 600, or 800uS, depending on data send; zero, one or startbit. It will be more fun to use if many amateurs uses this system The cost to make this call-id system can be verry low, using second-hand LED's to save alot. The Call-id systemm needs speaker input, transmitt signal active low, and microphone output. Maybe I will make it possible to send and recieve small meassages like SMS, using a cheap PC keyboard or similar, Or what about an amateur frequency where the exact local time is broadcasted every sec, This could easyly be implemented on one of the local and most used VHF or UHF repeters. but this is only ideas for the future. The Software version I have ready now, can only send and recieve call signs of 6 chars + test generators. TX data from PIC16. first hi-pass filtering, 33n and 1k to gnd. then low-pass filtering, 3k3 and 10n to gnd, now it is ready for the mic input. RX speaker signal, is detected using pos and neg going pulses that sets and resets an RS flip-flop. Then the signal is divided by two using a 4040, now the reciever PIC16 can measure the time at every edge. You see on the figure it is the periode time, that holds the digital information, so you can invert and distort the signal and still keep information unharmed. startbit sequence. (200uS/Div) 2 lead in pulses, and startbit. TX mic signal after filtering. Hi 200uS, Low pulse 200uS, total = 400uS digital bit "0" Hi 200uS, Low pulse 400uS, total = 600uS digital bit "1" Hi 200uS, Low pulse 600uS, total = 800uS gives "StartBit" RX speaker signal, RF level is 30dB over SQ level. RX speaker signal, RF level is 10dB over SQ level. RX speaker signal, RF level is only 5dB over SQ level. Listen to "test12" as call sign in 16bit 44Khz wave format. Listen to "test34" as call sign in 16bit 44Khz wave format. Listen to "test56" as call sign in 16bit 44Khz wave format. This file can be played over radio to amateurs using CALL-ID they will then see "TEST12" written in their displays. experimants have shown it is even possible to transmitt a call sign just holding the radio mic close to a pc speaker, however electric connection is much better compared to accustic. See test12 wave file with detailed explanations on all bits.
Test setupThe Test setup is two wattmeter projects that have just got new software, and modifyed a bit, see what have been added incl pic16 pin numbers.
Detector SchematicThe recieved audio signal is converted to 5v digital levels and divided using this circuit.
Printed circuit layoutWill come here soon, over the latest version.
First test setup in "case"cheap and easy case made using cardboard and hotmelt glue. The reson this was made this was, was to make first installation fast an a local freiend 10km away, so i cuold start real life testing, so bugs and problems can be solved before this is gived free to all other users. When software is fully tested and developed ready, it is easy to make a real case in metal, The software will be free to download from this page.
SoftwareSoftware is not complete yet, all is programmed in anci C The menu and display system is stollen directly from the wattmeter project i made last year. Press MENU to see menu screens, turn the DIAL to scroll through the menu screens, press SELECT TO ACTIVATE shown menu item. Menu 0, is used to edit your call When activated it looks like this. Menu 1, goto the call rx screen In version 0.03 only 1 call is shown. Menu 2, Test generator start bit The changing numbers shown it is running. Menu 3, Test generator with Call Repeated send of callsign. Menu 4, Test generator numbers The 6 numbers are counting up, C=checksum. Menu screen 5 til 12 is reserved for future ideas. Menu 13, setup test generator repeat delay. Menu 14, show software version and date.
Data Transfer Speed0 = 2500 bits/sec = 416 Chr/sec. 1 = 1666 bits/sec = 277 Chr/sec. Each charracter is made using only 6 bits, so a total of 64 different letters and numbers are possible, that is also why this fast speed is possible. Character set ASCII NEW NEW Character Hex Hex Binary Value --- -- ------ ----- 30 00 000000 0 31 01 000001 1 32 02 000010 2 33 03 000011 3 34 04 000100 4 35 05 000101 5 36 06 000110 6 37 07 000111 7 30 08 001000 8 39 09 001001 9 3A 0A 001010 : (colon) 3B 0B 001011 ; (semi-colon) 3C 0C 001100 < (less than) 3D 0D 001101 = (equal sign) 3E 0E 001110 > (greater than) 3F 0F 001111 ? (question mark) 40 10 010000 @ (AT symbol) 41 11 010001 A 42 12 010010 B 43 13 010011 C 44 14 010100 D 45 15 010101 E 46 16 010110 F 47 17 010111 G 48 18 011000 H 49 19 011001 I 4A 1A 011010 J 4B 1B 011011 K 4C 1C 011100 L 4D 1D 011101 M 4E 1E 011110 N 4F 1F 011111 O 50 20 100000 P 51 21 100001 Q 52 22 100010 R 53 23 100011 S 54 24 100100 T 55 25 100101 U 56 26 100110 V 57 27 100111 W 58 28 101000 X 59 29 101001 Y 5A 2A 101010 Z 5B 2B 101011 Æ 5C 2C 101100 Å 5D 2D 101101 (reserved) 5E 2E 101110 (reserved) 5F 2F 101111 (reserved) 60 30 110000 (space) 61 31 110001 (reserved) 62 32 110010 (reserved) 63 33 110011 (reserved) 64 34 110100 (reserved) 65 35 110101 (reserved) 66 36 110110 (reserved) 67 37 110111 (reserved) 68 38 111000 (reserved) 69 39 111001 (reserved) 6A 3A 111010 (reserved) 6B 3B 111011 (reserved) 6C 3C 111100 (reserved) 6D 3D 111101 (reserved) 6E 3E 111110 (reserved) 6F 3F 111111 (reserved) You simply add 30 hex to the recieved byte then you get the normal ASCII character, The reserved bytes wil maybe be used in the future for selective call or SMS messages, the present software version ignore those reserved bytes.
Short status:First CALL-ID unit installed at first amateur, testing is in progress. Longest distance callsign transfered so far, at UHF: not tryed, (0 km) Longest distance callsign transfered so far, at VHF: from OZ3KLA to OZ2CPU (13 km) Longest distance callsign transfered so far, at HF: not tryed, (0 km) More info will come soon. 26. Marts. 2003. OZ2CPU.