From 83a40b370a40117783fbcb1fdf90974f2ad1547a Mon Sep 17 00:00:00 2001 From: bthedorff <32941719+bthedorff@users.noreply.github.com> Date: Mon, 17 Jan 2022 22:29:26 -0500 Subject: [PATCH] Update wiegand_formats.c I swear I tested it after my last change and it worked.... but now it isn't so I must have made an error somewhere. It is back to sites programming and is working --- client/src/wiegand_formats.c | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/client/src/wiegand_formats.c b/client/src/wiegand_formats.c index 0b65e5860..08e77b9a1 100644 --- a/client/src/wiegand_formats.c +++ b/client/src/wiegand_formats.c @@ -780,8 +780,8 @@ static bool Pack_P10004(wiegand_card_t *card, wiegand_message_t *packed, bool pr packed->Length = 37; // Set number of bits - set_linear_field(packed, card->FacilityCode, 2, 13); - set_linear_field(packed, card->CardNumber, 15, 18); + set_linear_field(packed, card->FacilityCode, 1, 13); + set_linear_field(packed, card->CardNumber, 14, 18); set_bit_by_position(packed, evenparity32(get_linear_field(packed, 1, 18)), 0); set_bit_by_position(packed, oddparity32(get_linear_field(packed, 18, 18)), 36); @@ -795,8 +795,8 @@ static bool Unpack_P10004(wiegand_message_t *packed, wiegand_card_t *card) { if (packed->Length != 37) return false; // Wrong length? Stop here. - card->FacilityCode = get_linear_field(packed, 2, 13); - card->CardNumber = get_linear_field(packed, 15, 18); + card->FacilityCode = get_linear_field(packed, 1, 13); + card->CardNumber = get_linear_field(packed, 14, 18); card->ParityValid = (get_bit_by_position(packed, 0) == evenparity32(get_linear_field(packed, 1, 18))) && (get_bit_by_position(packed, 36) == oddparity32(get_linear_field(packed, 18, 18)));