Giter VIP home page Giter VIP logo

goodtag's Introduction

GoodTag

Howdy y'all!

For a long while I've been interested in the RF430FRL152H, which is a passive RFID tag for 13.56 MHz built around an MSP430 microcontroller. As few open source examples were available, I found myself first building a development kit

In this repository, and its wiki, you will find examples and documentation for programming this fine chip, as well as CAD for hardware boards that use the chip. This should help you build your own NFC Type V (ISO 15693) sensor tags, or to emulate existing ones.

This project cannot implement ISO 7816 or ISO 14443 interfaces of older NFC tags. For that, you probably need a board designed around the LPC8N04 or some other microcontroller.

It has partial support for the RF430TAL152H chip found in some medical devices, written as part of a research project with Axelle Apvrille, which we presented as The Inner Guts of a Connected Glucose Sensor for Diabetes at BlackAlps 2019.

73 from Yverdon les Bains,

--Travis Goodspeed

GoodTag11 PCB

Getting Started

See the GettingStarted page of the wiki for details on how to begin. You will need an assembled board, a Linux shell account, and a recent Android phone, such as the Pixel 3.

Toolchain

The C examples in this project must be compiled with TI's branch of GCC for MSP430. We sadly cannot be compatible with the GCC4 branch shipped with Debian because the function calling conventions are incompatible with the mask ROM. You will need both the toolchain and its support files.

See my GoodV project for an example Android app that communicates with the chip over NfcV. It can write firmware to the tags in the TI-TXT format, as well as dump their existing contents.

For convenient programming from Linux, the GreatFET Hydrangea board ought to be handy. We'll tie it into the Makefile once that project is functional.

Documentation

An extensive goodtag wiki covers such nifty topics as the RF430FRL152H chip, the contents of its ROM, and the use of its brother, the otherwise undocumented RF430TAL152H.

Axelle Apvrille and Travis Goodspeed presented The Inner Guts of a Connected Glucose Sensor at BlackAlps 2019, describing a medical sensor that uses the RF430TAL152H.

Firmware

In the firmware/ directory, you will be find a few example projects. Most of them are designed to compile as patches to the ROM, hooking NFC commands rather than being called through the RESET vector, so it's important to remember that global and static variables will not be initialized.

You will probably want to start with hello.c and then add your own vendor extension commands. gcmemu.c is an unfinished emulator for a commercial glucose sensor tag, and ndef.c is an NFC business card in the NDEF format, which can be read by the Decode app on an iPhone.

Unlike large applications in which multiple modules are linked together, this project is organized as individually executable modules that share no code with one another. This is considered necessary, given the pitiful amounts of FRAM code memory.

Shellcode

In the shellcode/ directory, you will find short examples of code that can be run ephemerally from SRAM, without permanent changes to the target. See the Shellcode page of the wiki for a more detailed explanation.

Hardware Designs

For development, I began by using the RF430FRL152HEVM and RF430-TMPSNS-EVM kits from Texas Instruments.

As these are now in short supply, I've designed the GoodTag11 in Kicad as my own development kit. Expect future designs in this series.

Related Projects

GoodV is an Android app for interacting with RF430FRL152H devices. You will probably develop first with JTAG and then use this to flash your code from a handy phone.

The GoodTag Wiki contains plenty of documentation about the RF430FRL152H and related chips.

goodtag's People

Contributors

travisgoodspeed avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

goodtag's Issues

License Question

Hey @travisgoodspeed, I had a few goodtag11 boards made up to evaluate the RF430FRL152H. I also forked GoodV and updated it a bit. Would you have an issue with me putting up my extra boards for sale and publishing GoodV in the Play Store? I didn't see any license information in the repos.

Thanks,
Nick

GoodV Publication

Close this issue when the source for the GoodV app has been published. This might take a few days.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.