Commit graph

46 commits

Author SHA1 Message Date
Philippe Teuwen d19754567d summer restructuring:
* .h include only the strict minimum for their own parsing
  * this forces all files to include explicitment their needs and not count on far streched dependencies
  * this helps Makefile to rebuild only the minimum
  * according to this rule, most standalone .h are now gone
  * big app.h is gone
  * remove seldom __cplusplus, if c++ happens, everything will have to be done properly anyway
* all unrequired include were removed
* split common/ into common/ (client+arm) and common_arm/ (os+bootloader)
  * bring zlib to common/
  * bring stuff not really/not yet used in common back to armsrc/ or client/
  * bring liblua into client/
  * bring uart into client/
  * move some portions of code around (dbprint, protocols,...)
* rename unused files into *_disabled.[ch] to make it explicit
* rename soft Uarts between 14a, 14b and iclass, so a standalone could use several without clash
* remove PrintAndLogDevice
* move deprecated-hid-flasher from client to tools
* Makefiles
  * treat deps in armsrc/ as in client/
  * client: stop on warning (-Werror), same as for armsrc/

Tested on:

* all standalone modes
* Linux
2019-08-11 21:42:01 +02:00
Philippe Teuwen d7614684f8 Make sure standalone modes can be launched when connected on USB without client 2019-06-02 23:20:02 +02:00
Philippe Teuwen 68e5b3c355 style 2019-05-08 01:35:51 +02:00
iceman1001 2fca0d80b3 cleaning 2019-05-07 09:39:02 +02:00
Philippe Teuwen 3176684f4a Add usart dev cmds & dynamic flash support capability 2019-05-03 22:30:17 +02:00
Philippe Teuwen 27f7057961 Rename few USB -> PM3 to avoid misleading interpretations 2019-04-30 21:10:11 +02:00
Philippe Teuwen b0eef756c1 return PM3_SUCCESS on usart_writebuffer_sync, usb_write 2019-04-22 23:03:01 +02:00
Philippe Teuwen f29facd15a Harmonize usb_write & usart_writebuffer_sync return values 2019-04-22 02:28:58 +02:00
Philippe Teuwen cdd4177968 usart_writebuffer_sync simplified as we're always sending in blocking mode anyway 2019-04-22 00:30:01 +02:00
Philippe Teuwen 6e744043f5 usart working... when debugged... 2019-04-21 00:44:19 +02:00
Philippe Teuwen e4006a7563 doc errors 2019-04-20 10:34:54 +02:00
Philippe Teuwen a7773b3395 Introduce reply_mix, to still get some varlen on old API 2019-04-20 03:17:19 +02:00
Philippe Teuwen 3bcf80bb34 Introduce SendCommandMIX, to still get some varlen on old API 2019-04-20 02:41:40 +02:00
Philippe Teuwen a45238236d armsrc: put new frame parsing in common for usart (still usart_read_ng to do) 2019-04-20 01:47:50 +02:00
Philippe Teuwen b860cc6eaf Rename MAGIC defines 2019-04-18 21:49:37 +02:00
Philippe Teuwen 9ff841efb2 CRC optional, replaced by magic on USB 2019-04-18 21:39:35 +02:00
Philippe Teuwen 482db05741 Rename few stuff for consistency 2019-04-18 12:49:51 +02:00
Philippe Teuwen cb411ffab4 receive_ng in common/ 2019-04-18 00:50:31 +02:00
Philippe Teuwen 533667ea6d Better Reply structs 2019-04-17 23:44:48 +02:00
Philippe Teuwen be15ad7fec Viva la revolucion 2019-04-17 21:30:01 +02:00
Philippe Teuwen 96843c3f47 New reply frames transmission (reception still to be done) 2019-04-16 23:15:23 +02:00
Philippe Teuwen 44bbb7d2c7 new frame format, smaller and with crc. Some code simplified 2019-04-16 20:00:17 +02:00
Philippe Teuwen 34467b7550 Variable length frames, part1: USB Host -> Pm3 2019-04-16 10:01:08 +02:00
Philippe Teuwen e0b7f22db1 Comment debug msg 2019-04-14 18:45:53 +02:00
Philippe Teuwen 64ce30c06c make style 2019-04-02 22:32:45 +02:00
Philippe Teuwen 21be6d4400 FPC: got RX working, got client over usart somehow working..., see detailed commit msg
* using WITH_FPC:
  * activate basic usart
  * no double buffer for now, no interrupt
  * usart_dataavailable/usart_readbuffer/usart_writebuffer, to demo it:
    * pm3 client over USB, minicom over usart
    * analyse a d 414243
