How can i read CID via SPI

I would use a byte pointer:

  cid_t CID;
  card.readCID(&CID);

  byte * bp = (byte *) &CID;
  for (int i=0; i < sizeof CID; i++)
  {
    if (bp[i] < 0x10)
      Serial.print('0'); // supply leading zero
    Serial.print(bp[i], HEX);
  }
  Serial.println();
2 Likes