#1 2016-01-03 14:21:50

Йожэг
Учасник
Зареєстрований: 2015-12-30
Повідомлень: 97

Тестовый скетч для RFID модуля RDM6300 125кГц

Обнаружил, что у меня в домофоне подъезда стоит точно такая же система RFID, как и у продающегося тут модуля RFID RDM6300 125кГц. Взял поиграться, нагуглил примеры, а они или устаревшие, или странные и с ошибками, или сложные.
Надо ж добавить свои 5 копеек!

// Arduino test sketch for http://arduino-ua.com/prod259-125Khz_RFID_modyl_RDM6300
#include <SoftwareSerial.h>
#define STX 2
#define ETX 3

SoftwareSerial softSerial(10, 11); // recommended pins for RX on Mega: 10, 11, 12...
int rx_counter;
byte rx_data[14]; // 1+10+2+1

void setup() {
  rx_counter = 0; // init counter
  Serial.begin(9600);
  softSerial.begin(9600);
}

void loop() {
  if (softSerial.available() > 0) {
    rx_data[rx_counter] = softSerial.read();
    if (rx_counter == 0 && rx_data[0] != STX) {
      Serial.println("Out of sync!"); // do not increment rx_counter
    } else {
      rx_counter++;
    }
    if (rx_counter >= 14) {
      rx_counter = 0; // reset counter
      if (rx_data[0] == STX && rx_data[13] == ETX) { // packet starts with STX and ends with ETX
        byte calc_checksum = 0;
        for (int i = 0; i < 6; i++) { // data with checksum
          calc_checksum ^= ascii_char_to_num(rx_data[i*2+1]) * 16 + ascii_char_to_num(rx_data[i*2+2]);
        }
        if (calc_checksum == 0) {
          Serial.print("ID: ");
          for (int i = 1; i <= 10; i++) {
            Serial.write(rx_data[i]);
          }
          Serial.println();
        } else {
          Serial.println("Checksum ERROR!");
        }
      } else {
          Serial.println("Incorrect packet!");
      }
    } 
  }
}

// convert a single hex character to its byte value using ASCII table (see https://ru.wikipedia.org/wiki/ASCII)
byte ascii_char_to_num(byte a) {
  a -= '0'; // 0..9
  if (a > 9) a -= 7; // A..F
  return a;
} 

Arduino и RFID RDM6300

Неактивний

#2 2016-02-14 16:16:51

Green
Учасник
Зареєстрований: 2015-11-08
Повідомлень: 593

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

Судя по описанию там есть UART выход.
Тогда подключаешь RXD к выходу модуля на 9600 и вперёд. А ТХD пущай выводит на экран. Ага?

Неактивний

#3 2017-03-19 05:50:20

DoberMann
Гість

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

А как при данного модуля клонировать карту или ключ? Весь интернет перерыл - найти не могу.

#4 2017-03-19 13:01:55

Ёшкин кот
Гість

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

Этот модуль же для чтения меток. Если надо записывать, то это другой покупать девайс придётся (гуглить по словам rfid 125khz duplicator).

#5 2017-12-05 10:25:24

lv333
Учасник
Зареєстрований: 2017-12-05
Повідомлень: 1

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

Подскажите пожалуйста, с помощью такого модуля можно если не скопировать, то эмулировать карточку - т.е. просто "пропищать" в эфир некий ИД? И вообще где можно посмотреть команды которые можно передавать этому модулю? Там же не просто так и TX и RX линии есть? smile

Неактивний

#6 2017-12-27 15:58:17

kolondrej
Гість

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

Этот модуль передает только ID карты. Если хотите бОльшего, то посмотрите HTRC110 и даташит на него. А заодно и протоколы того, что хотите прочитать.

#7 2018-01-01 02:02:28

Олег_1
Гість

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

Здравствуйте. Собрал схему и загрузил программу, которую опубликовал Йожэгг.  У меня номер написанный на карте не соответствует номеру в мониторе порта. Подскажите: как его можно прочитать?

#8 2018-01-09 20:26:17

kost286
Гість

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

Кстати когда я делал самодельный приёмник (катушка,2 транзистора передатчика,приёмник на оу lm358 и мк attiny13), то номер на карте тоже не соответствовал,но с разных карт он был стабильним,каждой свой номер. И я тогда тоже не смог добиться что бы он соответствовал написанному.

#9 2018-01-14 12:00:06

