Here is the code for the case someone has a similar problem:
from __future__ import print_function
from __future__ import absolute_import
import pexpect
from pexpect import ANSI
port: str = "" # Keep empty for auto-detection
if port == "":
pm3_start_command = "pm3"
else:
pm3_start_command = "pm3 -p " + port
class Sniffer:
def __init__(self, engine=pm3_start_command, iterations=5000):
self.iterations = iterations
self.child = pexpect.spawn(engine)
self.term = ANSI.ANSI()
def sniff(self, samples_skip=10000, trigger_skip=1):
self.child.expect('pm3 -->')
self.child.sendline('hf sniff ' + str(samples_skip) + ' ' + str(trigger_skip))
def save(self, filename):
self.child.expect('pm3 -->')
self.child.sendline('data save f ' + filename)
def quit(self):
self.child.sendline('quit')
def main():
print("Starting pm3 interface...")
sniffer = Sniffer()
print("Starting sniffer for " + str(sniffer.iterations) + " iterations...")
for i in range(sniffer.iterations):
sniffer.sniff()
print("Sniffing trace no. " + str(i + 1) + "...")
sniffer.save("trace_" + str(i + 1))
print("Saving trace no. " + str(i + 1) + "...")
sniffer.quit()
if __name__ == "__main__":
main()
cd /home/testuser/rrg
git clone <rrg url>
cd /home/testuser/pm3
git clone <original pm3 url>
Then compile each as normal.
Remember to ensure you flash the RRG firmware to the proxmark when using RRG and the flash the original when using its client.
i.e. Dont mix repo firmware and clients.
]]>lsusb
-Bus 001 Device 006: ID 9ac4: 4b8f J. Westhues ProxMark-3 RFID Instrument
hw status. Non-normal things:
After lf sampling config this appears:
[#] LF Sampling Stack
[#] Max stack usage ......... 3952/8480 bytes.
No flash has returned it to normal status. I hope to receive flashing-tool and with it to make it work correctly again. Thanks so much.
]]>Below is the error I am getting:
appmain.c: In function 'UsbPacketReceived':
appmain.c:622:40: error: taking address of packed member of 'struct <anonymous>' may result in an unaligned pointer value [-Werror=address-of-packed-member]
622 | setSamplingConfig((sample_config *) c->d.asBytes);
| ^
cc1: all warnings being treated as errors
make[1]: *** [../common/Makefile.common:77: obj/appmain.o] Error 1
If someone could help.
Thx.
I am just trying to get lf hid tags sorted for now then I will worry about harder tags...
My idea was to use python utilizing pyautogui to send the commands as if i was myself typing them which works great... to a point
so i have pyautogui sending
"./proxmark3/client/proxmark3 /dev/ttyACM0"
"enter"
"lf search"
"enter"
"data save (filename).pm3" which saves it to a trace file
but im stuck on how to use that trace file to write to a new tag......
I cant copy and paste the Tag ID, so is there ANY WAY to clone an hid without copy and pasting Tag ID and just via a command to copy last tag that was read? Or maybe some way to output the Tag ID to a CSV file or something?
]]>If you read this documentation, you will be able to compile for non-rdv4 devices.
you guys are real genius^_^
]]>On my first attempt I have only compiled the client with that additional option, but did not update the firmware, that was not enough.
Thank you! Let's see if I can find out how to add a "solved" tag to this thread...
]]>