Research, development and trades concerning the powerful Proxmark3 device.
Remember; sharing is caring. Bring something back to the community.
"Learn the tools of the trade the hard way." +Fravia
You are not logged in.
Time changes and with it the technology
Proxmark3 @ discord
Users of this forum, please be aware that information stored on this site is not private.
I compiled a Linux client on a Fedora 7 box from the latest source code available at the google SVN server. I am able to connect to the proxmark3 and issue command such as hi15read; however, when I runs the hisamples or hexsamples command, the yellow light comes on the proxmark3 and it locks up completely. I don't have this problem with the Linux client binary which is contained in the pm3-20090713-r52.zip package. I will likely need to modify the source code to add some functionalities that I need; so I really need to be able to run the client that I compile. The proxmark3 is flashed with version 20090713-r52 firmware.
Any idea as to how I can resolve this problem?
Thanks and best regards,
-crd
Offline
It appears that somebody did a very bad thing. In revision 137 the command code definitions in include/usb_cmd.h were changed so that the command code that a new host tool sends when you execute the hisamples command (0x207) is interpreted by the old firmware as a command to simulate a 125kHz tag. IIRC that shouldn't lock up your proxmark but simply require you to press the button on the device to exit the simulation mode (there is no concurrency, so no USB commands will be executed while the simulation code is active). The host tool should then abort its download loop due to receiving a bad response.
Developers: Please, under no circumstances what-so-ever, re-assign command codes in usb_cmd.h. The number space is big enough for quite some redundancy, so if you introduce an incompatible change you can simply use a new command code to cleanly break old client code for this single command. (Of course it's best not to do incompatible changes and/or offer detection and appropriate reaction to differing device capabilities through the new DEVICE_INFO facility.)
Users: Due to this, firmware and host tools before and after revision 137 are mutually incompatible. I will prepare a new firmware release shortly and you are encouraged to update the firmware and bootrom when that is available.
Offline
Thanks Henryk for the info. I am looking forward to you posting the new firmware release.
Best regards,
-crd
Offline
Users: Due to this, firmware and host tools before and after revision 137 are mutually incompatible. I will prepare a new firmware release shortly and you are encouraged to update the firmware and bootrom when that is available.
Henryk,
Does that mean both Windows and Linux users? This is making me nervous cause I know I'm capable of really screwing things up and I don't even have a Jtag. Even if I had a Jtag I wouldn't know what to do with it -Thats another chapter of my prox adventure that hasn't been written yet.
Last edited by XEROEFFECT (2009-09-09 01:02:35)
Offline
XERO, get (or build) a jtag now rather than later.
You'll end up needing it if you're going to be upgrading firmware often.
Offline
Hey Samy,
Where you been lately? Hope all is well.
I don't know much about Jtag and reading peoples posts- some work, some dont. I've been looking around and have found this one. Although I would prefer to buy one that has been tried and tested. Which did you buy Samy? From memory, I think you got 2?
Last edited by XEROEFFECT (2009-09-09 03:31:00)
Offline
Hey Xero,
Been working on some other projects lately.
I ended up getting two JTAG wigglers (clones?) off of ebay for $5-10 USD or so. Both of them worked fine (after powering the board via USB). That might have been the issue with other users as well as I don't think the documentation mentioned power.
Offline
Does that mean both Windows and Linux users? This is making me nervous cause I know I'm capable of really screwing things up and I don't even have a Jtag.
Yes, everyone. And calm down, you can always recover as long as you don't break your bootrom, so by not flashing it again you're perfectly safe.
You are however strongly advised to update the bootrom at least one time to the binary I prepared in the summer '09 release. It contains protections that will prevent the bootrom from being touched until you really want to. (E.g. the old bootrom could be corrupted by a broken fpga or os image, the new bootrom will only allow itself to be touched if you give the "prox.exe bootrom ..." (Windows) or "flasher bootrom ..." (Linux) commands.)
Offline
Henryk,
Just to make it clear- I want to flash my pm3 today, including the bootrom, with your summer '09 release. Is it safe to do it now?
Thanks Henryk.
Offline
Just to make it clear- I want to flash my pm3 today, including the bootrom, with your summer '09 release. Is it safe to do it now?
Yes. Be sure to use the provided .s19 files instead of building your own, they should be entirely safe.
Last edited by henryk (2009-09-09 05:18:47)
Offline
Thank you Henryk. Your my guardian God-like angel
Offline
Henryk,
It worked. It actually worked! I was having a lot of trouble at first cause it's not mentioned anywhere in the compile that I had to work out of the WINSRC folder in the command prompt after calling 0setpath.bat. I'm just wondering after all the errors I put this PM3 through while flashing how lucky I am. I'm so happy to actually get passed this. What a miracle this was. I know what your thinking Henryk- This guys a total moron -is he really that stupid!!- was this guy dropped at birth- can't he just leave me alone-
Last edited by XEROEFFECT (2009-09-09 08:35:15)
Offline
Henryk,
The flasher binary that is contained in summer release binary you posted a few days ago, is a 64-bit executable. It doesn't work on my 32-bit Linux box. We need a 32-bit version of flasher.
Thanks and best regards,
-crd
Offline
Hmm, man's got a point. Until I have a more permanent solution I have uploaded a manually compiled x86 flasher binary to the google code project. It's statically linked, so it should be useful to both x86 and x86_64 users.
Offline
Thanks Henryk for posting the 32-bit flasher binary. I was able to use it to update my proxmark3 bootrom, fpga and OS. However, while I was doing the update I got the following message:
" Warning: Your bootloader does not understand the new START_FLASH command
It is recommended that you update your bootloader".
Does this mean that I need to update the bootloader? If so, can you give me some pointers as to how I can accomplish this?
Thanks and best regards,
-crd
Offline
bootloader and bootrom are the same thing (and there's no deeper meaning behind when the one word is used and when the other word is used). Obviously, when you first update your bootloader there's still the old one in there so you'll get this warning (the flasher doesn't know or care if you're going to flash a new one, so there's no way to suppress the warning in this case). It shouldn't appear on subsequent flash operations.
Last edited by henryk (2009-09-12 02:18:11)
Offline
Thanks henryk for the information. What would be do without guys like you?
Best regards,
-crd
Offline