Skip to content

Technik Blog

Programmieren | Arduino | ESP32 | MicroPython | Python | Raspberry Pi | Raspberry Pi Pico

Menu
  • Smarthome
  • Gartenautomation
  • Arduino
  • ESP32 & Co.
  • Raspberry Pi & Pico
  • Solo Mining
  • Deutsch
  • English
Menu

RFID UNIT am M5Stack ATOM Matrix mit UI Flow

Posted on 1. Februar 20218. März 2024 by Stefan Draeger

In diesem Beitrag möchte ich dir zeigen wie du die RFID UNIT am M5Stack ATOM Matrix programmieren kannst. Den kleinen Microcontroller M5Stack ATOM Matrix habe ich im Beitrag Programmieren des M5Stack ATOM Matrix mit UI Flow vorgestellt und auch gezeigt wie einfach du mit UI Flow programmieren kannst. Hier möchte ich dir nun zeigen wie du eine RFID Karte erkennst und darauf reagieren kannst.

M5Stack ATOM Matrix mit RFID UNIT

Die RFID UNIT kann nicht nur an den hier gezeigten M5Stack ATOM Matrix gesteckt werden, sondern auch an andere Mikrocontroller, welche über eine Grove Schnittstelle verfügt.

  • Bezug der RFID UNIT für den M5Stack
    • Lieferumfang
  • technische Daten der RFID UNIT
  • Programmieren der RFID UNIT mit UI Flow
    • einbinden der benötigten Bibliothek zum auslesen der RFID UNIT
    • auslesen der RFID Kartennummern
    • kleines Programm mit UI Flow zum prüfen einer RFID UID
      • Video
      • Download der *.m5f Datei
    • erweitertes Projekt mit einem Piezo Buzzer und eine Liste von UIDs
      • Zwischenschritt  – einen Ton ausgeben
        • Video
        • Download
      • eine Liste mit RFID UIDs prüfen
        • Programm
        • Video
        • Download

Bezug der RFID UNIT für den M5Stack

Das Modul habe ich über den offiziellen Shop auf aliexpress.com für knapp 5€ inkl. Versandkosten erstanden, die Lieferzeit war mit 3 Wochen zwar recht lange aber wenn man den Preis von 13€ auf ebay.de gegenüber setzt, lohnt sich das warten doch schon.

Lieferumfang

Zum Lieferumfang der RFID UNIT gehört neben dem RFID Sensor lediglich ein vierpoliges Anschlusskabel mit Grove Schnittstelle. Es fehlt somit wenigstens eine RFID Karte, mit welcher man sofort starten könnte.

Da ich diverse Arduino Starter Kits* habe, welche mit einem RFID Reader ausgestattet sind, habe ich ein paar RFID Karten & Schlüsselanhänger da und kann somit gleich loslegen. Passende RFID Karten zum Experimentieren findest du aber recht günstig auf ebay.de* für schon 2,64 € zzgl. Versandkosten.

Hinweis von mir: Die mit einem Sternchen (*) markierten Links sind Affiliate-Links. Wenn du über diese Links einkaufst, erhalte ich eine kleine Provision, die dazu beiträgt, diesen Blog zu unterstützen. Der Preis für dich bleibt dabei unverändert. Vielen Dank für deine Unterstützung!

Komischerweise habe ich mit der Sendung von HAT Sensoren / Aktoren für den M5StickC (diese folgen in separaten Beiträgen) eine RFID Karte geliefert bekommen.

RFID Tag & Karten
RFID Tag & Karten

technische Daten der RFID UNIT

Da wie bereits erwähnt die RFID UNIT über eine Grove Schnittstelle verfügt, hat dieser Sensor 4 Pins (SCL, SSDA, 5V, GND).

  • Betriebsspannung: 5V
  • Anschluss: Grove, I2C
  • Betriebsfrequenz: 13,56 MHz
  • unterstützte Protokolle: ISO14443A, MIFARE und NTAG
  • Abmaße (LxBxH): 47 mm x 25 mm x 8 mm

Programmieren der RFID UNIT mit UI Flow

Für den Sensor gibt es in der Software UI Flow  (Web / Offline IDE ) eine Möglichkeit des einfachen hinzufügen zum Code. Somit entfällt zumindest bei dieser Art der Programmierung die Suche nach einer passenden Bibliothek.

einbinden der benötigten Bibliothek zum auslesen der RFID UNIT

Wenn du die Anwendung UI Flow gestartet hast dann müssen wir zunächst die benötigte Bibliothek einbinden, dieses wir mit wenigen Klicks erledigt.

Als erstes müssen wir auf das große „+“ Zeichen links unten mit der Beschriftung „UNITS“ klicken (1) , danach öffnet sich ein neuer Dialog in welchem wir etwas nach unten scrollen müssen um dann auf der rechten Seite die UNIT „RFID“ markieren (2) und diese auswahl mit der Schaltfläche „OK“ (3) bestätigen.

