Skip to content

Commit 6957194

Browse files
committed
Initial commit
Using TMC2208 in standalone mode, I've inverted the stepper direction to match Anycubics pin layout. M110 memory watcher was removed due to redundancy and - ironically - to save memory.
0 parents  commit 6957194

File tree

555 files changed

+365050
-0
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

555 files changed

+365050
-0
lines changed

.gitattributes

+2
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Auto detect text files and perform LF normalization
2+
* text=auto

.travis.yml

+389
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,389 @@
1+
dist: trusty
2+
sudo: true
3+
#
4+
language: c
5+
#
6+
notifications:
7+
email: false
8+
#
9+
before_install:
10+
#
11+
# Fetch the tag information for the current branch
12+
- git fetch origin --tags
13+
#
14+
# Publish the buildroot script folder
15+
- chmod +x ${TRAVIS_BUILD_DIR}/buildroot/bin/*
16+
- export PATH=${TRAVIS_BUILD_DIR}/buildroot/bin/:${PATH}
17+
#
18+
# Start fb X server
19+
- "/sbin/start-stop-daemon --start --quiet --pidfile /tmp/custom_xvfb_1.pid --make-pidfile --background --exec /usr/bin/Xvfb -- :1 -ac -screen 0 1280x1024x16"
20+
- sleep 3
21+
- export DISPLAY=:1.0
22+
#
23+
install:
24+
#
25+
# Install arduino 1.8.5
26+
- wget http://downloads-02.arduino.cc/arduino-1.8.5-linux64.tar.xz
27+
- tar xf arduino-1.8.5-linux64.tar.xz
28+
- sudo mv arduino-1.8.5 /usr/local/share/arduino
29+
- ln -s /usr/local/share/arduino/arduino ${TRAVIS_BUILD_DIR}/buildroot/bin/arduino
30+
#
31+
# Install: LiquidCrystal_I2C library
32+
- git clone https://github.com/kiyoshigawa/LiquidCrystal_I2C.git
33+
- mv LiquidCrystal_I2C/LiquidCrystal_I2C /usr/local/share/arduino/libraries/LiquidCrystal_I2C
34+
#
35+
# Install: LiquidTWI2 library
36+
- git clone https://github.com/lincomatic/LiquidTWI2.git
37+
- sudo mv LiquidTWI2 /usr/local/share/arduino/libraries/LiquidTWI2
38+
#
39+
# Install: Monochrome Graphics Library for LCDs and OLEDs
40+
- git clone https://github.com/olikraus/U8glib_Arduino.git
41+
- sudo mv U8glib_Arduino /usr/local/share/arduino/libraries/U8glib
42+
#
43+
# Install: L6470 Stepper Motor Driver library
44+
# - git clone https://github.com/ameyer/Arduino-L6470.git
45+
# - sudo mv Arduino-L6470/L6470 /usr/local/share/arduino/libraries/L6470
46+
#
47+
# Install: TMC26X Stepper Motor Controller library
48+
# - git clone https://github.com/trinamic/TMC26XStepper.git
49+
# - sudo mv TMC26XStepper /usr/local/share/arduino/libraries/TMC26XStepper
50+
#
51+
# Install: TMC2130 Stepper Motor Controller library
52+
- git clone https://github.com/teemuatlut/TMC2130Stepper.git
53+
- sudo mv TMC2130Stepper /usr/local/share/arduino/libraries/TMC2130Stepper
54+
#
55+
# Install: TMC2208 Stepper Motor Controller library
56+
- git clone https://github.com/teemuatlut/TMC2208Stepper.git
57+
- sudo mv TMC2208Stepper /usr/local/share/arduino/libraries/TMC2208Stepper
58+
#
59+
# Install: Adafruit Neopixel library
60+
- git clone https://github.com/adafruit/Adafruit_NeoPixel.git
61+
- sudo mv Adafruit_NeoPixel /usr/local/share/arduino/libraries/Adafruit_NeoPixel
62+
#
63+
before_script:
64+
#
65+
# Change current working directory to the build dir
66+
- cd ${TRAVIS_BUILD_DIR}
67+
#
68+
# Generate custom version include
69+
- generate_version_header_for_marlin ${TRAVIS_BUILD_DIR}/Marlin
70+
- cat ${TRAVIS_BUILD_DIR}/Marlin/_Version.h
71+
#
72+
script:
73+
#
74+
# Backup Configuration.h, Configuration_adv.h, and pins_RAMPS.h
75+
#
76+
- cp Marlin/Configuration.h Marlin/Configuration.h.backup
77+
- cp Marlin/Configuration_adv.h Marlin/Configuration_adv.h.backup
78+
- cp Marlin/pins_RAMPS.h Marlin/pins_RAMPS.h.backup
79+
#
80+
# Build with the default configurations
81+
#
82+
- build_marlin
83+
#
84+
# Test 2 extruders (one MAX6675) and heated bed on basic RAMPS 1.4
85+
# Test a "Fix Mounted" Probe with Safe Homing, some arc options,
86+
# linear bed leveling, M48, leveling debug, and firmware retraction.
87+
#
88+
- opt_set MOTHERBOARD BOARD_RAMPS_14_EEB
89+
- opt_set EXTRUDERS 2
90+
- opt_set TEMP_SENSOR_0 -2
91+
- opt_set TEMP_SENSOR_1 1
92+
- opt_set TEMP_SENSOR_BED 1
93+
- opt_set POWER_SUPPLY 1
94+
- opt_enable PIDTEMPBED FIX_MOUNTED_PROBE Z_SAFE_HOMING
95+
- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT EEPROM_SETTINGS PINS_DEBUGGING
96+
- opt_enable BLINKM PCA9632 RGB_LED NEOPIXEL_LED AUTO_POWER_CONTROL NOZZLE_PARK_FEATURE FILAMENT_RUNOUT_SENSOR
97+
- opt_enable AUTO_BED_LEVELING_LINEAR Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE SKEW_CORRECTION SKEW_CORRECTION_FOR_Z SKEW_CORRECTION_GCODE
98+
- opt_enable_adv ARC_P_CIRCLES ADVANCED_PAUSE_FEATURE CNC_WORKSPACE_PLANES CNC_COORDINATE_SYSTEMS POWER_LOSS_RECOVERY POWER_LOSS_PIN POWER_LOSS_STATE
99+
- opt_enable_adv FWRETRACT MAX7219_DEBUG LED_CONTROL_MENU CASE_LIGHT_ENABLE CASE_LIGHT_USE_NEOPIXEL CODEPENDENT_XY_HOMING
100+
- opt_set GRID_MAX_POINTS_X 16
101+
- opt_set_adv FANMUX0_PIN 53
102+
- build_marlin
103+
#
104+
# Test a probeless build of AUTO_BED_LEVELING_UBL, with lots of extruders
105+
#
106+
- restore_configs
107+
- opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO
108+
- opt_set EXTRUDERS 5
109+
- opt_set TEMP_SENSOR_1 1
110+
- opt_set TEMP_SENSOR_2 5
111+
- opt_set TEMP_SENSOR_3 20
112+
- opt_set TEMP_SENSOR_4 999
113+
- opt_set TEMP_SENSOR_BED 1
114+
- opt_enable AUTO_BED_LEVELING_UBL RESTORE_LEVELING_AFTER_G28 DEBUG_LEVELING_FEATURE G26_MESH_EDITING ENABLE_LEVELING_FADE_HEIGHT SKEW_CORRECTION
115+
- opt_enable EEPROM_SETTINGS EEPROM_CHITCHAT REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
116+
- opt_enable_adv CUSTOM_USER_MENUS I2C_POSITION_ENCODERS BABYSTEPPING BABYSTEP_XY LIN_ADVANCE NANODLP_Z_SYNC QUICK_HOME JUNCTION_DEVIATION MAX7219_DEBUG
117+
- opt_set_adv MAX7219_ROTATE 270
118+
- build_marlin
119+
#
120+
# Add a Sled Z Probe, use UBL Cartesian moves, use Japanese language
121+
#
122+
- opt_enable Z_PROBE_SLED SKEW_CORRECTION SKEW_CORRECTION_FOR_Z SKEW_CORRECTION_GCODE S_CURVE_ACCELERATION
123+
- opt_set LCD_LANGUAGE kana_utf8
124+
- opt_disable SEGMENT_LEVELED_MOVES
125+
- opt_enable_adv BABYSTEP_ZPROBE_OFFSET DOUBLECLICK_FOR_Z_BABYSTEPPING
126+
- build_marlin
127+
#
128+
# Test a Servo Probe
129+
# ...with AUTO_BED_LEVELING_3POINT, DEBUG_LEVELING_FEATURE, EEPROM_SETTINGS, EEPROM_CHITCHAT, EXTENDED_CAPABILITIES_REPORT, and AUTO_REPORT_TEMPERATURES
130+
#
131+
- restore_configs
132+
- opt_enable NUM_SERVOS Z_PROBE_SERVO_NR Z_SERVO_ANGLES DEACTIVATE_SERVOS_AFTER_MOVE
133+
- opt_set NUM_SERVOS 1
134+
- opt_enable AUTO_BED_LEVELING_3POINT DEBUG_LEVELING_FEATURE EEPROM_SETTINGS EEPROM_CHITCHAT
135+
- opt_enable_adv NO_VOLUMETRICS EXTENDED_CAPABILITIES_REPORT AUTO_REPORT_TEMPERATURES AUTOTEMP G38_PROBE_TARGET
136+
- build_marlin
137+
#
138+
# Test MESH_BED_LEVELING feature, with LCD
139+
#
140+
- restore_configs
141+
- opt_enable MESH_BED_LEVELING G26_MESH_EDITING MESH_G28_REST_ORIGIN LCD_BED_LEVELING ULTIMAKERCONTROLLER
142+
- build_marlin
143+
#
144+
# Test MINIRAMBO for PWM_MOTOR_CURRENT
145+
# PROBE_MANUALLY feature, with LCD support,
146+
# ULTIMAKERCONTROLLER, FILAMENT_LCD_DISPLAY, FILAMENT_WIDTH_SENSOR,
147+
# PRINTCOUNTER, NOZZLE_PARK_FEATURE, NOZZLE_CLEAN_FEATURE, PCA9632,
148+
# Z_DUAL_ENDSTOPS, BEZIER_CURVE_SUPPORT, EXPERIMENTAL_I2CBUS,
149+
# ADVANCED_PAUSE_FEATURE, ADVANCED_PAUSE_CONTINUOUS_PURGE, PARK_HEAD_ON_PAUSE, LCD_INFO_MENU, M114_DETAIL
150+
# EEPROM_SETTINGS, EEPROM_CHITCHAT, M100_FREE_MEMORY_WATCHER,
151+
# INCH_MODE_SUPPORT, TEMPERATURE_UNITS_SUPPORT
152+
#
153+
- restore_configs
154+
- opt_set MOTHERBOARD BOARD_MINIRAMBO
155+
- opt_enable PROBE_MANUALLY AUTO_BED_LEVELING_BILINEAR G26_MESH_EDITING LCD_BED_LEVELING ULTIMAKERCONTROLLER
156+
- opt_enable EEPROM_SETTINGS EEPROM_CHITCHAT M100_FREE_MEMORY_WATCHER M100_FREE_MEMORY_DUMPER M100_FREE_MEMORY_CORRUPTOR INCH_MODE_SUPPORT TEMPERATURE_UNITS_SUPPORT
157+
- opt_enable ULTIMAKERCONTROLLER SDSUPPORT
158+
- opt_enable PRINTCOUNTER NOZZLE_PARK_FEATURE NOZZLE_CLEAN_FEATURE PCA9632
159+
- opt_enable_adv BEZIER_CURVE_SUPPORT EXPERIMENTAL_I2CBUS
160+
- opt_enable_adv ADVANCED_PAUSE_FEATURE ADVANCED_PAUSE_CONTINUOUS_PURGE FILAMENT_LOAD_UNLOAD_GCODES PARK_HEAD_ON_PAUSE LCD_INFO_MENU M114_DETAIL
161+
- opt_set_adv PWM_MOTOR_CURRENT {1300,1300,1250}
162+
- opt_set_adv I2C_SLAVE_ADDRESS 63
163+
- build_marlin
164+
#
165+
# Mixing Extruder with 5 steppers, Cyrillic
166+
#
167+
- restore_configs
168+
- opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO
169+
- opt_enable MIXING_EXTRUDER CR10_STOCKDISPLAY
170+
- opt_set MIXING_STEPPERS 5
171+
- opt_set LCD_LANGUAGE ru
172+
- build_marlin
173+
#
174+
# Test DUAL_X_CARRIAGE
175+
#
176+
- restore_configs
177+
- opt_set MOTHERBOARD BOARD_RUMBA
178+
- opt_set EXTRUDERS 2
179+
- opt_set TEMP_SENSOR_1 1
180+
- opt_enable USE_XMAX_PLUG
181+
- opt_enable_adv DUAL_X_CARRIAGE
182+
- build_marlin
183+
#
184+
# Test SPEAKER with BOARD_BQ_ZUM_MEGA_3D and BQ_LCD_SMART_CONTROLLER
185+
#
186+
#- restore_configs
187+
#- opt_set MOTHERBOARD BOARD_BQ_ZUM_MEGA_3D
188+
#- opt_set LCD_FEEDBACK_FREQUENCY_DURATION_MS 10
189+
#- opt_set LCD_FEEDBACK_FREQUENCY_HZ 100
190+
#- opt_enable BQ_LCD_SMART_CONTROLLER SPEAKER
191+
#
192+
# Test SWITCHING_EXTRUDER
193+
#
194+
- restore_configs
195+
- opt_set MOTHERBOARD BOARD_RUMBA
196+
- opt_set EXTRUDERS 2
197+
- opt_enable NUM_SERVOS
198+
- opt_set NUM_SERVOS 1
199+
- opt_enable SWITCHING_EXTRUDER ULTIMAKERCONTROLLER
200+
- build_marlin
201+
#
202+
# Enable COREXY
203+
#
204+
#- restore_configs
205+
#- opt_enable COREXY
206+
#- build_marlin
207+
#
208+
# Test many less common options
209+
#
210+
- restore_configs
211+
- opt_enable COREYX
212+
- opt_set_adv FAN_MIN_PWM 50
213+
- opt_set_adv FAN_KICKSTART_TIME 100
214+
- opt_set_adv XY_FREQUENCY_LIMIT 15
215+
- opt_enable_adv SHOW_TEMP_ADC_VALUES HOME_Y_BEFORE_X EMERGENCY_PARSER FAN_KICKSTART_TIME
216+
- opt_enable_adv ABORT_ON_ENDSTOP_HIT_FEATURE_ENABLED ADVANCED_OK
217+
- opt_enable_adv VOLUMETRIC_DEFAULT_ON NO_WORKSPACE_OFFSETS ACTION_ON_KILL
218+
- opt_enable_adv EXTRA_FAN_SPEED FWERETRACT Z_DUAL_STEPPER_DRIVERS Z_DUAL_ENDSTOPS
219+
- opt_enable_adv MENU_ADDAUTOSTART SDCARD_SORT_ALPHA
220+
- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER BABYSTEPPING DAC_MOTOR_CURRENT_DEFAULT
221+
- opt_enable FILAMENT_LCD_DISPLAY FILAMENT_WIDTH_SENSOR
222+
- opt_enable ENDSTOP_INTERRUPTS_FEATURE FAN_SOFT_PWM SDSUPPORT
223+
- opt_enable USE_XMAX_PLUG
224+
- build_marlin
225+
#
226+
######## Other Standard LCD/Panels ##############
227+
#
228+
# ULTRA_LCD
229+
#
230+
#- restore_configs
231+
#- opt_enable ULTRA_LCD
232+
#- build_marlin
233+
#
234+
# DOGLCD
235+
#
236+
#- restore_configs
237+
#- opt_enable DOGLCD
238+
#- build_marlin
239+
#
240+
# MAKRPANEL
241+
# Needs to use Melzi and Sanguino hardware
242+
#
243+
#- restore_configs
244+
#- opt_enable MAKRPANEL
245+
#- build_marlin
246+
#
247+
# REPRAP_DISCOUNT_SMART_CONTROLLER, SDSUPPORT, BABYSTEPPING, RIGIDBOARD_V2, and DAC_MOTOR_CURRENT_DEFAULT
248+
#
249+
#- restore_configs
250+
#- opt_set MOTHERBOARD BOARD_RIGIDBOARD_V2
251+
#- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT BABYSTEPPING DAC_MOTOR_CURRENT_DEFAULT
252+
#- build_marlin
253+
# #
254+
# G3D_PANEL with SDCARD_SORT_ALPHA and STATUS_MESSAGE_SCROLLING
255+
#
256+
#- restore_configs
257+
#- opt_enable G3D_PANEL SDSUPPORT
258+
#- opt_enable_adv SDCARD_SORT_ALPHA STATUS_MESSAGE_SCROLLING SCROLL_LONG_FILENAMES
259+
#- opt_set_adv SDSORT_GCODE true
260+
#- opt_set_adv SDSORT_USES_RAM true
261+
#- opt_set_adv SDSORT_USES_STACK true
262+
#- opt_set_adv SDSORT_CACHE_NAMES true
263+
#- build_marlin
264+
#
265+
# REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER with LIGHTWEIGHT_UI
266+
#
267+
- restore_configs
268+
- opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT
269+
- opt_enable_adv SDCARD_SORT_ALPHA STATUS_MESSAGE_SCROLLING SCROLL_LONG_FILENAMES LIGHTWEIGHT_UI
270+
- opt_set_adv SDSORT_GCODE true
271+
- opt_set_adv SDSORT_USES_RAM true
272+
- opt_set_adv SDSORT_USES_STACK true
273+
- opt_set_adv SDSORT_CACHE_NAMES true
274+
- build_marlin
275+
#
276+
# REPRAPWORLD_KEYPAD
277+
#
278+
# Cant find configuration details to get it to compile
279+
#- restore_configs
280+
#- opt_enable ULTRA_LCD REPRAPWORLD_KEYPAD REPRAPWORLD_KEYPAD_MOVE_STEP
281+
#- build_marlin
282+
#
283+
# RA_CONTROL_PANEL
284+
#
285+
#- restore_configs
286+
#- opt_enable RA_CONTROL_PANEL PINS_DEBUGGING
287+
#- build_marlin
288+
#
289+
######## I2C LCD/PANELS ##############
290+
#
291+
# !!!ATTENTION!!!
292+
# Most I2C configurations are failing at the moment because they require
293+
# a different Liquid Crystal library "LiquidTWI2".
294+
#
295+
# LCD_SAINSMART_I2C_1602
296+
#
297+
#- restore_configs
298+
#- opt_enable LCD_SAINSMART_I2C_1602
299+
#- build_marlin
300+
#
301+
# LCD_I2C_PANELOLU2
302+
#
303+
#- restore_configs
304+
#- opt_enable LCD_I2C_PANELOLU2
305+
#- build_marlin
306+
#
307+
# LCD_I2C_VIKI
308+
#
309+
#- restore_configs
310+
#- opt_enable LCD_I2C_VIKI
311+
#- build_marlin
312+
#
313+
# LCM1602
314+
#
315+
#- restore_configs
316+
#- opt_enable LCM1602
317+
#- build_marlin
318+
#
319+
# Language files test with REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER
320+
#
321+
#- restore_configs
322+
#- opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT
323+
#- for lang in an bg ca zh_CN zh_TW cz da de el el-gr en es eu fi fr gl hr it jp-kana nl pl pt pt-br ru sk tr uk test; do opt_set LCD_LANGUAGE $lang; echo "compile with language $lang ..."; build_marlin
324+
#
325+
#- restore_configs
326+
#- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT
327+
#- for lang in an bg ca zh_CN zh_TW cz da de el el-gr en es eu fi fr gl hr it jp-kana nl pl pt pt-br ru sk tr uk test; do opt_set LCD_LANGUAGE $lang; echo "compile with language $lang ..."; build_marlin
328+
#
329+
#
330+
######## Example Configurations ##############
331+
#
332+
# BQ Hephestos 2
333+
#- restore_configs
334+
#- use_example_configs Hephestos_2
335+
#- build_marlin
336+
#
337+
# Delta Config (generic) + ABL bilinear + PROBE_MANUALLY
338+
- use_example_configs delta/generic
339+
- opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER DELTA_CALIBRATION_MENU AUTO_BED_LEVELING_BILINEAR PROBE_MANUALLY
340+
- build_marlin
341+
#
342+
# Delta Config (generic) + UBL + ALLEN_KEY + OLED_PANEL_TINYBOY2 + EEPROM_SETTINGS
343+
#
344+
- use_example_configs delta/generic
345+
- opt_enable AUTO_BED_LEVELING_UBL RESTORE_LEVELING_AFTER_G28 Z_PROBE_ALLEN_KEY EEPROM_SETTINGS EEPROM_CHITCHAT
346+
- opt_enable OLED_PANEL_TINYBOY2 MESH_EDIT_GFX_OVERLAY
347+
- build_marlin
348+
#
349+
# Delta Config (FLSUN AC because it's complex)
350+
#
351+
- use_example_configs delta/FLSUN/auto_calibrate
352+
- build_marlin
353+
#
354+
# Makibox Config need to check board type for Teensy++ 2.0
355+
#
356+
#- use_example_configs makibox
357+
#- build_marlin
358+
#
359+
# SCARA with TMC2130
360+
#
361+
- use_example_configs SCARA
362+
- opt_enable AUTO_BED_LEVELING_BILINEAR FIX_MOUNTED_PROBE USE_ZMIN_PLUG EEPROM_SETTINGS EEPROM_CHITCHAT ULTIMAKERCONTROLLER
363+
- opt_set X_DRIVER_TYPE TMC2130
364+
- opt_set Y_DRIVER_TYPE TMC2130
365+
- opt_set Z_DRIVER_TYPE TMC2130
366+
- opt_set E0_DRIVER_TYPE TMC2130
367+
- opt_enable_adv MONITOR_DRIVER_STATUS STEALTHCHOP HYBRID_THRESHOLD SENSORLESS_HOMING
368+
- build_marlin
369+
#
370+
# TMC2208 Config
371+
#
372+
- restore_configs
373+
- opt_set X_DRIVER_TYPE TMC2208
374+
- opt_set Y_DRIVER_TYPE TMC2208
375+
- opt_set Z_DRIVER_TYPE TMC2208
376+
- opt_set E0_DRIVER_TYPE TMC2208
377+
- opt_enable_adv MONITOR_DRIVER_STATUS STEALTHCHOP HYBRID_THRESHOLD TMC_DEBUG
378+
- build_marlin
379+
#
380+
# tvrrug Config need to check board type for sanguino atmega644p
381+
#
382+
#- use_example_configs tvrrug/Round2
383+
#- build_marlin
384+
#
385+
#
386+
######## Board Types #############
387+
#
388+
# To be added in nightly test branch
389+
#

0 commit comments

Comments
 (0)