PrusaSlicer-NonPlainar/src/avrdude
..
atmel-docs
doc
tools
windows
ac_cfg.h
ac_cfg.h.in
arduino.c
arduino.h
AUTHORS
avr910.c
avr910.h
avr.c
avrdude-slic3r.conf
avrdude-slic3r.cpp
avrdude-slic3r.hpp
avrdude.1
avrdude.conf
avrdude.conf.in
avrdude.h
avrdude.spec.in
avrftdi_private.h
avrftdi_tpi.c
avrftdi_tpi.h
avrftdi.c
avrftdi.h
avrpart.c
bitbang.c
bitbang.h
bootstrap
BUILD-FROM-SVN
buspirate.c
buspirate.h
butterfly.c
butterfly.h
ChangeLog
ChangeLog-2001
ChangeLog-2002
ChangeLog-2003
ChangeLog-2004-2006
ChangeLog-2007
ChangeLog-2008
ChangeLog-2009
ChangeLog-2010
ChangeLog-2011
ChangeLog-2012
ChangeLog-2013
ChangeLog-2014
ChangeLog-2015
CMakeLists.txt
conf-generate.cpp
config_gram.c
config_gram.h
config_gram.y
config.c
config.h
configure.ac
confwin.c
COPYING
crc16.c
crc16.h
dfu.c
dfu.h
fileio.c
flip1.c
flip1.h
flip2.c
flip2.h
freebsd_ppi.h
ft245r.c
ft245r.h
jtag3_private.h
jtag3.c
jtag3.h
jtagmkI_private.h
jtagmkI.c
jtagmkI.h
jtagmkII_private.h
jtagmkII.c
jtagmkII.h
lexer.c
lexer.l
libavrdude.h
linux_ppdev.h
linuxgpio.c
linuxgpio.h
lists.c
main-standalone.cpp
main.c
Makefile.am
Makefile.standalone
my_ddk_hidsdi.h
NEWS
par.c
par.h
pgm_type.c
pgm.c
pickit2.c
pickit2.h
pindefs.c
ppi.c
ppi.h
ppiwin.c
README
safemode.c
ser_avrdoper.c
ser_posix.c
ser_win32.c
serbb_posix.c
serbb_win32.c
serbb.h
solaris_ecpp.h
stk500_private.h
stk500.c
stk500.h
stk500generic.c
stk500generic.h
stk500v2_private.h
stk500v2.c
stk500v2.h
term.c
term.h
tpi.h
update.c
usb_hidapi.c
usb_libusb.c
usbasp.c
usbasp.h
usbdevs.h
usbtiny.c
usbtiny.h
wiring.c
wiring.h

THIS IS A PRUSA3D BRANCH, WORKING AROUND A SPECIFIC PROBLEM 
IN THE EARLY I3 MK2 USB COMMUNICATION CHIPS.

Some of the early Prusa3D i3 MK2 printers were shipped with a buggy
USB communication controller firmware. This fork of avrdude contains
a workaround inside the stk500v2 protocol implementation. 

The workaround depends on a specific behavior of the Arduino AVR 2560
bootloader, which is installed on the i3 MK2 printers:

https://github.com/arduino/Arduino-stk500v2-bootloader

The avrdude binary modified by Prusa3D could replace the avrdude bianary
of arduino to program the RAMBo board. In that case the modified binary
is identified by a "-prusa3d" suffix to the version information.

-------------------------------------------------------------------

See the documentation file for the details.

The latest version of AVRDUDE is always available here:

  http://savannah.nongnu.org/projects/avrdude


Important environment variables for ./configure:
================================================

CPPFLAGS: C preprocessor flags (*not* "C++")

This is the place to put additional (non-standard) -I options into.
For example, if your Windows system has LibUSB-Win32 installed into
\\WINDOWS\ProgramFiles\LibUSB-Win32, use

CPPFLAGS=-I/WINDOWS/ProgramFiles/LibUSB-Win32/include

to tell configure where to search for the header files.  (The use of
forward slashes rather than backslashes can often simplify things.
Note that the Windows system services internally treat both the same.
It's only cmd.exe which requires backslashes as the directory
separator.)

LDFLAGS: Linker options

This is the place to make additional library locations known to the
linker.  To continue the above example, use

LDFLAGS=-L/WINDOWS/ProgramFiles/LibUSB-Win32/lib/gcc

to make the linker search for "libusb.a" in that directory.


Linux users: make sure the header files are installed
=====================================================

While many Linux distributions install the libraries needed by AVRDUDE
(libusb, libelf) by default, they leave out the corresponding header
files.  Consequently, the configure script won't find them, so these
libraries could not be used.

Usually, the packages with the header files (and static libraries) are
derived from the regular package name by appending "-devel".  Thus,
make sure you have "libusb-devel" and "libelf-devel" installed before
running the configure script.  (Same goes for libftdi.)