Wenn die RFID UNIT erfolgreich hinzugefügt wurde, dann findest du unter dem Eintrag „Einheiten“ den Eintrag „RFID“.

UI Flow - Abschnitt Einheiten mit RFID

auslesen der RFID Kartennummern

Nachdem wir nun die Bibliothek eingebunden haben müssen wir erstmal die RFID Kartennummern auslesen damit wir diese in eine Liste übertragen können. Diese Liste ist später unsere „Whitelist“ für erlaubte RFIDs.

Das einfachste ist es diese UIDs mithilfe eines Arduino UNOs auszulesen wie du das machst habe ich dir im Beitrag Arduino Lektion 20 – Teil 1: RFID RC522 – Kartenleser ausführlich erläutert.

Arduino UNO mit RFID RC522
Arduino UNO mit RFID RC522

Das dort gezeigte Sketch zeigt dir die UIDs auf dem seriellen Monitor der Arduino IDE an.

ACHTUNG für das spätere Programm müssen die großen Buchstaben in kleine umgewandelt werden!

In meinem Fall habe ich nachfolgende die UIDs ausgelesen:

c6a3352b7b
b949e3b8ab
37fc943b64

kleines Programm mit UI Flow zum prüfen einer RFID UID

Zunächst wollen wir nur eine der UIDs prüfen und die anderen sollen abgelehnt werden.

UI Flow - einfaches Beispiel mit RFID UNIT
UI Flow – einfaches Beispiel mit RFID UNIT

Video

Download der *.m5f Datei

Hier nun der Download zum Programm:

Einfaches Beispiel mit der RFID UNIT am M5Stack ATOM MatrixHerunterladen

erweitertes Projekt mit einem Piezo Buzzer und eine Liste von UIDs

Nachdem wir nun die UIDs ermittelt und ein erstes Projekt mit der RFID UNIT erstellt haben, möchte ich dir zeigen wie du einen Piezo Buzzer zur akustischen Untermalung des Status und eine Liste mit UIDs implementieren kannst.

Für den Aufbau benötigen wir noch folgende zusätzliche Bauteile:

  • 1x Piezo Buzzer,
  • 2x Breadboardkabel, 10cm, männlich – männlich,
  • 1x Breadboard 170 Pin

Man kann natürlich auch den Piezo Buzzer mit mit entsprechenden Kabeln „versorgen“ und an den ATOM Matrix direkt anschließen, jedoch steht dieser dann nicht mehr gerade auf dem Tisch.

alternativer Anschluß des Piezo Buzzers
alternativer Anschluß des Piezo Buzzers

Zwischenschritt – einen Ton ausgeben

Wollen wir uns zunächst einmal anschauen wie man einen einfachen Ton ausgeben kann. 

Im ersten Schritt müssen wir uns ein PWM Signal auf einen Pin legen. Wir können ausgenommen die VCC & GND Pins jeden Pin für ein PWM Signal nutzen. In meinem Fall nutze ich den GPIO Pin 25. Die Frequenz definiert wie hoch bzw. tief der Ton ist, je höher der Wert desto höher ist der Ton. Das Tastverhältnis ist der Zeitliche Abstand zwischen zwei PWM Signale. Zum Schluss definieren wir einen Timer für das PWM Signal. Der Verbaute Chip hat 2 Timer welche wir verwenden können.

Damit der Buzzer nicht dauerhaft läuft müssen wir das PWM Signal „PWM0“  pausieren und nur aktivieren wenn wir einen Ton ausgeben wollen. Das machen wir im Bereich „setup“ bei der Initialisierung des Microcontrollers (beim Start).

Nachdem wir nun ein PWM Signal definiert und pausiert haben, starten wir eine Endlosschleife und prüfen in dieser Dauerhaft ob der Taster gedrückt wurde.
Wenn der Taster gedrückt wurde, wird die Funktion „makeBeep“ ausgeführt in welcher

  • das PWM Signal fortgesetzt,
  • eine kleine Pause eingelegt,
  • das PWM Signal pausiert

wird.

UI Flow - einen Ton ausgeben wenn der Taster betätigt wird
UI Flow – einen Ton ausgeben wenn der Taster betätigt wird
Video
Download

Hier nun das kleine Programm zum bequemen download.

einen einfachen Ton am M5Stack ATOM Matrix per Tastendruck ausgebenHerunterladen

eine Liste mit RFID UIDs prüfen

