Stop eavesdropping from contactless credit cards (RFID/NFC)

The police of the canton of Aargau are giving away RFID blockers for free. These cards can be put in your wallet to prevent 3rd-parties exploiting contactless payment. They contacted me to build a protoype device demonstrating the effectiveness of these blocking cards on public exhibitions.

The device lights up a lamp on the top when it detects a card, and turns off blank when it’s removed again.

Here is a video of the working solution:

 

Creation process

Requirements & Design

The device needs to run multiple hours a day as it will be used in exhibitions. It should therefore have some autonomy and not rely on a mains connection. There are several ways to go about this. One of them is to use rechargeable batteries, another one would have been to use a USB powerbank. In case the device runs out of power, the power supply should be replaceable rather quickly.

A good choice for the electronics would be some Arduino-based device, attached to a commonly available NFC/RFID reader. Even though the device will not be capable to fully read contactless cards, it will at least be able to detect their presence.

I have first designed a circuit schema in KiCad.

schema.png

To give the customer a visual draft, I also created a 3D model in Sketchup.

draft.png
 

Build process

The circuit is a s simple as it gets. An Arduino Mega 2560 connected to an PN532 NFC controller shield from Adafruit, powered by four AA rechargeable batteries. This is easy to implement and it happens so that they provide an ideal voltage of roughly 6 Volts. The batteries can easily be replaced by full ones while the empty ones charge up again. Restarting the device in-between only takes a few seconds and can easily be accepted.

For the housing, some melamine-coated 15mm multiplex is easy to work with and I had some leftover pieces from a previous project. Hence, I decided to go with it. The joinery is done with simple 8mm dowels. I have cut the board to pieces and dry-assembled them before gluing things in place.

To accommodate the circuitry, some sort of pocket had to be routed (left-most picture). I wanted to get the RFID reader as close to the outside surface as possible in order to increase the available range to the maximum.

IMG_20201207_124239.jpg
IMG_20201207_154047.jpg
IMG_20201207_154059.jpg

Batteries should be made easily accessible to facilitate quick replacement, which was done using a lid on the back side. To keep it closed, a magnet was put in place. Further, an on-off rocker switch was attached to the side to reduce energy consumption when not in use.

switch.png
40306413211_6b77d4d26b_c.jpg

The top lamp consists of two RGB LED strips. This allows a lot of flexibility in the software. In a future software version, one could imagine the bar of LEDs displaying the quality of the signal, or display different colours depending on the data detected on the card. For now, it just displays an animated startup sequence, and lights up bright-green when a card is held against the front.

As can be seen in the video, the finished build works great and the customer was happy. It certainly was a ton of fun and I have learned something about NFC / RFID as I had never worked with it before.

Next
Next

jass.games