PT2260 / SC2260 key fob, get signal - AGC ?


do you know if I can get signals with a simple ASK receiver (those tiny chinese ones for 1-2$, example) sent by an ASK transmitter (of course same frequency, this one) ?

It is PT2260 coded, I opened it, there was written SC2260 (they're technically the same).

I already read the data sheet but only found something to the coding itself.
And I was not able to find out whether there is some kind of AGC used, I think it has to otherwise a matched receiver wouldn't be able to get the signal, I wrote an interrupt based Arduino sketch looking for AGC bits (0,1,0,1,... alternating, each the same duration) and I proved that it works with an easy transmitter I found at home. But why does this transmitter not send any AGC or does it?

Thank you

But why does this transmitter not send any AGC or does it?

I'm sure there is no AGC bits. Probably, that receiver alone has some kind of local AGC on it. What make you think it should have power control loop, which I only 've seen on 3G/4G network?

AFAIK, the receiver's AGC can be made "ready" by turning the carrier frequency on and of many times (tx sends: 01010101...) so that the receiver is ready to get the following data.

Maybe I just misused the word AGC - however I mean what I described above to make a kind of match between receiver /transmitter.

For example, I received a raw VirtualWire encoded signal and noticed that it also sends ~ 30times on-off with same duration (like a Manchester coded "1" = "01" or "10" )

To keep you informed:

First, I really wondered why there is no repeating change of 1 and 0 (on / off - with Duty cycle = 50% maybe ~ 30 times) .
Now, I wrote that simple sketch because I read (mikroElektronika - How can read PT2260's datas with PIC):

by dhouston
The simplest method is to wait for the long space at the end of the first transmitted copy and then use the CCP hardware to capture the pulses and spaces of the second transmitted copy.


// 11.JAN.2013

int pin = 11;
boolean w = LOW;
unsigned long md = 500;

void setup()
pinMode(pin, INPUT);

void loop()
if (Serial.peek() == 'c') {
w = !w;
Serial.print("W changed to: ");
Serial.println(w ? "HIGH" : "LOW");
if (Serial.available()){
int k = Serial.parseInt();
if (k>0){
Serial.print("min duration changed to: ");
unsigned long duration = pulseIn(pin, w);
if (duration>md) {
Serial.print(w ? "HIGH" : "LOW");
Serial.print(", length = ");

Honestly, it would not be necessary to make this code so long but it was important for me to change the variables (w: waiting for low/high; md:minimal duration) on the fly.

Very happy now because the button press is recognized, now I will extract the code that follows and will evaluate it...

Hi, I'm trying to do the same thing. But I don't understand the code, why am I sending stuff on the serial console?

I've been trying to get a sc2260r4 4 button remote to work with a 315mhz receiver.

Please help! :wink: