Skip to content

Commit

Permalink
added value block operations
Browse files Browse the repository at this point in the history
  • Loading branch information
DavidBlore authored and Flowtter committed May 22, 2023
1 parent 13c6f5e commit 6228713
Show file tree
Hide file tree
Showing 2 changed files with 65 additions and 1 deletion.
61 changes: 60 additions & 1 deletion src/nfc.py
Original file line number Diff line number Diff line change
Expand Up @@ -140,7 +140,66 @@ def update_binary_blocks(self, block_number, number_of_byte_to_update, block_dat
Examples:
0x01, 0x10, [0x00, 0x01, 0x02, 0x03, 0x04, 0x05
0x07, 0x08, 0x09, 0x10, 0x11, 0x12, 0x13, 0x14, 0x15]"""
self.command("update_binary_blocks", [block_number, number_of_byte_to_update, block_data])
self.command("update_binary_blocks",[block_number, number_of_byte_to_update, block_data]
)

def create_value_block(self, block_number, value):
"""Create value block at given block number with given 4-byte signed long integer value
Attributes:
block number : 1 byte
value : 4 bytes, signed long integer
Example:
0x02, [0xFF, 0xFF, 0xFF, 0xFC] : 4 byte signed long integer value -4 at block 2
"""
self.command("create_value_block", [block_number, value])

def increment_value_block(self, block_number, value):
"""Increment value block at given block number with given 4-byte signed long integer value
Attributes:
block number : 1 byte
value : 4 bytes, signed long integer
Example:
0x02, [0x00, 0x00, 0x00, 0x01] : increment stored value at value block 2 by 1
"""
self.command("increment_value_block", [block_number, value])

def decrement_value_block(self, block_number, value):
"""Decrement value block at given block number with given 4byte signed long integer value
Attributes:
block number : 1 byte
value : 4 bytes, signed long integer
Example:
0x02, [0x00, 0x00, 0x00, 0x01] : decrement stored value at value block 2 by 1
"""
self.command("decrement_value_block", [block_number, value])

def read_value_block(self, block_number):
"""Read value block at given block number
Attributes:
block number : 1 byte (0-63)
Example:
0x01"""
return self.command("read_value_block", [block_number])

def restore_value_block(self, source_block_number, target_block_number):
"""Copies a value from a value block to another value block
Attributes:
source_block_number : 1 byte, source block number (0-63)
target_block_number : 1 byte, target block number (0-63)
Example:
0x01, 0x02"""
self.command("restore_value_block", [
source_block_number, target_block_number])

def led_control(self, led_state, t1, t2, number_of_repetition, link_to_buzzer):
"""control led state
Expand Down
5 changes: 5 additions & 0 deletions src/option.py
Original file line number Diff line number Diff line change
Expand Up @@ -5,6 +5,11 @@
"authentication": [0xFF, 0x88, 0x00, -1, -1, -1],
"read_binary_blocks": [0xFF, 0xB0, 0x00, -1, -1],
"update_binary_blocks": [0xFF, 0xD6, 0x00, -1, -1, -1],
"create_value_block": [0xFF, 0xD7, 0x00, -1, 0x05, 0x00, -1],
"increment_value_block": [0xFF, 0xD7, 0x00, -1, 0x05, 0x01, -1],
"decrement_value_block": [0xFF, 0xD7, 0x00, -1, 0x05, 0x02, -1],
"read_value_block": [0xFF, 0xB1, 0x00, -1, 0x04],
"restore_value_block": [0xFF, 0xD7, 0x00, -1, 0x02, 0x03, -1],
"led-control": [0xFF, 0x00, 0x40, -1, -0x04, -1, -1, -1, -1],
"get_picc_version": [0xFF, 0x00, 0x50, 0x00, 0x00],
"set_picc_version": [0xFF, 0x00, 0x51, -1, 0x00],
Expand Down

0 comments on commit 6228713

Please sign in to comment.