From f2c6452c4cbcf2f7cdc9d358d686b72cc5caa359 Mon Sep 17 00:00:00 2001 From: Jared Boone Date: Wed, 8 Jul 2015 09:19:55 -0700 Subject: [PATCH] Change Makefile to use local hackrf DFU binary, now included. --- firmware/bootstrap/Makefile | 2 +- firmware/bootstrap/hackrf_one_usb_ram.dfu | Bin 0 -> 20324 bytes 2 files changed, 1 insertion(+), 1 deletion(-) create mode 100644 firmware/bootstrap/hackrf_one_usb_ram.dfu diff --git a/firmware/bootstrap/Makefile b/firmware/bootstrap/Makefile index 72741808..11c6c835 100644 --- a/firmware/bootstrap/Makefile +++ b/firmware/bootstrap/Makefile @@ -63,7 +63,7 @@ all: image.bin list: $(TARGET).lst $(TARGET_M4).lst $(TARGET_M0).lst program: image.bin - dfu-util --device 1fc9 --download ~/Desktop/binaries/hackrf-2014.08.1/firmware-bin/hackrf_one_usb_ram.dfu --reset + dfu-util --device 1fc9 --download hackrf_one_usb_ram.dfu --reset sleep 1s hackrf_spiflash -w image.bin diff --git a/firmware/bootstrap/hackrf_one_usb_ram.dfu b/firmware/bootstrap/hackrf_one_usb_ram.dfu new file mode 100644 index 0000000000000000000000000000000000000000..f1426d7f27c0cdf8299ce97490c1b32711529afa GIT binary patch literal 20324 zcmcchUxVTQ|Ns9P85kH`{23S?)N=?tbYx(->&U<`Q<8yUt0V)%c1Z??ostX~0Hg+l zK@uPugl{@BFu*WK9E4$f5FN;ekO%Px8iU*i!Z3Hh*f1I-&au_GLPDGM2D4Yt4`l=H zjWgUi_A)AP?ET`wz)-N2#f{;E*&k&Oh7S^dL8RzkC2yGmxe6tpZ<`qPWZif#DtP#R zX((j=5c*%vgGG_~gYSO{4~7qF{|ww@AIMcmdVJf&r04&Eg^}+f^9SeuAhjYM%pa`& z^LsFS5dLT2#_*x(mw-3d1LhAV|9PQi>HlX?VE9n>i`)Cik39z371|q_K5YEC_eFsN z!-u=O3-+F2)!&XiP28*pMZjn13I+!%rZXDS3|NGqk z3o;o$Ecng%fKkC>FN1=`UICD=6#jpo@LxGII)hQ0{UYOsroTKMOp1G72ski*c(ad5 zo8uzmhl;-(9tA^IQVhtz+JAJ+cS_h9&7`k�#UEWykl(!i>Uc1ISpEw{F8QVH!T4bz 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