I have published my written thesis on the Grin Verlag (Publishing Company).

ISBN: 978-3-656-49446-1

232570_0
Read the rest of this entry »

This is the final prototype of the Tesla User Interface. It was developed during the time of my diploma thesis in media computer science at the Ludwig-Maximilian University of Munich. Thanks go out to my supervisor Aurélien Tabard for a helping with this setup.

The wireless and batteryless control widgets are regular Mifare Classic 1k protocol RFID ICs by NXP Semiconductors, that have been enhanced with mechanical control element functionalities, like button, slider or rotary switch.

Few Words about the Reader Setup:

TUI-ReaderScheme

Under the white plate an Arduino is connected to two SM130 reader modules. Via two dual 4-channel analogue multiplexer/demultiplexer each of the modules itself is connected to two antennas like it can be seen in the figure above. The communication naturally proceeds through the modules. The Arduino directly controls the multiplexer, by applying a current to the multplexer’s address pins in the right way. Furthermore each module has a status LED that tells if it is ready and one LED indicating when an ID read event occurred. The detected ID information is delegated over the serial connection to the Arduino and from there further to the PC and the Processing software. This means that three serial communication connections have to be handled by the Arduino, what demands an equal baud rate. Therefore the maximum baud rate is determined by the maximum baud rate of the slowest component in the setup. And finally a picture of the wiring:

100_0391

Starting to program microcontrollers in assembler is quite a barrier in the beginning. Searching the web for Assembler tutorials and example code can get confusing really fast, that’s why I want to share my experiences and provide a collection of links that helped me to get started with this topic.

First of all three important differences derive from the three major microcontroller companies: Microchip, Atmel and ARM. Good introduction to Microcontrollers (also for the difference of PIC and AVR) and also this basic Introduction into Assembly Language and a Assembler Hello World ASM Example are worth having a look.

Further there are ways to convert C code to Assembler code, to optimize C code for AVR microcontrollers by Atmel and ways to mix these languages together: Mixing C and Assembly, Atmel tutorial for Mixing C and Assembly

The difference between the .asm and .S file extensions for the assembler code files is not really clear, but this messageboard thread about the file extensions difference of .ASM and .S helped a little bit. Two examples for .S-files can be found with a Linker Script commands for S-code blink example and another S-code blink example. More infos on Linker Scripts here.

Besides the instruction sets and specific libraries for the microcontrollers it is important to understand how the GNU GCC Compiler works. For example does it use the GNU Binutils for i.a. compile command objcopy etc. Here can also be found some compile commands for my AVRFID example.

If you find anything wrong in this collection of informations on microcontroller programming, I would be happy for a comment. I wanted to sum up and share my search results here and maybe it helps other people to get faster into it!?

In order to use an ATtiny85 as an AVRFID, it is necessary to know the exact inner workings of these microcontrollers.

attiny85_pins

For I/O-operations the pins (2=PB3, 3=PB4, 5=PB0, 6=PB1, 7=PB2) can be used. The configuration of the ports is affected by the three 8-bit registers PORTB (data register), DDRB (data direction register) and PINB (port input pins):

Read the rest of this entry »

One more time a discription of serial communication between an Arduino and a Processing sketch. But this time the important steps in making up a serial connection between an random serial device to the Arduino, which itself has a another serial communication to the pc running a Processing programm.

Read the rest of this entry »

Digging deeper into the different aspects of the RFID technology, I started to get lost with details of protocols and data sheets. The search for RFID taxonomies, which helped me understanding the big picture did not exist. I found three older and smaller taxonomies on specific areas on the RFID technology or certain perspectives on it:

  1. A Multi-agent Architecture for RFID Taxonomy” by Son Le, Xu Huang, and Dharmendra Sharma (2007)
  2. Taxonomy and survey of RFID anti-collision protocols” by Dong-Her Shih, Po-Ling Sun, David C. Yen and Shi-Ming Huang (2006)
  3. A Taxonomy for RFID” by Taimur Hassan and Samir Chatterjee (2006)

But it seemed quite incomplete for the current state of the art of RFID, so I took those three and many other scientific facts (1, 2, 3, 4, 5, 6) I have gathered over time and tried to complement it, to give an up-to-date overview about this field. In order to cope with the many aspects and dependencies of RFID in terms of ubiquious computing and new user interaction possibilities it is really important to understand the big picture (click onto the image to get the whole big overview!):

RFID Taxonomy_overview

Creative Commons Lizenzvertrag
The 2013 RFID Taxonomy by Dario Soller is under the Creative Commons Attribution – Noncommercial – Share-alike 3.0 Unported License.

To me it seems pretty complete for January 2013, but it does not claim to be complete at all. RFID will continue to be a fast developping technology, especially in the near future, so feel free to expand and update this mind map and leave a comment, if you find any kind of wrong classification or you think there is something important missing. Here is the original mind map file (done with Xmind).

Another important part is the special RFID ISO/OSI Layer approach by Son Le et al.. Even though they have a little too much of this business perspective to it. In my opinion it is too early for this kind of business service view on RFID because of the many technological barriers which still have to be overcome. But from the view of communication engineering an own RFID OSI layer model would be really promising in finally getting RFID ubiquitous for everyone:

RFID OSI Layers

My 2013 RFID taxonomy doesn’t exactly represent these proposed RFID OSI Layers anymore, but it’s still an integral part of it. One simply has to leave the nodes Development, User Interaction, Security and Protocols away. The Physical and the Communication layers are very closed coupled and a bit overlapping as one can see on a closer look on the 2013 RFID taxonomy.

Good work by Melanie Rieback, an Assistant Professor of Computer Science at the Vrije Universiteit in Amsterdam in the field of RFID security. Among other things I found a nice presentation about the security of ubiquitous computing with RFID in the spot light. Further more a podcast about RFID malware and a video of a presentation at the LIFT09 Conference (unfortunately with the french translation).

First of all I emphasize that unfortunately none the following attempts of reprogramming fused AVRs was successful in my case. Therefore this is more a personal documentation of what did not work, rather than a tutorial on how to get AVRs reprogrammed.

The general problem is, that once the fuse bits of an AVR are set to except an external clock source, the AVRs can in theory only be reprogrammed when they have that external clock source during the reprogramming process as well. In practice it is much more complicated.

Read the rest of this entry »

I have several bigger posts in the making, but for now just another possible scenario I stumbled over. The health status of Australian firefighters are monitored by some data-transmitting pills. It isn’t really explained on which technology this relies on, but it stills seems to be a nice scenario where enhanced RFID tags could play a role!?

Latest example of action figures using RFID/NFC to be represented with in a videogame. Will be probably a big merchandise enhancer for Disney, cause you really have to buy extra features for your video game in terms of these exisiting objects. I don’t know if the position of the body Parts can also be recognized and represented in the virtual game!? We will see…

Seems that nearly every week there is something announced about action figures using RFID technology. Just stumbled over the news that Activision has a Toys to Life series with the Skylanders Swap Force being the latest crossplatform, that allows in-game avatar representations of the toys plus storing unique information in the toys.