You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

.travis.yml 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354
  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.6.10
  26. - wget http://downloads-02.arduino.cc/arduino-1.6.10-linux64.tar.xz
  27. - tar xf arduino-1.6.10-linux64.tar.xz
  28. - sudo mv arduino-1.6.10 /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: Adafruit Neopixel library
  56. - git clone https://github.com/adafruit/Adafruit_NeoPixel.git
  57. - sudo mv Adafruit_NeoPixel /usr/local/share/arduino/libraries/Adafruit_NeoPixel
  58. #
  59. before_script:
  60. #
  61. # Change current working directory to the build dir
  62. - cd ${TRAVIS_BUILD_DIR}
  63. #
  64. # Generate custom version include
  65. - generate_version_header_for_marlin ${TRAVIS_BUILD_DIR}/Marlin
  66. - cat ${TRAVIS_BUILD_DIR}/Marlin/_Version.h
  67. #
  68. script:
  69. #
  70. # Backup Configuration.h, Configuration_adv.h, and pins_RAMPS.h
  71. #
  72. - cp Marlin/Configuration.h Marlin/Configuration.h.backup
  73. - cp Marlin/Configuration_adv.h Marlin/Configuration_adv.h.backup
  74. - cp Marlin/pins_RAMPS.h Marlin/pins_RAMPS.h.backup
  75. #
  76. # Build with the default configurations
  77. #
  78. - build_marlin
  79. #
  80. # Test 2 extruders (one MAX6675) and heated bed on basic RAMPS 1.4
  81. # Test a "Fix Mounted" Probe with Safe Homing, some arc options,
  82. # linear bed leveling, M48, leveling debug, and firmware retraction.
  83. #
  84. - opt_set MOTHERBOARD BOARD_RAMPS_14_EEB
  85. - opt_set EXTRUDERS 2
  86. - opt_set TEMP_SENSOR_0 -2
  87. - opt_set TEMP_SENSOR_1 1
  88. - opt_set TEMP_SENSOR_BED 1
  89. - opt_enable PIDTEMPBED FIX_MOUNTED_PROBE Z_SAFE_HOMING ARC_P_CIRCLES CNC_WORKSPACE_PLANES
  90. - opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT EEPROM_SETTINGS
  91. - opt_enable BLINKM PCA9632 RGB_LED NEOPIXEL_RGBW_LED
  92. - opt_enable AUTO_BED_LEVELING_LINEAR Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE
  93. - opt_enable_adv FWRETRACT
  94. - opt_set ABL_GRID_POINTS_X 16
  95. - opt_set ABL_GRID_POINTS_Y 16
  96. - opt_set_adv FANMUX0_PIN 53
  97. - build_marlin
  98. #
  99. # Test a simple build of AUTO_BED_LEVELING_UBL
  100. #
  101. - restore_configs
  102. - opt_enable AUTO_BED_LEVELING_UBL UBL_G26_MESH_EDITING ENABLE_LEVELING_FADE_HEIGHT FIX_MOUNTED_PROBE EEPROM_SETTINGS G3D_PANEL
  103. - opt_enable_adv CUSTOM_USER_MENUS I2C_POSITION_ENCODERS BABYSTEPPING
  104. - build_marlin
  105. #
  106. # Test a Sled Z Probe
  107. # ...with AUTO_BED_LEVELING_LINEAR, DEBUG_LEVELING_FEATURE, EEPROM_SETTINGS, and EEPROM_CHITCHAT
  108. #
  109. - restore_configs
  110. - opt_enable Z_PROBE_SLED AUTO_BED_LEVELING_LINEAR DEBUG_LEVELING_FEATURE EEPROM_SETTINGS EEPROM_CHITCHAT
  111. - build_marlin
  112. #
  113. # Test a Servo Probe
  114. # ...with AUTO_BED_LEVELING_3POINT, DEBUG_LEVELING_FEATURE, EEPROM_SETTINGS, EEPROM_CHITCHAT, EXTENDED_CAPABILITIES_REPORT, and AUTO_REPORT_TEMPERATURES
  115. #
  116. - restore_configs
  117. - opt_enable NUM_SERVOS Z_ENDSTOP_SERVO_NR Z_SERVO_ANGLES DEACTIVATE_SERVOS_AFTER_MOVE
  118. - opt_set NUM_SERVOS 1
  119. - opt_enable AUTO_BED_LEVELING_3POINT DEBUG_LEVELING_FEATURE EEPROM_SETTINGS EEPROM_CHITCHAT
  120. - opt_enable_adv EXTENDED_CAPABILITIES_REPORT AUTO_REPORT_TEMPERATURES AUTOTEMP G38_PROBE_TARGET
  121. - build_marlin
  122. #
  123. # Test MESH_BED_LEVELING feature, with LCD
  124. #
  125. - restore_configs
  126. - opt_enable MESH_BED_LEVELING MESH_G28_REST_ORIGIN LCD_BED_LEVELING ULTIMAKERCONTROLLER
  127. - build_marlin
  128. #
  129. # Test PROBE_MANUALLY feature, with LCD support,
  130. # EEPROM_SETTINGS, EEPROM_CHITCHAT, M100_FREE_MEMORY_WATCHER,
  131. # INCH_MODE_SUPPORT, TEMPERATURE_UNITS_SUPPORT
  132. #
  133. - restore_configs
  134. - opt_set MOTHERBOARD BOARD_MINIRAMBO
  135. - opt_enable PROBE_MANUALLY AUTO_BED_LEVELING_BILINEAR LCD_BED_LEVELING ULTIMAKERCONTROLLER
  136. - opt_enable EEPROM_SETTINGS EEPROM_CHITCHAT M100_FREE_MEMORY_WATCHER M100_FREE_MEMORY_DUMPER M100_FREE_MEMORY_CORRUPTOR INCH_MODE_SUPPORT TEMPERATURE_UNITS_SUPPORT
  137. - build_marlin
  138. #
  139. # Test 5 extruders on AZTEEG_X3_PRO (can use any board with >=5 extruders defined)
  140. # Include a test for LIN_ADVANCE here also
  141. #
  142. - opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO
  143. - opt_set EXTRUDERS 5
  144. - opt_set TEMP_SENSOR_1 1
  145. - opt_set TEMP_SENSOR_2 5
  146. - opt_set TEMP_SENSOR_3 20
  147. - opt_set TEMP_SENSOR_4 999
  148. - opt_set TEMP_SENSOR_BED 1
  149. - opt_enable_adv LIN_ADVANCE
  150. - build_marlin
  151. #
  152. # Mixing Extruder with 5 steppers
  153. #
  154. - restore_configs
  155. - opt_set MOTHERBOARD BOARD_AZTEEG_X3_PRO
  156. - opt_enable MIXING_EXTRUDER
  157. - opt_set MIXING_STEPPERS 5
  158. - build_marlin
  159. #
  160. # Test DUAL_X_CARRIAGE
  161. #
  162. - restore_configs
  163. - opt_set MOTHERBOARD BOARD_RUMBA
  164. - opt_set EXTRUDERS 2
  165. - opt_set TEMP_SENSOR_1 1
  166. - opt_enable USE_XMAX_PLUG
  167. - opt_enable_adv DUAL_X_CARRIAGE
  168. - build_marlin
  169. #
  170. # Test SPEAKER with BOARD_BQ_ZUM_MEGA_3D and BQ_LCD_SMART_CONTROLLER
  171. #
  172. - restore_configs
  173. - opt_set MOTHERBOARD BOARD_BQ_ZUM_MEGA_3D
  174. - opt_set LCD_FEEDBACK_FREQUENCY_DURATION_MS 10
  175. - opt_set LCD_FEEDBACK_FREQUENCY_HZ 100
  176. - opt_enable BQ_LCD_SMART_CONTROLLER SPEAKER
  177. #
  178. # Test SWITCHING_EXTRUDER
  179. #
  180. - restore_configs
  181. - opt_set MOTHERBOARD BOARD_RUMBA
  182. - opt_set EXTRUDERS 2
  183. - opt_enable NUM_SERVOS
  184. - opt_set NUM_SERVOS 1
  185. - opt_set TEMP_SENSOR_1 1
  186. - opt_enable SWITCHING_EXTRUDER ULTIMAKERCONTROLLER
  187. - build_marlin
  188. #
  189. # Test MINIRAMBO for PWM_MOTOR_CURRENT
  190. # ULTIMAKERCONTROLLER, FILAMENT_LCD_DISPLAY, FILAMENT_WIDTH_SENSOR,
  191. # PRINTCOUNTER, NOZZLE_PARK_FEATURE, NOZZLE_CLEAN_FEATURE, PCA9632,
  192. # Z_DUAL_STEPPER_DRIVERS, Z_DUAL_ENDSTOPS, BEZIER_CURVE_SUPPORT, EXPERIMENTAL_I2CBUS,
  193. # FILAMENT_CHANGE_FEATURE, PARK_HEAD_ON_PAUSE, LCD_INFO_MENU,
  194. #
  195. - restore_configs
  196. - opt_enable ULTIMAKERCONTROLLER FILAMENT_LCD_DISPLAY FILAMENT_WIDTH_SENSOR SDSUPPORT
  197. - opt_enable PRINTCOUNTER NOZZLE_PARK_FEATURE NOZZLE_CLEAN_FEATURE PCA9632
  198. - opt_enable_adv Z_DUAL_STEPPER_DRIVERS Z_DUAL_ENDSTOPS BEZIER_CURVE_SUPPORT EXPERIMENTAL_I2CBUS
  199. - opt_set_adv I2C_SLAVE_ADDRESS 63
  200. - opt_enable_adv FILAMENT_CHANGE_FEATURE PARK_HEAD_ON_PAUSE LCD_INFO_MENU
  201. - pins_set RAMPS X_MAX_PIN -1
  202. - opt_set_adv Z2_MAX_PIN 2
  203. - build_marlin
  204. #
  205. # Enable COREXY
  206. #
  207. - restore_configs
  208. - opt_enable COREXY
  209. - build_marlin
  210. #
  211. # Enable COREYX (swapped)
  212. #
  213. #- restore_configs
  214. #- opt_enable COREYX
  215. #- build_marlin
  216. #
  217. #
  218. ######## Other Standard LCD/Panels ##############
  219. #
  220. # ULTRA_LCD
  221. #
  222. - restore_configs
  223. - opt_enable ULTRA_LCD
  224. - build_marlin
  225. #
  226. # DOGLCD
  227. #
  228. - restore_configs
  229. - opt_enable DOGLCD
  230. - build_marlin
  231. #
  232. # MAKRPANEL
  233. # Needs to use Melzi and Sanguino hardware
  234. #
  235. #- restore_configs
  236. #- opt_enable MAKRPANEL
  237. #- build_marlin
  238. #
  239. # REPRAP_DISCOUNT_SMART_CONTROLLER, SDSUPPORT, BABYSTEPPING, RIGIDBOARD_V2, and DAC_MOTOR_CURRENT_DEFAULT
  240. #
  241. - restore_configs
  242. - opt_set MOTHERBOARD BOARD_RIGIDBOARD_V2
  243. - opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT BABYSTEPPING DAC_MOTOR_CURRENT_DEFAULT
  244. - build_marlin
  245. #
  246. # G3D_PANEL with SDCARD_SORT_ALPHA and STATUS_MESSAGE_SCROLLING
  247. #
  248. - restore_configs
  249. - opt_enable G3D_PANEL SDSUPPORT
  250. - opt_enable_adv SDCARD_SORT_ALPHA STATUS_MESSAGE_SCROLLING
  251. - opt_set_adv SDSORT_GCODE true
  252. - opt_set_adv SDSORT_USES_RAM true
  253. - opt_set_adv SDSORT_USES_STACK true
  254. - opt_set_adv SDSORT_CACHE_NAMES true
  255. - build_marlin
  256. #
  257. # REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER with SDCARD_SORT_ALPHA and STATUS_MESSAGE_SCROLLING
  258. #
  259. - restore_configs
  260. - opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT
  261. - opt_enable_adv SDCARD_SORT_ALPHA STATUS_MESSAGE_SCROLLING
  262. - build_marlin
  263. #
  264. # REPRAPWORLD_KEYPAD
  265. #
  266. # Cant find configuration details to get it to compile
  267. #- restore_configs
  268. #- opt_enable ULTRA_LCD REPRAPWORLD_KEYPAD REPRAPWORLD_KEYPAD_MOVE_STEP
  269. #- build_marlin
  270. #
  271. # RA_CONTROL_PANEL
  272. #
  273. - restore_configs
  274. - opt_enable RA_CONTROL_PANEL PINS_DEBUGGING
  275. - build_marlin
  276. #
  277. ######## I2C LCD/PANELS ##############
  278. #
  279. # !!!ATTENTION!!!
  280. # Most I2C configurations are failing at the moment because they require
  281. # a different Liquid Crystal library "LiquidTWI2".
  282. #
  283. # LCD_I2C_SAINSMART_YWROBOT
  284. #
  285. #- restore_configs
  286. #- opt_enable LCD_I2C_SAINSMART_YWROBOT
  287. #- build_marlin
  288. #
  289. # LCD_I2C_PANELOLU2
  290. #
  291. #- restore_configs
  292. #- opt_enable LCD_I2C_PANELOLU2
  293. #- build_marlin
  294. #
  295. # LCD_I2C_VIKI
  296. #
  297. #- restore_configs
  298. #- opt_enable LCD_I2C_VIKI
  299. #- build_marlin
  300. #
  301. # LCM1602
  302. #
  303. - restore_configs
  304. - opt_enable LCM1602
  305. - build_marlin
  306. #
  307. #
  308. ######## Example Configurations ##############
  309. #
  310. # BQ Hephestos 2
  311. #- restore_configs
  312. #- use_example_configs Hephestos_2
  313. #- build_marlin
  314. #
  315. # Delta Config (generic) + ABL bilinear + PROBE_MANUALLY
  316. - use_example_configs delta/generic
  317. - opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER DELTA_CALIBRATION_MENU AUTO_BED_LEVELING_BILINEAR PROBE_MANUALLY
  318. - build_marlin
  319. #
  320. # Delta Config (generic) + UBL + ALLEN_KEY + OLED_PANEL_TINYBOY2 + EEPROM_SETTINGS
  321. #
  322. - use_example_configs delta/generic
  323. - opt_disable DISABLE_MIN_ENDSTOPS
  324. - opt_enable AUTO_BED_LEVELING_UBL Z_PROBE_ALLEN_KEY EEPROM_SETTINGS EEPROM_CHITCHAT OLED_PANEL_TINYBOY2
  325. - build_marlin
  326. #
  327. # Delta Config (FLSUN AC because it's complex)
  328. #
  329. - use_example_configs delta/FLSUN/auto_calibrate
  330. - build_marlin
  331. #
  332. # Makibox Config need to check board type for Teensy++ 2.0
  333. #
  334. #- use_example_configs makibox
  335. #- build_marlin
  336. #
  337. # SCARA with TMC2130
  338. #
  339. - use_example_configs SCARA
  340. - opt_enable AUTO_BED_LEVELING_BILINEAR FIX_MOUNTED_PROBE USE_ZMIN_PLUG EEPROM_SETTINGS EEPROM_CHITCHAT ULTIMAKERCONTROLLER
  341. - opt_enable_adv HAVE_TMC2130 X_IS_TMC2130 Y_IS_TMC2130 Z_IS_TMC2130
  342. - opt_enable_adv AUTOMATIC_CURRENT_CONTROL STEALTHCHOP HYBRID_THRESHOLD SENSORLESS_HOMING
  343. - build_marlin
  344. #
  345. # tvrrug Config need to check board type for sanguino atmega644p
  346. #
  347. #- use_example_configs tvrrug/Round2
  348. #- build_marlin
  349. #
  350. #
  351. ######## Board Types #############
  352. #
  353. # To be added in nightly test branch
  354. #