Йожэг
Учасник
Зареєстрований: 2015-12-30
Повідомлень: 97

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

kost286 пише:

тоже не смог добиться что бы он соответствовал написанному.

Покажите примеры надписей на карточке и от считывателя.

Переданный код в шестнадцатеричном формате: 2C 0077 55A2. Если разбить его на три группы, то получим: 2C, 0077 (десятичное значение 119), 55A2 (десятичное значение 21922), что соответствует номеру на RFID карте 119,21922.

Это же число, напечатаное на карте в десятичной форме – 0007820706, соответствует 7755A2 (HEX). Константа 2C передается всеми картами этой системы – идентификатор RFID системы. Именно указанное число в десятичной форме (0007820706) потребуется нам для эмуляции RFID ключа.

Последние данные, передаваемые картой – это контрольная сумма, которая позволит убедиться, что все данные были получены.

Это цитата из http://www.rlocman.ru/shem/schematics.html?di=113001


PS: На Arduino даже можно сделать RFID метку с нужным кодом: https://toschprod.wordpress.com/2013/08/05/rfid-spoofer/

Неактивний

#10 2018-01-26 11:18:05

oberon
Гість

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

Вопрос к тем кто уже пользовался данным модулем. Соответствует чувствительность (15см) заявленной производителем? Будет срабатывать считыватель через металическую пластину, если да, то насколько упадет чувствительность(до скольки см)?

#11 2018-01-27 00:55:43

Йожэг
Учасник
Зареєстрований: 2015-12-30
Повідомлень: 97

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

oberon пише:

Вопрос к тем кто уже пользовался данным модулем. Соответствует чувствительность (15см) заявленной производителем?

Не 15 см, а 15 мм точно работает. По крайней мере с комплектной антенной. Предел дальности срабатывания моего модуля -- 3 см с копейками. Домофон подъезда срабатывает ещё хуже smile

oberon пише:

Будет срабатывать считыватель через металическую пластину, если да, то насколько упадет чувствительность(до скольки см)?

Через тонкую медь на стеклотекстолите не работает, через стальную крышку от коробки конфет тоже не хочет от слова совсем. Зато через ДСП столешницы и пластик -- без проблем. Тестовый стенд на фото:

vVGOaoY.jpg

Неактивний

#12 2018-01-27 09:16:45

oberon
Гість

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

Спасибо  за исчерпывающий ответ. Еще вопрос, какое максимальное расстояние срабатывание на карточку, брелок и конкретно какая модэль RFID ?

#13 2018-01-27 17:51:42

Йожэг
Учасник
Зареєстрований: 2015-12-30
Повідомлень: 97

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

Карточка-пропуск с работы в "идеальных" условиях начинает срабатывать с расстояния 6 см. Маленькие брелки-токены (на фото выше) срабатывают, как я уже писал, с 3 см. Жёлтый брелок я брал на местном сайте http://arduino.ua/prod281-RFID_brelok, остальные я не выбирал, мне их дали.

Неактивний

#14 2019-01-15 14:56:08

АлексейПро
Гість

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

Помогите.
Запустил счетч от Йожэга.
Во номер карты при стандартном считывании 0x02, 0x30, 0x42, 0x30, 0x30, 0x34, 0x39, 0x43, 0x37, 0x44, 0x43, 0x35, 0x39, 0x03
Во так выдает номер скетч Йожэга - 0B0049C7DC
Вот так она определяется через считываетль в виндовс программе  - 07351164
Ка мне получить такой же номер как и в виндовс программе?

#15 2019-01-15 20:51:18

Gость
Гість

Re: Тестовый скетч для RFID модуля RDM6300 125кГц

АлексейПро пише:

Во так выдает номер скетч Йожэга - 0B0049C7DC
Вот так она определяется через считываетль в виндовс программе  - 07351164

Там же выше Йожэг цититрует rlocman. Берём выдачу и делим на три части: 0B 0049 C7DC. Первая часть означает что-то типа класса карточки -- 0B. А вторую и третью частьи (0049 и C7DC) переводим в десятичную форму, получая "73,51164" -- вот это обычно прямо и пишут на пластиковых карточках. Ваш же считыватель в виндовс "сократил" запятую, добавил ведущий нолик и получилось "07351164".
Всё просто)

Швидке повідомлення

Введіть повідомлення і натисніть Надіслати

Підвал форуму