Shop OBEX P1 Docs P2 Docs Learn Events
RFID vs. Inductors, who wins? — Parallax Forums

RFID vs. Inductors, who wins?

Bobb FwedBobb Fwed Posts: 1,119
edited 2010-01-25 23:15 in Propeller 1
I have been interfacing RFIDs with propellers for a while now, and I never had any problems. I recently switched some voltage regulators from linear to switching. Ever since then I have had problems with the RFIDs. I found that the setup I was using caused the fob keys to not work at all, and the card keys to work at a very limited range.
While my RFID reader was fairly close to the switching regulators (2cm or so) I placed a layer of grounded shielding between my PCB (with the inductors/regulators) and the RFID.

For whatever reason I thought I would try a second layer of grounded shielding (not thinking it would actually change anything). Now, the fob key works at about 1cm away, and the card key at about 3cm. Originally they worked at about 9cm and 13cm respectively. I really need the fob to work at a minimum of 3.5cm (which is already pushing it for distance).
Any ideas as to what is happening? I assume it is interference from the switching regulators and inductors, but how can I quell the escaping EMI?

I must keep the switching regulators due to power consumption issues, but the RFID is absolutely necessary. The location of the RFID can't move more than 1cm in any direction due to packaging. The only solution I can think of is more layers of shielding. Please someone help. I am not clear why a second layer of shielding is increasing performance.

▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
April, 2008: when I discovered the answers to all my micro-computational-botherations!

Some of my objects:
MCP3X0X ADC Driver - Programmable Schmitt inputs, frequency reading, and more!
Simple Propeller-based Database - Making life easier and more readable for all your EEPROM storage needs.
String Manipulation Library - Don't allow strings to be the bane of the Propeller, bend them to your will!
Fast Inter-Propeller Comm - Fast communication between two propellers (1.37MB/s @100MHz)!