* using WITH_FPC_HOST:
  * it implies WITH_FPC as it's based on it
  * control pm3 with client over usart
  * EXPERIMENTAL! still some frame desync issues
  * you can connect both from usart & USB with two pm3 clients
    * actually you *have* to connect USB for the moment because
      it's used to send debug messages about buggy usart... See Dbprintf_usb below
  * "sessions": msgs are directed to the latest client to have sent a cmd
  * Dbprintf_usb macro to send msgs to USB client to help debugging usart...
  * We now have an option to run client at different speed as usart is 115200:
    client/proxmark3 /dev/ttyUSB0 -b 115200
  * Consequently, argc,argv handling is a bit revamped, it was so messy...
  * USB and flashing are still at 460800, don't try flashing over usart yet ^^
2019-04-02 22:06:10 +02:00
Philippe Teuwen 1b2601a48a Add missing EOF LF 2019-03-12 00:12:26 +01:00
Philippe Teuwen 961d929f4d changing {} style to match majority of previous style 2019-03-10 11:20:22 +01:00
Philippe Teuwen 0373696662 make style 2019-03-10 00:00:59 +01:00
Philippe Teuwen 23f1a253a7 common: fix mix of spaces & tabs 2019-03-09 19:19:50 +01:00
Philippe Teuwen 60f292b18e remove spurious spaces & tabs at end of lines 2019-03-09 08:59:13 +01:00
Philippe Teuwen edc19f202a Convert the few files with still Windows carriage returns 2019-03-09 08:49:41 +01:00
Chris f8c33af1da CHG: FPC connector tests. Device -> Client communications works.
Adjust  armsrc/Makefile   and client/Makefile  to include  the  -DWITH_FPC  flag to compile with FPC enabled.
2018-11-20 10:58:32 +01:00
Chris 24eaac8681 CHG: the thread comms refactoring from offical pm3 repo
chg: FPC com speed limited to 115200 when compiled with FPC
chg: USART remake (@drandreas)
2018-09-06 21:43:20 +02:00
Chris 5f77121694 initial commit to be in sync the-soon-defunct repo pm3rdv40. 2018-08-12 21:54:31 +02:00
Chris bacf8aff0f add: FPC connector skeleton usart. Not working but if will be a starting point for those who might want to help out with it. 2018-07-30 09:54:44 +02:00
iceman1001 5ea8f73547 FIX: cmd_send has wrong varible definitions, leading to loss of values. 2018-01-11 21:47:27 +01:00
iceman1001 5eafdbf872 ADD: 'hf iclass check' - increased speed in check keys with new algo.
ADD: 'hf iclass' - trying to add the timeout-limits for commands in order to get a more stable iclass communication
2017-12-21 10:13:40 +01:00
iceman1001 16028f7d33 CHG: appmain now calls cmd_recieve as it should
CHG: flasher -  removed unneeded parameter to function
CHG: flasher - increased limit to fpga-files that can be loaded
FIX: main client,  wrong windows define fixed.
CHG: device side - recieve usb command does not always get 544 bytes.  usb packages can be incomplete.
CHG: usb_cdc.c also got piwi's changes.
CHG: uart_posix.c removed a debug value
CHG: uart_win32.c clean up.
2017-10-17 20:58:17 +02:00
iceman1001 1d5e3fc217 fix: usb communications should be fine again. Inteface size must be 0x08, not 0x40 2017-10-12 15:13:18 +02:00
iceman1001 1cca109429 chg: validating we got a full usbcommand (512b) 2017-10-11 12:48:04 +02:00
iceman1001 a8569849d6 part of monstermerge.. 2017-07-27 20:58:59 +02:00
iceman1001 1b75698cb7 FIX: 'lf hitag2' forgot to add some of @marshmellow42 's changes. Lf search should works just fine now. 2017-01-20 18:26:03 +01:00
iceman1001 0de8e3874d A lot of changes...
.. ntag simulation stuff from @marshmellows branch "ntag/sim"
.. hf mf mifare fixes from @pwpivi.
.. hw status command
.. speedtest function from @pwpivi
.. Viking Functionalities,   (not a proper DEMOD, but a start)
.. GetCountUS  better precision from @pwpivi
.. bin2hex,  hex2bin  from @holiman

...
starting with getting the T55x7 CONFIGURATION_BLOCK for different clone situations. Ripped from Adam Lauries RFidler,   nothing working or finished..
...
Started working with the T55x7 read command with password actually performs a write block...  See Issue #136  https://github.com/Proxmark/proxmark3/issues/136    Not solved yet.

...
Started add SHA256..   not working yet..
2015-10-04 18:01:33 +02:00
iceman1001 23b598ee23 CHG: Minor code clean up.
ADD: crc16.c - new crc16_ccitt calc.
2015-01-07 20:40:22 +01:00
roel@libnfc.org 28fdb04fd8 Finally, rewrote bootrom and flasher program, much faster now 2013-02-28 15:11:52 +00:00
Renamed from armsrc/cmd.c (Browse further)