RFID Reading Field Visualizing Probe Design


Last week while I was watching some videos on Vimeo looking for inspiring material, I hit the jackpot: “Immaterials: the ghost in the field”. I was so intrigued by their work; I didn’t even pay attention to the publishing date (2 years ago). While watching the video ideas started rushing through my head, since for a while I’ve been working with RFID and always faced problems with the reading field of the antennas. Of course going to the datasheets and trying to figure out the reading volume’s shape could be one possibility, but it’s just not “real” enough. I wanted to know more about the people behind this project and reached nearfield.org. The research was complete, the papers were published, the website was last updated in 2011 but people were still posting comments.

I started wondering what happened to this amazing technique, and why no one has pursued this study. In the meantime, while I could not argue the beauty of the outcome of this technique I couldn’t resist not thinking of how inefficient, time consuming and limited it was. So I decided to design my own tool that could take this research a step further.

RFID Reading Volume 3D Mapping Probe:

The concept is simple; it is visualized in the diagram below:

RFID Reading Field Visualizing Probe High level architecture
RFID Reading Field Visualizing Probe High level architecture



The diagram is at a very high level of abstraction and it’s not worth going into its details at the moment as some components might vary upon implementation. However, I’m gonna describe what is illustrated above:

  1. The Probe is made out of 5 modules:
    1. RFID Tag
    2. Coordinates Recording module
    3. Accelerometer
    4. LED
    5. Controller
  1. Once the Probe, specifically the Tag (1a) is at a reading distance from the RFID antenna, the reader dispatches a signal to the processing software layer that will in turn trigger the recording algorithm.
  2. The recording algorithm will ask the Controller to grab data from the 2 modules (1b and 1c) and will ask the LED (1d) to blink.
  3. The data is then gather, analyzed, stored and the coordinates with the accelerometer data will be used to draw 3D point cloud of the reading volume.
It is worth to note, that this Probe can be adapted to different technologies. Actually, any technology that offers instance response.

To be more specific, I drew a simple annotated sketch of how the probe might look like:

RFID Reading Field Visualizing Probe Sketch
RFID Reading Field Visualizing Probe Sketch

This design is currently pending a prototype. I’m gonna be working on it as of next week. I’ll update this post accordingly.

I will choose one of these 2 paths:

  1. Develop a mobile application and embed the missing modules to a smart phone and have the application do all the logic.
  2. Implement the probe using an open source controller (Arduino and the likes). I’m sure I will not need much processing power on the Probe level since all the work will be done by the controlling pc.

Potential Value:

Since this is a side project, I will neglect all business value of this project and focus on the personal educational benefit; maybe some student, researcher might find value in this work as well. I have not yet done my homework with regard to looking for off the shelf solutions; I am going to work on it either way, even if some argue that I’ll be re-inventing the wheel.



First Post: Processing language… w00t w00t!

Processing 1.2
Processing 1.2

I thought for quite a while about my first post, and instead of wasting useful space, I’ll cut right to the chase and talk about a fairly young language called Processing.

To be honest it’s not that young, it’s been around since 2001 (according to their website). However compared to other languages, it’s a new born.

According to processing.org

“Processing was Initially created to serve as a software sketchbook and to teach fundamentals of computer programming within a visual context, Processing quickly developed into a tool for creating finished professional work as well.”

I couldn’t agree more. Processing is a solid language with a very decent and user friendly interface that will allow you to visualize what was once an idea or a thought. It will provide you with all the tools to create advanced animations, algorithm visualizations and sick graphics. In addition, Processing comes with a set of libraries (OpenGL, Minim, PDF, Network, etc…) thus increasing extendability and convenience.

Not only they have a very comprehensive online reference, an active community, they also have many very well written books discussing the implementation of multiple algorithms with this language.

I have picked the best 3 to get you started:

  1. Getting Started with Processing : this a simple book discussing the basics that will get you started with processing. It’s written to be a basic guide for beginners. Many examples are discussed thoroughly and before you know it you’ll be doing your first simple animation.
  2. Processing: A Programming Handbook for Visual Designers and Artists : I fell in love with the complexity of this book. If you’re a beginner in programming, this book is not for you. The discussion of algorithms in this book is very thorough and enjoyable. “The majority of the book is divided into tutorial units discussing specific elements of software and how they relate to the arts.”
  3. Algorithms for Visual Design Using the Processing Language : This is my favorite one. I love it because it provides you with generic code and algorithms which you can use to experiment on your own. It provides you with the building blocks for your own code and gives you an insight on the best practices of visual programing.

It’s only been a week since I started experimenting with this very powerful language and so you don’t get bored I attached to this post some images of what I’ve came up with so far. Oh and have I told you that processing is open source? I will share the code for these examples in later posts. With these pictures below, I conclude my first post.

Thank you,

• Bassem

Note: Click on the thumbnails to enlarge.

Game of Life
Game of Life - John Conway

Processing function plotting
Sin() Cos() functions plotting
Elimination algorithm in processing
Elimination Algorithm implementation
Elastic-Collision algorithms
Elastic-Collision implementation