Comments

  • BeanBean Posts: 8,129
    edited 2010-01-25 18:05
    Can you change the frequency of the switching regulator ?
    That might help.

    Bean

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    Use BASIC on the Propeller with the speed of assembly language.

    PropBASIC thread http://forums.parallax.com/showthread.php?p=867134·
  • Bobb FwedBobb Fwed Posts: 1,119
    edited 2010-01-25 18:13
    Nope. They are LM2596S-ADJ which run at 150kHz and the RFID runs at 125kHz.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    April, 2008: when I discovered the answers to all my micro-computational-botherations!

    Some of my objects:
    MCP3X0X ADC Driver - Programmable Schmitt inputs, frequency reading, and more!
    Simple Propeller-based Database - Making life easier and more readable for all your EEPROM storage needs.
    String Manipulation Library - Don't allow strings to be the bane of the Propeller, bend them to your will!
    Fast Inter-Propeller Comm - Fast communication between two propellers (1.37MB/s @100MHz)!
  • LeonLeon Posts: 7,620
    edited 2010-01-25 18:31
    Use a different regulator. LT has some that work at much higher frequencies.

    Leon

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Amateur radio callsign: G1HSM
  • Bobb FwedBobb Fwed Posts: 1,119
    edited 2010-01-25 20:05
    How much of a difference do I need?
    I am kind of limited because I need an adjustable regulator that can put out an amp or more.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    April, 2008: when I discovered the answers to all my micro-computational-botherations!

    Some of my objects:
    MCP3X0X ADC Driver - Programmable Schmitt inputs, frequency reading, and more!
    Simple Propeller-based Database - Making life easier and more readable for all your EEPROM storage needs.
    String Manipulation Library - Don't allow strings to be the bane of the Propeller, bend them to your will!
    Fast Inter-Propeller Comm - Fast communication between two propellers (1.37MB/s @100MHz)!
  • jcwrenjcwren Posts: 44
    edited 2010-01-25 20:22
    Bobb,

    Just as a foundation for a further explanation, do you understand how RFID works at the electrical and RF level?

    --jc
  • LeonLeon Posts: 7,620
    edited 2010-01-25 20:23
    The LTC3412 runs at 300 kHz to 4 MHz, and can deliver 2.5 amps.

    Leon

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    Amateur radio callsign: G1HSM
  • Bobb FwedBobb Fwed Posts: 1,119
    edited 2010-01-25 20:25
    jcwren said...
    Bobb,

    Just as a foundation for a further explanation, do you understand how RFID works at the electrical and RF level?

    --jc
    Not really.
    An education would be nice.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    April, 2008: when I discovered the answers to all my micro-computational-botherations!

    Some of my objects:
    MCP3X0X ADC Driver - Programmable Schmitt inputs, frequency reading, and more!
    Simple Propeller-based Database - Making life easier and more readable for all your EEPROM storage needs.
    String Manipulation Library - Don't allow strings to be the bane of the Propeller, bend them to your will!
    Fast Inter-Propeller Comm - Fast communication between two propellers (1.37MB/s @100MHz)!
  • jcwrenjcwren Posts: 44
    edited 2010-01-25 20:46
    125Khz RFID works like this: The controller sends out a pulse at 125Khz twice. This is called "pinging". After sending the pulse, the controller then switches to receive mode. The ping will cause "ringing" in the receiver circuit. The controller counts the number of rings (this can be done several ways, either with edge detection, averaging over time, etc). If the RFID chip is not within range of the antenna, there will be more ringing than if it is present. The presence of the RFID chip damps the ringing, because it's a tuned circuit.

    Once the controller detects the RFID chip is in the field, it switches to generating a 125Khz carrier. This both powers the RFID chip and causes it to start clocking out data. The data Frequency Shift Keying (FSK) modulated. A '1' is approximately 16Khz, a '0' is approximately 12Khz. A low pass filter allows the 16Khz and 12Khz FSK data into the circuit that starts assembling the sequence of 1's and 0's into a data stream (I've simplified this a bit, as it's not really relevant).

    The data stream then gets some post-processing in the RFID reader, or it passes the raw data up to the controller processor (the Propeller, in your cause).

    What happens is when you have another 125Khz (or nearby frequency) you cause interference with the RFID reader and the RFID chip. The 125Khz carrier from the RFID and the interfering source mix, and don't produce a frequency the RFID chip can reliably respond to. It can also overwhelm the filters that let the 16Khz and 12Khz through. This results in reduced read range, read errors, etc.

    A large chunk of metal (such as a shield) may reduce the interference, but it can also de-tune the RFID antenna. This causes the antenna not to be responsive at the designed frequency, so the read range is reduced.

    Your best option is to change the SMPS to a frequency that is not close to the 125Khz and also not a multiple of it. 250Khz wouldn't be as bad as 125Khz, but it wouldn't be good. Be careful of shielding the switcher. Like the RFID circuit, if your shielding is done improperly, you can affect the characteristics of the SMPS and it won't perform to expectations (this is primarily around the inductor. Adding shielding will effectively change the inductor value).

    --jc
  • Bobb FwedBobb Fwed Posts: 1,119
    edited 2010-01-25 23:15
    Well. Thank you. I don't fully understand it, but I don't need to. We had the shielding because of false values we were getting from our interference-ridden environment. I think I have fixed that in my software, but we never removed the shielding. Now with the new regulators a chain reaction between the inductors, the shielding, and the RFID caused problems.
    I removed the shielding, and suddenly all problems are solved. Hopefully the software part of it (my forte -- it's never been hardware) is also solved. I guess we will find out with testing.

    Thanks for the education.

    ▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔▔
    April, 2008: when I discovered the answers to all my micro-computational-botherations!

    Some of my objects:
    MCP3X0X ADC Driver - Programmable Schmitt inputs, frequency reading, and more!
    Simple Propeller-based Database - Making life easier and more readable for all your EEPROM storage needs.
    String Manipulation Library - Don't allow strings to be the bane of the Propeller, bend them to your will!
    Fast Inter-Propeller Comm - Fast communication between two propellers (1.37MB/s @100MHz)!
Sign In or Register to comment.