• Tue 2017.01.24
    Would any viewer that has hands-on experience with a KeyeStudio board please chime in.

    A quick thank you to those that just responded. A wealth of detailed information has been presented and it is all welcomed.

    Life's challenges have just gotten in the way of living life and I'll need a bit of time before I can respond to each post response in detail. Those explanations will get me started, and in the mean time . . . .

    I picked up a high quality RFID card, (would MIFARE be more politically correct as the RC522 chip is a subset of RFID?) and found some surprising detection characteristics. Unlike the security card readers for building access, the scanning technique for KeyeStudio is quite different. Most readers I have encountered needed to be swiped across around an inch or so above the surface, holding the card relatively flat. This KeyeStudio reader required a bit of fiddling to get consistent detection. I discovered the need to approach the antenna at a 45 degree angle, with the card at a 90 degree plane, then remove the card a quarter of an inch above to get the actual trigger as seen by the Pico tutorial software sample. Not sure if this was the intended method and how it was designed, but it seems to be the only way to get a consistent trigger detection event.

    Anyone able to add their swipe surprises if that different than what I described above?

    I also tried several different setInterval() settings around the ' nfc.findCards(function(card) ' wrapper and noticed I could get the consistent detection I described previously. The problem is that the detection now triggers a 255 error code as indicated earlier, or the 'Found Card' text response, but without the variable 'card' containing any data. I tried a quick fiddle with that section, with no success.

    As I dive into the overriding of existing functions, what would be a good place to start in attempting to determine why the 'card' variable never contains any data?

    Also related, any ideas on how/where to look for the culprit that is causing the 255 error at the lines inside the req() function?

    var err = this.r(R.ERROR);
      if (err) throw new Error("MFRC522 Request Error "+err);
    

    The callback getCardSerial() calls req() so I guess both need to be inspected.

    Still studying the module and trying to understand this black box. Along with the data sheet, this is proving to be a bit intimidating. I'll imagine I'll make further progress by the time this is read overseas tomorrow. More later . . . .

About

Avatar for Robin @Robin started