The PrintrBoard Rev F utilizes a mcp4728 DAC to set motor current. Printrbot's implementation utilizes 2 new M-codes to set and write the DAC settings to the DAC EEPROM: `M909` (Read DAC) and `M910` (Write DAC). `M907` is re-used to set value, `M908` for direct control.
The Pins file for the RevF board is included.
- also by default use ${HOME}/Arduino as install directory which may be more
sane, especially with arduino packages provided by distributions
- bump arduino version to 106 (this seems to be useless)
- program firmware through the USB serial which is more comfortable way how
to program the firmware
- use 57600 programing speed by default which seems to be more reliable
with arduino bootloaders (at least with those shipped with the Melzi2 boards)
Signed-off-by: Jaroslav Škarvada <jskarvad@redhat.com>
Add digipot i2c control for MCP4451
Allow M907 to set i2c digipot currents in amps
Fix Makefile to allow Azteeg motherboards
Fix Makefile to allow Wire libraries only
Add beeper pin for Azteeg X3 Pro
Use "whole program" and "link time optimization" features of gcc. The
whole-program optimization enables the compiler to evaluate the entire
firmware for optimization instead of just one code file at a time.
This leads to better overall optimizations.
The "relax" option enables the linker to convert certain "call"
instructions to the smaller "rcall" instruction. This reduces the
size of the resulting binary.
It would seem that the pattern matches do not work when the source
file is created when make is running. The result of this is that it is
necessary to run "make" twice to build the firmware.
This adds an explicit rule without a pattern match for building
applet/Marlin.cpp it corrects the make behaviour at the cost of adding
a little redundancy in the Makefile.
Run avr-size with the --mcu=... -C option as well. That reports how
much actual device program and data memory is used along with a
percentage fullness.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
Often it can be useful to see the actual commands being run by make.
Other projects (eg, the Linux kernel) support this with a "V=1" make
parameter. Do the same here.
Signed-off-by: Ian Jackson <ijackson@chiark.greenend.org.uk>
+ Removed most explicit pathnames, use the standard make "VPATH" to let
make find the files for itself.
+ Added a "hardware variant" variable that allows compiging Sanguino and
Gen7 as well as "generic" arduino.
+ Allows overriding the MOTHERBOARD define from the Makefile
+ Removed the 'preprocessor' bit that wasn't needed, now just "include" the
files that are needed, since it allows gcc to show the right file/line
when displaying error/warnings.
+ Uses gcc's own dependency generator to generate the .d files, and
and include these instead of self-patching the makefile
Signed-off-by: Michel Pollet <buserror@gmail.com>