Im ersten Beispiel habe ich dir gezeigt wie wir mit einer einfachen If-Else-Bedingung einen RFID UID prüfen. Wenn wir jedoch mehr als eine UID haben bietet sich eine Liste an. Natürlich könnte man auch hier eine verschachtelte If-Else-Bedingung verwenden jedoch wird der Code dann schnell unübersichtlich und in UI Flow verdammt lang.
Nutzen wir also das Listen Element.

Programm
UI Flow - Programm zum prüfen mehrer RFID UIDsFI
UI Flow – Programm zum prüfen mehrer RFID UIDs
Video

In dem angezeigten Programm im Video habe ich den ersten Eintrag der Liste um die Zahl 1 am Ende erweitert, somit erkennt er die weiße RFID Karte nicht mehr und gibt somit ein rotes Kreuz und ein Signalton aus. Die andere Karte und der RFID Transponder werden korrekt erkannt.

Download

Hier jetzt das gesamte Programm zu download.

erweiterter Sketch zum prüfen einer RFID Karte inkl. Piezo BuzzerHerunterladen

Schreibe einen Kommentar Antworten abbrechen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert

Fragen oder Feedback?

Du hast eine Idee, brauchst Hilfe oder möchtest Feedback loswerden?
Support-Ticket erstellen

Newsletter abonnieren

Bleib auf dem Laufenden: Erhalte regelmäßig Updates zu neuen Projekten, Tutorials und Tipps rund um Arduino, ESP32 und mehr – direkt in dein Postfach.

Jetzt Newsletter abonnieren

Unterstütze meinen Blog

Wenn dir meine Inhalte gefallen, freue ich mich über deine Unterstützung auf Tipeee.
So hilfst du mit, den Blog am Leben zu halten und neue Beiträge zu ermöglichen.

draeger-it.blog auf Tipeee unterstützen

Vielen Dank für deinen Support!
– Stefan Draeger

Kategorien

Tools

  • Unix-Zeitstempel-Rechner
  • ASCII Tabelle
  • Spannung, Strom, Widerstand und Leistung berechnen
  • Widerstandsrechner
  • 8×8 LED Matrix Tool
  • 8×16 LED Matrix Modul von Keyestudio
  • 16×16 LED Matrix – Generator

Links

Blogverzeichnis Bloggerei.de TopBlogs.de das Original - Blogverzeichnis | Blog Top Liste Blogverzeichnis trusted-blogs.com

Stefan Draeger
Königsberger Str. 13
38364 Schöningen

Tel.: 01778501273
E-Mail: info@draeger-it.blog

Folge mir auf

  • Impressum
  • Datenschutzerklärung
  • Disclaimer
  • Cookie-Richtlinie (EU)
©2025 Technik Blog | Built using WordPress and Responsive Blogily theme by Superb
Cookie-Zustimmung verwalten
Wir verwenden Technologien wie Cookies, um Geräteinformationen zu speichern und/oder darauf zuzugreifen. Wir tun dies, um das Surferlebnis zu verbessern und um personalisierte Werbung anzuzeigen. Wenn Sie diesen Technologien zustimmen, können wir Daten wie das Surfverhalten oder eindeutige IDs auf dieser Website verarbeiten. Wenn Sie Ihre Zustimmung nicht erteilen oder zurückziehen, können bestimmte Funktionen beeinträchtigt werden.
Funktional Immer aktiv
Die technische Speicherung oder der Zugang ist unbedingt erforderlich für den rechtmäßigen Zweck, die Nutzung eines bestimmten Dienstes zu ermöglichen, der vom Teilnehmer oder Nutzer ausdrücklich gewünscht wird, oder für den alleinigen Zweck, die Übertragung einer Nachricht über ein elektronisches Kommunikationsnetz durchzuführen.
Vorlieben
Die technische Speicherung oder der Zugriff ist für den rechtmäßigen Zweck der Speicherung von Präferenzen erforderlich, die nicht vom Abonnenten oder Benutzer angefordert wurden.
Statistiken
Die technische Speicherung oder der Zugriff, der ausschließlich zu statistischen Zwecken erfolgt. Die technische Speicherung oder der Zugriff, der ausschließlich zu anonymen statistischen Zwecken verwendet wird. Ohne eine Vorladung, die freiwillige Zustimmung deines Internetdienstanbieters oder zusätzliche Aufzeichnungen von Dritten können die zu diesem Zweck gespeicherten oder abgerufenen Informationen allein in der Regel nicht dazu verwendet werden, dich zu identifizieren.
Marketing
Die technische Speicherung oder der Zugriff ist erforderlich, um Nutzerprofile zu erstellen, um Werbung zu versenden oder um den Nutzer auf einer Website oder über mehrere Websites hinweg zu ähnlichen Marketingzwecken zu verfolgen.
Optionen verwalten Dienste verwalten Verwalten von {vendor_count}-Lieferanten Lese mehr über diese Zwecke
Einstellungen anzeigen
{title} {title} {title}