I went to upload my sketch (see below) for the MFRC522 to the UNO R3 on my chromeOS chromebook but I keep getting these error messages.
ERROR CODE
/usr/local/bin/arduino-cli compile --fqbn arduino:avr:uno --build-cache-path /tmp --output-dir /tmp/2226048840/build --build-path /tmp/arduino-build-DC19FE70F4113185265B477A0A61F183 --library /mnt/create-efs/webide/65/e5/65e523c25be7ae3682a5232c0d63e290:cool_cat3275/libraries_v2/MFRC522 /tmp/2226048840/rfid_read_personal_data_-UPDATED-
/tmp/ccSpl5kV.ltrans0.ltrans.o: In function global constructors keyed to 65535_0_rfid_read_personal_data__UPDATED_.ino.cpp.o.1828': <artificial>:(.text.startup+0x60): undefined reference to MFRC522::MFRC522(unsigned char, unsigned char)'
/tmp/ccSpl5kV.ltrans0.ltrans.o: In function setup': /tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:40: undefined reference to MFRC522::PCD_Init()'
/tmp/ccSpl5kV.ltrans0.ltrans.o: In function loop': /tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:59: undefined reference to MFRC522::PICC_IsNewCardPresent()'
/tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:64: undefined reference to MFRC522::PICC_ReadCardSerial()' /tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:72: undefined reference to MFRC522::PICC_DumpDetailsToSerial(MFRC522::Uid*)'
/tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:85: undefined reference to MFRC522::PCD_Authenticate(unsigned char, unsigned char, MFRC522::MIFARE_Key*, MFRC522::Uid*)' /tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:92: undefined reference to MFRC522::MIFARE_Read(unsigned char, unsigned char*, unsigned char*)'
/tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:114: undefined reference to MFRC522::PCD_Authenticate(unsigned char, unsigned char, MFRC522::MIFARE_Key*, MFRC522::Uid*)' /tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:121: undefined reference to MFRC522::MIFARE_Read(unsigned char, unsigned char*, unsigned char*)'
/tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:141: undefined reference to MFRC522::PCD_Authenticate(unsigned char, unsigned char, MFRC522::MIFARE_Key*, MFRC522::Uid*)' /tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:148: undefined reference to MFRC522::MIFARE_Read(unsigned char, unsigned char*, unsigned char*)'
/tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:151: undefined reference to MFRC522::GetStatusCodeName(MFRC522::StatusCode)' /tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:172: undefined reference to MFRC522::PICC_HaltA()'
/tmp/2226048840/rfid_read_personal_data_-UPDATED-/rfid_read_personal_data_-UPDATED-.ino:173: undefined reference to `MFRC522::PCD_StopCrypto1()'
collect2: error: ld returned 1 exit status
Multiple libraries were found for "SPI.h"
Used: /home/builder/.arduino15/packages/arduino/hardware/avr/1.8.6/libraries/SPI
Not used: /home/builder/opt/libraries/eventethernet_1_0_0
Multiple libraries were found for "MFRC522.h"
Used: /mnt/create-efs/webide/65/e5/65e523c25be7ae3682a5232c0d63e290:cool_cat3275/libraries_v2/MFRC522
Not used: /home/builder/opt/libraries/mfrc522_pn512_1_4_12
Not used: /home/builder/opt/libraries/mfrc522_spi_i2c_uart_async_1_5_1
Not used: /home/builder/opt/libraries/mfrc522_1_4_11
Error during build: exit status 1
Code
#include <MFRC522.h>
#include <MFRC522Extended.h>
#include <deprecated.h>
#include <require_cpp11.h>
/*
- Initial Author: ryand1011 (ryand1011 (Ryan Diaz) · GitHub)
- Reads data written by a program such as "rfid_write_personal_data.ino"
- See: rfid/examples/rfid_write_personal_data at master · miguelbalboa/rfid · GitHub
- Uses MIFARE RFID card using RFID-RC522 reader
- Uses MFRC522 - Library
-
-
MFRC522 Arduino Arduino Arduino Arduino Arduino -
Reader/PCD Uno/101 Mega Nano v3 Leonardo/Micro Pro Micro - Signal Pin Pin Pin Pin Pin Pin
-
- RST/Reset RST 9 5 D9 RESET/ICSP-5 RST
- SPI SS SDA(SS) 10 53 D10 10 10
- SPI MOSI MOSI 11 / ICSP-4 51 D11 ICSP-4 16
- SPI MISO MISO 12 / ICSP-1 50 D12 ICSP-1 14
- SPI SCK SCK 13 / ICSP-3 52 D13 ICSP-3 15
- More pin layouts for other boards can be found here: GitHub - miguelbalboa/rfid: Arduino RFID Library for MFRC522
*/
#include <SPI.h>
int RST_PIN = 9; // Configurable, see typical pin layout above
int SS_PIN = 10; // Configurable, see typical pin layout above
MFRC522 mfrc522(SS_PIN, RST_PIN); // Create MFRC522 instance
//*****************************************************************************************//
void setup() {
Serial.begin(9600); // Initialize serial communications with the PC
SPI.begin(); // Init SPI bus
mfrc522.PCD_Init(); // Init MFRC522 card
Serial.println(F("Read personal data on a MIFARE PICC:")); //shows in serial that it is ready to read
}
//*****************************************************************************************//
void loop() {
// Prepare key - all keys are set to FFFFFFFFFFFFh at chip delivery from the factory.
MFRC522::MIFARE_Key key;
for (byte i = 0; i < 6; i++) key.keyByte[i] = 0xFF;
//some variables we need
byte block;
byte len;
MFRC522::StatusCode status;
//-------------------------------------------
// Reset the loop if no new card present on the sensor/reader. This saves the entire process when idle.
if ( ! mfrc522.PICC_IsNewCardPresent()) {
return;
}
// Select one of the cards
if ( ! mfrc522.PICC_ReadCardSerial()) {
return;
}
Serial.println(F("Card Detected:"));
//-------------------------------------------
mfrc522.PICC_DumpDetailsToSerial(&(mfrc522.uid)); //dump some details about the card
//mfrc522.PICC_DumpToSerial(&(mfrc522.uid)); //uncomment this to see all blocks in hex
//-------------------------------------------
Serial.print(F("Name: "));
byte buffer1[18];
block = 4;
len = 18;
//------------------------------------------- GET FIRST NAME
status = mfrc522.PCD_Authenticate(MFRC522::PICC_CMD_MF_AUTH_KEY_A, 4, &key, &(mfrc522.uid)); //line 834 of MFRC522.cpp file
if (status != MFRC522::STATUS_OK) {
Serial.print(F("Authentication failed: "));
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
status = mfrc522.MIFARE_Read(block, buffer1, &len);
if (status != MFRC522::STATUS_OK) {
Serial.print(F("Reading failed: "));
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
//PRINT FIRST NAME
for (uint8_t i = 0; i < 16; i++)
{
if (buffer1[i] != 32)
{
Serial.write(buffer1[i]);
}
}
Serial.print(" ");
//---------------------------------------- GET LAST NAME
byte buffer2[18];
block = 1;
status = mfrc522.PCD_Authenticate(MFRC522::PICC_CMD_MF_AUTH_KEY_A, 1, &key, &mfrc522.uid); //line 834
if (status != MFRC522::STATUS_OK) {
Serial.print(F("Authentication failed: "));
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
status = mfrc522.MIFARE_Read(block, buffer2, &len);
if (status != MFRC522::STATUS_OK) {
Serial.print(F("Reading failed: "));
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
//PRINT LAST NAME
for (uint8_t i = 0; i < 16; i++) {
Serial.write(buffer2[i] );
}
Serial.print("\n");
byte buffer3[18];
block = 5;
len = 18;
//------------------------------------------- GET AGE
status = mfrc522.PCD_Authenticate(MFRC522::PICC_CMD_MF_AUTH_KEY_A, 4, &key, &(mfrc522.uid)); //line 834 of MFRC522.cpp file
if (status != MFRC522::STATUS_OK) {
Serial.print(F("Authentication failed: "));
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
status = mfrc522.MIFARE_Read(block, buffer3, &len);
if (status != MFRC522::STATUS_OK) {
Serial.print(F("Reading failed: "));
Serial.println(mfrc522.GetStatusCodeName(status));
return;
}
//PRINT AGE
for (uint8_t i = 0; i < 16; i++)
{
if (buffer3[i] != 32)
{
Serial.write(buffer3[i]);
}
}
Serial.print(" ");
//----------------------------------------
//----------------------------------------
Serial.println(F("\nEnd Reading\n"));
delay(1000); //change value if you want to read cards faster
mfrc522.PICC_HaltA();
mfrc522.PCD_StopCrypto1();
}
//*****************************************************************************************//
I'm sorry but I can't print it in code format.