I’ve been trying to re-create some stuff I did with these as there appears to be the idea that they are cr@p. Unfortunately I no longer am employed where I did the work and my “backup” was on a laptop that whas stolen years ago.
But I hooked a PIC12F675 (with a little bit of test code to the 315MHz xmtr and took some ‘scope pics of what I was sending in on the data line of the xmtr and what I was getting out of the 4800 bps recvr boards’ data pin. I didn’t use the latest incarnation of these sparkfun boards so your mileage may vary.
you can see that:
1.) the AGC needs to be “trained” and that the initial data is gibberish. After 4 bytes it’s good.
2.) there is a limit to the leading /training edges that limits the bps usefulness for p/w modulation encoding decoding (have to go down to about 1200 bps to get good edge resolution making p/w modulation feasible).
3.) the AGC breaks look after a period of non use, the higher the bit rate the quicker it breaks lock.
the code for this was VERY simple:
'oshon basic for PICs on a PIC1F675
'how many pulse bursts @ ~1200bps does it take to optimise the agc of the $5 revr?
'use a 25% d/c
'each Bit consists of 4 time slices of ~ 208usec
'for each 8 bit character there is a 4 bit(16 time slice)intercharacter logic low
'pin1 vcc
'pin2 GP5 output serial stream
'pin8 return
TRISIO = %001000
GPIO = 0
Dim x As Byte
Dim y As Byte
Dim burst As Byte
Dim burst_count As Byte
main:
'init variables
WaitMs 5000
burst_count = 4
For burst = 1 To burst_count
For x = 1 To 8
GPIO.5 = 1
WaitUs 208
Toggle GPIO.5
WaitUs 624
Next x
For y = 1 To 4
GPIO.5 = 0
WaitUs 832
Next y
Next burst
End
here’s some pics @1200 bps I’ll upload some @4800 in a second message for comparison.
-Ignore time bases in photos except ones with cursors, time base doesn’t work in “zoom function” I used to zoom in on areas of trace memory.
-the bottom trace is the input into the transmitter, the top is the output from the receiver.
-the file names give a description of the picture