pigpio: faulty (?) RFID-Readings with python pigpio

I’m reading RFID cards from Honeywell-Reader on a Pi3. Taking the wiegand.py example from the homepage as a start, i modified the data- and clock pin watchdogs (only on clock) and the callback functions. Works well. By the way, from inside one or more docker containers or directly on the host OS, which is Raspbian. But when stress-testing the function with many card-scans in succesion, after some correct readings, there will follow up some corrupted values - caused by tick-values coming from the clock pin that are too “long” or too “short”, triggering the watchdog on that pin too early or too late. When monitoring the readings with Piscope in parallel, i can see that the readings are correct, so the tick-values presented by the python package seem to be somehow corrupted. Is this a known limitation of the python implementation of pigpio or should it work as flawless as it runs in Piscope?

I’m using piscope pigpio 64.

Here some values to illustrate, the columns are: tick, ms since last tick, pin, data_level

547086377 547086377 17 1
547087582 1205 17 1
547088797 1215 17 1
547089937 1140 17 1
547091122 1185 17 1
547092268 1146 17 1
547093412 1144 17 1
547094553 1141 17 1
547095772 1219 17 1
547097007 1235 17 1
547098188 1181 17 1
547099329 1141 17 1
547100509 1180 17 1
547101653 1144 17 1
547102863 1210 17 1
547104003 1140 17 1
547105147 1144 17 1
547106287 1140 17 1
547107612 1325 17 1
547108707 1095 17 1
547109853 1146 17 1
547111044 1191 17 1
547118538 7494 17 2

The sequence should be 115 bit long, but it stops at the last callback with timeout on pin 17 (7,5 ms)

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 16 (9 by maintainers)

Most upvoted comments

Thanks for that. I’ll add it to the list of things to be looked at. It’s number 4 in the queue though so don’t expect a quick response.