R/C Tech Forums

R/C Tech Forums (https://www.rctech.net/forum/)
-   Radio and Electronics (https://www.rctech.net/forum/radio-electronics-137/)
-   -   Transponder Design (https://www.rctech.net/forum/radio-electronics/688396-transponder-design.html)

mos-leung 01-22-2013 04:48 PM


Originally Posted by howardcano (Post 11712592)
That's almost correct!

The method is called Binary Phase Shift Keying (BPSK). There are many descriptions of it on the internet, but here's a quick description particular to the example you gave:

A logic 1 is indicated by ANY reversal in the carrier phase. (This is just a convention I am using. We could just as easily say that the carrier reversal indicates a logic 0.) The initial carrier phase, before data is sent, is unimportant.

First, the data stream must be preceded for a short time with the carrier turned on to give the tank circuit time to "ring up" to full amplitude, and time for the phase detector in the decoder to generate a first valid output. Then a start bit (an initial logic "1") is sent to indicate the beginning of the data stream.

So the sequence is:

1. pin 5 = low, pin 6 = low, tank circuit is not not driven and does not radiate.

2. pin 5 = high, pin 6 = low, initial ring up for tank circuit

3. pin 5 = low, pin 6 = high for one machine cycle (4 carrier periods) sends the start bit

4. No changes for 3 more machine cycles (12 carrier periods) sends "000"

5. pin 5 = high, pin 6 = low for one machine cycle (4 carrier periods) sends a logic "1"

6. No changes for 3 more machine cycles (12 carrier periods) sends "000"

Thanks.
How about the data steam of "0" and "1", if i want to send out the transponder number "3901248" ?

howardcano 01-22-2013 05:08 PM


Originally Posted by mos-leung (Post 11714460)
Thanks.
How about the data steam of "0" and "1", if i want to send out the transponder number "3901248" ?

I haven't the slightest idea. The data format is unknown to me. I've already posted the few things I've observed so far about the data train.

mos-leung 01-22-2013 10:09 PM


Originally Posted by howardcano (Post 11714558)
I haven't the slightest idea. The data format is unknown to me. I've already posted the few things I've observed so far about the data train.

In your tested sample, is it possible to let us know one of the data stream and the corresponded transponder number ? e.g. "2034566" is logic of "000101010100010"

I believed the new RC4 is different code format when we compare with the old RC2/3/4hybird..etc. Due to the old version code only have the transponded number (7 digits), but the RC4 having infomation like transponder number (7 digits), temperature (2-3 digits) & voltage (2-3 digits). ie 7+3+3=13 digits
No matter how's the CRC, start/stop bits are. You will find the number of digits for information in NEW version is almost double than old version.
I guess it is the main reason of NEW RC4 cannot work with old one.....

freexray 01-22-2013 11:03 PM

Hi Howard,

Not sure how the pic programming (memory division, write protect) is done (AVR person) but have you considered putting the transponder "strings" into eeprom? on power up the program would load a string out out eeprom.
You could lock the program space but leave the eeprom space read/write allowing end users to update the "string table" (or populate it from blank).
Combined with some form of decoder, it would allow people to clone existing transponders, avoiding totally issues of clashes.

Any idea of the power required to run the transponder?

howardcano 01-23-2013 04:32 AM


Originally Posted by freexray (Post 11716082)
Hi Howard,

Not sure how the pic programming (memory division, write protect) is done (AVR person) but have you considered putting the transponder "strings" into eeprom? on power up the program would load a string out out eeprom.
You could lock the program space but leave the eeprom space read/write allowing end users to update the "string table" (or populate it from blank).
Combined with some form of decoder, it would allow people to clone existing transponders, avoiding totally issues of clashes.

Any idea of the power required to run the transponder?

The 12F683 does have 256 bytes of EEPROM. That’s plenty of space to store one ID. For the next iteration, I'll be using just one byte of that to store a pointer to the ID selection.

I have pondered the idea of doing what you suggest, but building the necessary phase detector INSIDE the transponder itself. Nearly everything else necessary is already present: tank circuit, microprocessor, and EEPROM. The user would just lay the transponder up against an existing transponder, tell it to copy what it is receiving, and Presto! the number is stored.

Unfortunately, that still requires that the user own an existing transponder. That's maybe not such a big deal. It’s also quite a challenging design!

The average current consumption is about 11mA from a 6V supply. That will increase if I include a Zener for shunt regulation, to permit operation from higher voltages (like a LiFe receiver pack, for those individuals still using them).

howardcano 01-23-2013 04:40 AM


Originally Posted by Ema-77 (Post 11713549)
Really a great job, thanks for sharing and for the detailed description.
Now, the only thing we miss is a "valid" sequence of 0 and 1 that the AMB decoder is able to recognise, then we can start playing at home with our 2 cents electronic equipment :D .


Originally Posted by mos-leung (Post 11715977)
In your tested sample, is it possible to let us know one of the data stream and the corresponded transponder number ? e.g. "2034566" is logic of "000101010100010"

I will not provide this information; please re-read post #67. You can determine it on your own with an existing transponder and an oscilloscope. The details are left up to you.

Ema-77 01-23-2013 07:40 AM


Originally Posted by howardcano (Post 11716540)
I will not provide this information; please re-read post #67. You can determine it on your own with an existing transponder and an oscilloscope. The details are left up to you.

I understand your point of view, but unfortunately I don't have any access to a digital sampling oscilloscope, electronic for me is a hobby exactly like RC.

It will be nice if you can send out some code protected pic, but I think that actually there will be no real difference becuase it will not be really an hard job to get the right sequence reading pin 5 and 6 of the micro (also with the poor equipment of an hobbyst like me).

Can you lend me your Tek :blush: ?

freexray 01-23-2013 07:43 PM


Originally Posted by howardcano (Post 11716527)
The average current consumption is about 11mA from a 6V supply. That will increase if I include a Zener for shunt regulation, to permit operation from higher voltages (like a LiFe receiver pack, for those individuals still using them).

Must admit i had a brain failure on how much eeprom there was in a microcontroller, for some reason i thought it was much larger.

A buck/boost (integrated switches) like the tps63061 or LTC3115-1 might be a good option, would allow operation from 2.7v up to over 12v.

I took your comment that generating the carrier on the processor was not feasible as a challenge lol. Got some parts on order to give it a try.
Back of the envelope calculations tell me it is possible (16 instruction per data bit. 8 consumed generating the carrier wave, 8 remain to calculate whether to pin toggle). would be ~1600 instructions of pure sequential code (not a single compare or branch).

howardcano 01-23-2013 08:20 PM


Originally Posted by freexray (Post 11720251)
I took your comment that generating the carrier on the processor was not feasible as a challenge lol. Got some parts on order to give it a try.
Back of the envelope calculations tell me it is possible (16 instruction per data bit. 8 consumed generating the carrier wave, 8 remain to calculate whether to pin toggle). would be ~1600 instructions of pure sequential code (not a single compare or branch).

Oh, it's definitely do-able, but not on the little PIC. That would take a 40 MHz clock (giving 10 MIPS), which I don't think is available on the smaller PICs, and straight-line code (as you said) where each instruction just twiddles the pins high or low. For a PIC, that's about 800 lines of code (one instruction per carrier edge, or a NOP for no edge).

Unfortunately, the output current of the PIC is still insufficient to drive the tank directly, so we would need to parallel up the output pins, requiring a larger package size. I'd rather just use separate logic gates for their higher drive current, and then the microprocessor can generate just the modulation, which makes the code 1/8 as long and lets the processor run at 1/8 the speed. That's a pretty substantial improvement for an investment of two cheap gates.

But that's only my preference. I'll definitely want to see your experiments!

freexray 01-23-2013 08:48 PM


Originally Posted by howardcano (Post 11720399)
Oh, it's definitely do-able, but not on the little PIC. That would take a 40 MHz clock (giving 10 MIPS), which I don't think is available on the smaller PICs, and straight-line code (as you said) where each instruction just twiddles the pins high or low. For a PIC, that's about 800 lines of code (one instruction per carrier edge, or a NOP for no edge).

Unfortunately, the output current of the PIC is still insufficient to drive the tank directly, so we would need to parallel up the output pins, requiring a larger package size. I'd rather just use separate logic gates for their higher drive current, and then the microprocessor can generate just the modulation, which makes the code 1/8 as long and lets the processor run at 1/8 the speed. That's a pretty substantial improvement for an investment of two cheap gates.

But that's only my preference. I'll definitely want to see your experiments!

2x Half-H and an not gate ;)
Fortunetly the AVR instruction set is all single cycle instructions for what i need. now if i could just find where i left those blasted 20mhz crystals.

howardcano 01-24-2013 08:28 AM

I've previously mentioned that the cost of testing the transponder to FCC requirements (CFR47 15b) was significant. I just got a quote from a nearby testing lab that I've used for other projects (not funded by me). The cost is $2200 minimum. It would be higher if problems are encountered.

PiccoRacing 01-24-2013 03:52 PM

Have you physically inspected any of the genuine AMB transponder internals? They do it with a single PIC microcontroller. The FCC docs have internal pics. I'd have provided direct links, but the forums want some undisclosed post count achieved before I can post URLS.

For clarification, AMB transponder IDs range from 2097152(2^21) to 9999999.

Ed Anderson 01-24-2013 04:24 PM

I was sure the numbers didn't go below 2000000... even tried to enter it, and it wouldn't allow it



Originally Posted by howardcano (Post 11653119)

The first, as I understand it, is currently available, has a yellow case, and uses ID numbers that are unique to the club transponders, so if it should disappear and show up again later, it would be easily recognizable.

Other then the phsical shape,. I dont believe there is anything "unique" to the house TP numbers.... I've looked at over 100 of them locally... and the numbers are all over the place.

howardcano 01-24-2013 04:35 PM


Originally Posted by Ed Anderson (Post 11724177)
Other then the phsical shape,. I dont believe there is anything "unique" to the house TP numbers.... I've looked at over 100 of them locally... and the numbers are all over the place.

Thanks for the clarification, Ed!

mos-leung 01-24-2013 04:43 PM


Originally Posted by PiccoRacing (Post 11724023)
Have you physically inspected any of the genuine AMB transponder internals? They do it with a single PIC microcontroller. The FCC docs have internal pics. I'd have provided direct links, but the forums want some undisclosed post count achieved before I can post URLS.

For clarification, AMB transponder IDs range from 2097152(2^21) to 9999999.

Yes, you are correct !!
AMBrc is using PIC ( 8-pin SMD )
And the new RC4 is using a small 32-pin QFP IC. (not sure from which brand)

Also, do you have more information on the ID number for RC4 ?
Did you see any ID used in RC4 same as previous AMBrc transponder?


All times are GMT -7. It is currently 03:57 AM.

Powered By: vBulletin v3.9.3.9 Patch Level 3
Copyright © 2026 MH Sub I, LLC dba Internet Brands. All rights reserved. Use of this site indicates your consent to the Terms of Use.