diff --git a/.gitattributes b/.gitattributes index d511b4ea94..2588229e05 100644 --- a/.gitattributes +++ b/.gitattributes @@ -17,4 +17,3 @@ *.png binary *.jpg binary *.fon binary - diff --git a/.gitignore b/.gitignore index da3f8e2256..826d41ea2d 100755 --- a/.gitignore +++ b/.gitignore @@ -128,17 +128,17 @@ tags *.sln *.vcxproj *.vcxproj.filters -Marlin/Release/ -Marlin/Debug/ -Marlin/__vm/ -Marlin/.vs/ +src/Release/ +src/Debug/ +src/__vm/ +src/.vs/ #Visual Studio Code .vscode #cmake CMakeLists.txt -Marlin/CMakeLists.txt +src/CMakeLists.txt CMakeListsPrivate.txt #CLion diff --git a/.travis.yml b/.travis.yml index 8bfd021d87..e74348761d 100644 --- a/.travis.yml +++ b/.travis.yml @@ -10,7 +10,7 @@ notifications: # Cache PlatformIO packages using Travis CI container-based infrastructure sudo: false -cache: +cache: pip: true directories: - "~/.platformio" @@ -25,7 +25,7 @@ before_install: # # Publish the buildroot script folder - chmod +x ${TRAVIS_BUILD_DIR}/buildroot/bin/* - - export PATH=${TRAVIS_BUILD_DIR}/buildroot/bin/:${PATH} + - export PATH=${TRAVIS_BUILD_DIR}/buildroot/bin/:${PATH} install: - pip install -U platformio @@ -36,19 +36,20 @@ before_script: - cd ${TRAVIS_BUILD_DIR} # # Generate custom version include - - generate_version_header_for_marlin ${TRAVIS_BUILD_DIR}/Marlin - - cat ${TRAVIS_BUILD_DIR}/Marlin/_Version.h + - generate_version_header_for_marlin ${TRAVIS_BUILD_DIR}/Marlin/src/inc + - cat ${TRAVIS_BUILD_DIR}/Marlin/src/inc/_Version.h # script: # # Backup Configuration.h, Configuration_adv.h, and pins_RAMPS.h # - - cp Marlin/Configuration.h Marlin/Configuration.h.backup - - cp Marlin/Configuration_adv.h Marlin/Configuration_adv.h.backup - - cp Marlin/pins_RAMPS.h Marlin/pins_RAMPS.h.backup + - cp Marlin/src/config/Configuration.h Marlin/src/config/Configuration.h.backup + - cp Marlin/src/config/Configuration_adv.h Marlin/src/config/Configuration_adv.h.backup + - cp Marlin/src/pins/pins_RAMPS.h Marlin/src/pins/pins_RAMPS.h.backup # # Build with the default configurations # + - restore_configs - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # # Test 2 extruders (one MAX6675) and heated bed on basic RAMPS 1.4 @@ -60,7 +61,7 @@ script: - opt_set TEMP_SENSOR_0 -2 - opt_set TEMP_SENSOR_1 1 - opt_set TEMP_SENSOR_BED 1 - - opt_enable PIDTEMPBED FIX_MOUNTED_PROBE Z_SAFE_HOMING ARC_P_CIRCLES CNC_WORKSPACE_PLANES + - opt_enable PIDTEMPBED Z_SAFE_HOMING ARC_P_CIRCLES CNC_WORKSPACE_PLANES - opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT EEPROM_SETTINGS - opt_enable BLINKM PCA9632 RGB_LED NEOPIXEL_RGBW_LED - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} @@ -68,7 +69,7 @@ script: # # ...with AUTO_BED_LEVELING_LINEAR, Z_MIN_PROBE_REPEATABILITY_TEST, and DEBUG_LEVELING_FEATURE # - - opt_enable AUTO_BED_LEVELING_LINEAR Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE + - opt_enable AUTO_BED_LEVELING_LINEAR BLTOUCH Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE - opt_enable_adv FWRETRACT MAX7219_DEBUG - opt_set ABL_GRID_POINTS_X 16 - opt_set ABL_GRID_POINTS_Y 16 @@ -77,15 +78,15 @@ script: # Test a simple build of AUTO_BED_LEVELING_UBL # - restore_configs - - opt_enable AUTO_BED_LEVELING_UBL UBL_G26_MESH_EDITING ENABLE_LEVELING_FADE_HEIGHT FIX_MOUNTED_PROBE EEPROM_SETTINGS G3D_PANEL - - opt_enable_adv CUSTOM_USER_MENUS I2C_POSITION_ENCODERS BABYSTEPPING + - opt_enable AUTO_BED_LEVELING_UBL UBL_G26_MESH_EDITING ENABLE_LEVELING_FADE_HEIGHT BLTOUCH EEPROM_SETTINGS G3D_PANEL + - opt_enable_adv CUSTOM_USER_MENUS I2C_POSITION_ENCODERS BABYSTEPPING BABYSTEP_ZPROBE_OFFSET - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # # Test a Sled Z Probe # ...with AUTO_BED_LEVELING_LINEAR, DEBUG_LEVELING_FEATURE, EEPROM_SETTINGS, and EEPROM_CHITCHAT # - restore_configs - - opt_enable Z_PROBE_SLED AUTO_BED_LEVELING_LINEAR DEBUG_LEVELING_FEATURE EEPROM_SETTINGS EEPROM_CHITCHAT + - opt_enable Z_PROBE_SLED AUTO_BED_LEVELING_LINEAR DEBUG_LEVELING_FEATURE EEPROM_SETTINGS - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # # Test a Servo Probe @@ -94,7 +95,7 @@ script: - restore_configs - opt_enable NUM_SERVOS Z_ENDSTOP_SERVO_NR Z_SERVO_ANGLES DEACTIVATE_SERVOS_AFTER_MOVE - opt_set NUM_SERVOS 1 - - opt_enable AUTO_BED_LEVELING_3POINT DEBUG_LEVELING_FEATURE EEPROM_SETTINGS EEPROM_CHITCHAT + - opt_enable AUTO_BED_LEVELING_3POINT DEBUG_LEVELING_FEATURE EEPROM_SETTINGS - opt_enable_adv EXTENDED_CAPABILITIES_REPORT AUTO_REPORT_TEMPERATURES AUTOTEMP G38_PROBE_TARGET - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # @@ -111,7 +112,7 @@ script: - restore_configs - opt_set MOTHERBOARD BOARD_MINIRAMBO - opt_enable PROBE_MANUALLY AUTO_BED_LEVELING_BILINEAR LCD_BED_LEVELING ULTIMAKERCONTROLLER - - opt_enable EEPROM_SETTINGS EEPROM_CHITCHAT M100_FREE_MEMORY_WATCHER M100_FREE_MEMORY_DUMPER M100_FREE_MEMORY_CORRUPTOR INCH_MODE_SUPPORT TEMPERATURE_UNITS_SUPPORT + - opt_enable EEPROM_SETTINGS M100_FREE_MEMORY_WATCHER M100_FREE_MEMORY_DUMPER M100_FREE_MEMORY_CORRUPTOR INCH_MODE_SUPPORT TEMPERATURE_UNITS_SUPPORT - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # # Test 5 extruders on AZTEEG_X3_PRO (can use any board with >=5 extruders defined) @@ -292,14 +293,14 @@ script: # # Delta Config (generic) + ABL bilinear + PROBE_MANUALLY - use_example_configs delta/generic - - opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER DELTA_CALIBRATION_MENU AUTO_BED_LEVELING_BILINEAR PROBE_MANUALLY + - opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER DELTA_AUTO_CALIBRATION DELTA_CALIBRATION_MENU AUTO_BED_LEVELING_BILINEAR PROBE_MANUALLY - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # # Delta Config (generic) + UBL + ALLEN_KEY + OLED_PANEL_TINYBOY2 + EEPROM_SETTINGS # - use_example_configs delta/generic - opt_disable DISABLE_MIN_ENDSTOPS - - opt_enable AUTO_BED_LEVELING_UBL Z_PROBE_ALLEN_KEY EEPROM_SETTINGS EEPROM_CHITCHAT OLED_PANEL_TINYBOY2 + - opt_enable AUTO_BED_LEVELING_UBL Z_PROBE_ALLEN_KEY EEPROM_SETTINGS OLED_PANEL_TINYBOY2 - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # # Delta Config (FLSUN AC because it's complex) @@ -315,7 +316,7 @@ script: # SCARA with TMC2130 # - use_example_configs SCARA - - opt_enable AUTO_BED_LEVELING_BILINEAR FIX_MOUNTED_PROBE USE_ZMIN_PLUG EEPROM_SETTINGS EEPROM_CHITCHAT ULTIMAKERCONTROLLER + - opt_enable AUTO_BED_LEVELING_BILINEAR FIX_MOUNTED_PROBE USE_ZMIN_PLUG EEPROM_SETTINGS ULTIMAKERCONTROLLER - opt_enable_adv HAVE_TMC2130 X_IS_TMC2130 Y_IS_TMC2130 Z_IS_TMC2130 - opt_enable_adv AUTOMATIC_CURRENT_CONTROL STEALTHCHOP HYBRID_THRESHOLD SENSORLESS_HOMING - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} @@ -334,64 +335,48 @@ script: - export TEST_PLATFORM="-e teensy35" - restore_configs - opt_set MOTHERBOARD BOARD_TEENSY35_36 - - cp Marlin/Configuration.h Marlin/Configuration.h.backup - - cp Marlin/Configuration_adv.h Marlin/Configuration_adv.h.backup - - cp Marlin/pins_RAMPS.h Marlin/pins_RAMPS.h.backup + - cp Marlin/src/config/Configuration.h Marlin/src/config/Configuration.h.backup + - cp Marlin/src/config/Configuration_adv.h Marlin/src/config/Configuration_adv.h.backup + - cp Marlin/src/pins/pins_RAMPS.h Marlin/src/pins/pins_RAMPS.h.backup # # Test Teensy3.5 with default config # - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # - # Test heated bed temperature sensor - # - - opt_set TEMP_SENSOR_BED 1 - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # Test 2 extruders on basic RAMPS 1.4 - # - - opt_set EXTRUDERS 2 - - opt_set TEMP_SENSOR_1 1 - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # Test PIDTEMPBED - # - - restore_configs - - opt_enable PIDTEMPBED - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # Test a "Fix Mounted" Probe along with Safe Homing + # Test as many features together as possible # - restore_configs - - opt_enable FIX_MOUNTED_PROBE Z_SAFE_HOMING - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # ...with AUTO_BED_LEVELING_LINEAR, Z_MIN_PROBE_REPEATABILITY_TEST, and DEBUG_LEVELING_FEATURE - # - - opt_enable AUTO_BED_LEVELING_LINEAR Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE + - opt_set EXTRUDERS 2 + - opt_set TEMP_SENSOR_0 1 + - opt_set TEMP_SENSOR_1 5 + - opt_set TEMP_SENSOR_BED 1 + - opt_enable ULTIMAKERCONTROLLER SDSUPPORT + - opt_enable FILAMENT_WIDTH_SENSOR FILAMENT_LCD_DISPLAY + - opt_enable FIX_MOUNTED_PROBE Z_SAFE_HOMING AUTO_BED_LEVELING_BILINEAR Z_MIN_PROBE_REPEATABILITY_TEST DEBUG_LEVELING_FEATURE + - opt_enable PRINTCOUNTER NOZZLE_PARK_FEATURE NOZZLE_CLEAN_FEATURE PIDTEMPBED EEPROM_SETTINGS INCH_MODE_SUPPORT TEMPERATURE_UNITS_SUPPORT M100_FREE_MEMORY_WATCHER + - opt_enable_adv FILAMENT_CHANGE_FEATURE LCD_INFO_MENU ARC_SUPPORT BEZIER_CURVE_SUPPORT EXPERIMENTAL_I2CBUS EXTENDED_CAPABILITIES_REPORT AUTO_REPORT_TEMPERATURES SDCARD_SORT_ALPHA + - opt_set_adv I2C_SLAVE_ADDRESS 63 - opt_set ABL_GRID_POINTS_X 16 - opt_set ABL_GRID_POINTS_Y 16 - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # - # Test a Sled Z Probe + # Test a Sled Z Probe with Linear leveling # - restore_configs - opt_enable Z_PROBE_SLED - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # ...with AUTO_BED_LEVELING_LINEAR, DEBUG_LEVELING_FEATURE, EEPROM_SETTINGS, and EEPROM_CHITCHAT - # - - opt_enable AUTO_BED_LEVELING_LINEAR DEBUG_LEVELING_FEATURE EEPROM_SETTINGS EEPROM_CHITCHAT + - opt_enable AUTO_BED_LEVELING_LINEAR DEBUG_LEVELING_FEATURE EEPROM_SETTINGS - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # # Test a Servo Probe # - restore_configs - opt_enable NUM_SERVOS Z_ENDSTOP_SERVO_NR Z_SERVO_ANGLES DEACTIVATE_SERVOS_AFTER_MOVE + - opt_enable AUTO_BED_LEVELING_3POINT DEBUG_LEVELING_FEATURE EEPROM_SETTINGS - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # # ...with AUTO_BED_LEVELING_3POINT, DEBUG_LEVELING_FEATURE, EEPROM_SETTINGS, EEPROM_CHITCHAT, EXTENDED_CAPABILITIES_REPORT, and AUTO_REPORT_TEMPERATURES # - - opt_enable AUTO_BED_LEVELING_3POINT DEBUG_LEVELING_FEATURE EEPROM_SETTINGS EEPROM_CHITCHAT + - opt_enable AUTO_BED_LEVELING_3POINT DEBUG_LEVELING_FEATURE EEPROM_SETTINGS - opt_enable_adv EXTENDED_CAPABILITIES_REPORT AUTO_REPORT_TEMPERATURES - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # @@ -401,14 +386,6 @@ script: - opt_enable MESH_BED_LEVELING MESH_G28_REST_ORIGIN MANUAL_BED_LEVELING ULTIMAKERCONTROLLER - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # - # Test EEPROM_SETTINGS, EEPROM_CHITCHAT, M100_FREE_MEMORY_WATCHER, - # INCH_MODE_SUPPORT, TEMPERATURE_UNITS_SUPPORT - # - - restore_configs - # - opt_enable M100_FREE_MEMORY_WATCHER // Compiler error! - - opt_enable EEPROM_SETTINGS EEPROM_CHITCHAT INCH_MODE_SUPPORT TEMPERATURE_UNITS_SUPPORT - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # # Mixing Extruder # - restore_configs @@ -423,7 +400,7 @@ script: #- opt_set TEMP_SENSOR_1 1 #- opt_enable USE_XMAX_PLUG #- opt_enable_adv DUAL_X_CARRIAGE - #- build_marlin_teensy35 + #- build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # # Test SWITCHING_EXTRUDER # @@ -435,31 +412,6 @@ script: - opt_enable SWITCHING_EXTRUDER ULTIMAKERCONTROLLER - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} # - # Test FILAMENT_CHANGE_FEATURE and LCD_INFO_MENU - # - - restore_configs - - opt_enable ULTIMAKERCONTROLLER - - opt_enable_adv FILAMENT_CHANGE_FEATURE LCD_INFO_MENU - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # Enable filament sensor - # - - restore_configs - - opt_enable FILAMENT_WIDTH_SENSOR - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # Enable filament sensor with LCD display - # - - opt_enable ULTIMAKERCONTROLLER FILAMENT_LCD_DISPLAY - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # Enable BEZIER_CURVE_SUPPORT, EXPERIMENTAL_I2CBUS, and I2C_SLAVE_ADDRESS - # - - restore_configs - - opt_enable_adv BEZIER_CURVE_SUPPORT EXPERIMENTAL_I2CBUS - - opt_set_adv I2C_SLAVE_ADDRESS 63 - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # # Enable COREXY # - restore_configs @@ -479,110 +431,3 @@ script: - pins_set RAMPS X_MAX_PIN -1 - opt_set_adv Z2_MAX_PIN 2 - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # Test PRINTCOUNTER - # - - restore_configs - - opt_enable PRINTCOUNTER - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # Test NOZZLE_PARK_FEATURE - # - - restore_configs - - opt_enable NOZZLE_PARK_FEATURE - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # Test NOZZLE_CLEAN_FEATURE - # - - restore_configs - - opt_enable NOZZLE_CLEAN_FEATURE - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # - ######## STANDARD LCD/PANELS ############## - # - # ULTRA_LCD - # - - restore_configs - - opt_enable ULTRA_LCD - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # DOGLCD - # - - restore_configs - - opt_enable DOGLCD - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # ULTIMAKERCONTROLLER - # - - restore_configs - - opt_enable ULTIMAKERCONTROLLER - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # MAKRPANEL - # Needs to use Melzi and Sanguino hardware - # - #- restore_configs - #- opt_enable MAKRPANEL - #- build_marlin - # - # REPRAP_DISCOUNT_SMART_CONTROLLER, SDSUPPORT, and BABYSTEPPING - # - - restore_configs - - opt_enable REPRAP_DISCOUNT_SMART_CONTROLLER SDSUPPORT BABYSTEPPING - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # G3D_PANEL - # - - restore_configs - - opt_enable G3D_PANEL SDSUPPORT - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER - # - - restore_configs - - opt_enable REPRAP_DISCOUNT_FULL_GRAPHIC_SMART_CONTROLLER SDSUPPORT - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - # REPRAPWORLD_KEYPAD - # - # Cant find configuration details to get it to compile - #- restore_configs - #- opt_enable ULTRA_LCD REPRAPWORLD_KEYPAD REPRAPWORLD_KEYPAD_MOVE_STEP - #- build_marlin - # - # RA_CONTROL_PANEL - # - - restore_configs - - opt_enable RA_CONTROL_PANEL - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} - # - ######## I2C LCD/PANELS ############## - # - # !!!ATTENTION!!! - # Most I2C configurations are failing at the moment because they require - # a different Liquid Crystal library "LiquidTWI2". - # - # LCD_I2C_SAINSMART_YWROBOT - # - #- restore_configs - #- opt_enable LCD_I2C_SAINSMART_YWROBOT - #- build_marlin - # - # LCD_I2C_PANELOLU2 - # - #- restore_configs - #- opt_enable LCD_I2C_PANELOLU2 - #- build_marlin - # - # LCD_I2C_VIKI - # - #- restore_configs - #- opt_enable LCD_I2C_VIKI - #- build_marlin - # - # LCM1602 - # - - restore_configs - - opt_enable LCM1602 - - build_marlin_pio ${TRAVIS_BUILD_DIR} ${TEST_PLATFORM} diff --git a/README.md b/README.md index 2f47231373..6da0746589 100644 --- a/README.md +++ b/README.md @@ -12,18 +12,38 @@ Please test this firmware and let us know if it misbehaves in any way. Volunteer __Not for production use. Use with caution!__ -This branch is used to accumulate patches to the latest 2.0.x release version. Periodically this branch will form the basis for the next minor 2.0.x release. +Marlin 2.0 is bringing open source RepRap firmware to the next level with support of much faster 32-bit processor boards. + +This branch is for patches to the latest 2.0.x release version. Periodically this branch will form the basis for the next minor 2.0.x release. Download earlier versions of Marlin on the [Releases page](https://github.com/MarlinFirmware/Marlin/releases). -## Recent Changes -- Add a Hardware Abstraction Layer (HAL) supporting current AVR platforms -- Planning a HAL for Re:Arm -- Planning a HAL for STM32 +## Hardware Abstraction Layer (HAL) + +Marlin 2.0 adds a new abstraction layer so that Marlin can build and run on 32-bit boards while still retaining the ability to build and run on 8-bit AVR. In this way, new features can be enhanced for more powerful platforms while still supporting AVR, whereas splitting up the code makes it hard to follow these changes and keep them in sync. + +### Current HALs + + name|processor|speed|flash|sram|logic|fpu + ----|---------|-----|-----|----|-----|--- + [Arduino AVR](https://www.arduino.cc/)|ATmega, ATTiny, etc.|16,20MHz|64-256k|2-8k|5V|no + [Teensy++ 2.0](http://www.microchip.com/wwwproducts/en/AT90USB1286)|[AT90USB1286](http://www.microchip.com/wwwproducts/en/AT90USB1286)|16MHz|128k|8k|5V|no + [Due](https://www.arduino.cc/en/Guide/ArduinoDue), [RAMPS-FD](http://www.reprap.org/wiki/RAMPS-FD), etc.|[SAM3X8E ARM-Cortex M3](http://www.microchip.com/wwwproducts/en/ATsam3x8e)|84MHz|512k|64+32k|3.3V|no + [Re-ARM](https://www.kickstarter.com/projects/1245051645/re-arm-for-ramps-simple-32-bit-upgrade)|[LPC1768 ARM-Cortex M3](http://www.nxp.com/products/microcontrollers-and-processors/arm-based-processors-and-mcus/lpc-cortex-m-mcus/lpc1700-cortex-m3/512kb-flash-64kb-sram-ethernet-usb-lqfp100-package:LPC1768FBD100)|100MHz|512k|32+16+16k|3.3-5V|no + [Teensy 3.5](https://www.pjrc.com/store/teensy35.html)|ARM-Cortex M4|120MHz|512k|192k|3.3-5V|yes + [Teensy 3.6](https://www.pjrc.com/store/teensy36.html)|ARM-Cortex M4|180MHz|1M|256k|3.3V|yes + +### HALs in Development + + name|processor|speed|flash|sram|logic|fpu + ----|---------|-----|-----|----|-----|--- + [STEVAL-3DP001V1](http://www.st.com/en/evaluation-tools/steval-3dp001v1.html)|[STM32F401VE Arm-Cortex M4](http://www.st.com/en/microcontrollers/stm32f401ve.html)|84MHz|512k|64+32k|3.3-5V|yes + [Smoothieboard](http://reprap.org/wiki/Smoothieboard)|LPC1769 ARM-Cortex M3|120MHz|512k|64k|3.3-5V|no + [MKS SBASE](http://forums.reprap.org/read.php?13,499322)|LPC1768 ARM-Cortex M3|100MHz|512k|32+16+16k|3.3-5V|no ## Submitting Patches -Proposed patches should be submitted as a Pull Request against this branch ([bugfix-2.0.x](https://github.com/MarlinFirmware/Marlin/tree/bugfix-2.0.x)). +Proposed patches should be submitted as a Pull Request against the ([bugfix-2.0.x](https://github.com/MarlinFirmware/Marlin/tree/bugfix-2.0.x)) branch. - This branch is for fixing bugs and integrating any new features for the duration of the Marlin 2.0.x life-cycle. - Follow the [Coding Standards](http://marlinfw.org/docs/development/coding_standards.html) to gain points with the maintainers. diff --git a/buildroot/bin/build_marlin_teensy35 b/buildroot/bin/build_marlin_teensy35 deleted file mode 100755 index ed6e95cd23..0000000000 --- a/buildroot/bin/build_marlin_teensy35 +++ /dev/null @@ -1,3 +0,0 @@ -#!/usr/bin/env bash - -arduino --verify --board teensy:avr:teensy35:usb=serial,speed=120,opt=o1std,keys=en-us Marlin/Marlin.ino diff --git a/buildroot/bin/opt_disable b/buildroot/bin/opt_disable index 35ad1aad4a..57bb0fd1a2 100755 --- a/buildroot/bin/opt_disable +++ b/buildroot/bin/opt_disable @@ -1,5 +1,5 @@ #!/usr/bin/env bash for opt in "$@" ; do - eval "sed -i 's/\([[:blank:]]*\)\(#define \b${opt}\b\)/\1\/\/\2/g' Marlin/Configuration.h" + eval "sed -i 's/\([[:blank:]]*\)\(#define \b${opt}\b\)/\1\/\/\2/g' Marlin/src/config/Configuration.h" done diff --git a/buildroot/bin/opt_disable_adv b/buildroot/bin/opt_disable_adv index 80d83183e5..59f6c6b6e2 100755 --- a/buildroot/bin/opt_disable_adv +++ b/buildroot/bin/opt_disable_adv @@ -1,5 +1,5 @@ #!/usr/bin/env bash for opt in "$@" ; do - eval "sed -i 's/\([[:blank:]]*\)\(#define \b${opt}\b\)/\1\/\/\2/g' Marlin/Configuration_adv.h" + eval "sed -i 's/\([[:blank:]]*\)\(#define \b${opt}\b\)/\1\/\/\2/g' Marlin/src/config/Configuration_adv.h" done diff --git a/buildroot/bin/opt_enable b/buildroot/bin/opt_enable index 7b119fa15f..b049b3d8e0 100755 --- a/buildroot/bin/opt_enable +++ b/buildroot/bin/opt_enable @@ -1,5 +1,5 @@ #!/usr/bin/env bash for opt in "$@" ; do - eval "sed -i 's/\/\/[[:blank:]]*\(#define \b${opt}\b\)/\1/g' Marlin/Configuration.h" + eval "sed -i 's/\/\/[[:blank:]]*\(#define \b${opt}\b\)/\1/g' Marlin/src/config/Configuration.h" done diff --git a/buildroot/bin/opt_enable_adv b/buildroot/bin/opt_enable_adv index a34e56f12c..92b6cbb855 100755 --- a/buildroot/bin/opt_enable_adv +++ b/buildroot/bin/opt_enable_adv @@ -1,5 +1,5 @@ #!/usr/bin/env bash for opt in "$@" ; do - eval "sed -i 's/\/\/[[:blank:]]*\(#define \b${opt}\b\)/\1/g' Marlin/Configuration_adv.h" + eval "sed -i 's/\/\/[[:blank:]]*\(#define \b${opt}\b\)/\1/g' Marlin/src/config/Configuration_adv.h" done diff --git a/buildroot/bin/opt_set b/buildroot/bin/opt_set index cf8c0d850c..26a8478718 100755 --- a/buildroot/bin/opt_set +++ b/buildroot/bin/opt_set @@ -1,3 +1,3 @@ #!/usr/bin/env bash -eval "sed -i 's/\(#define \b${1}\b\).*$/\1 ${2}/g' Marlin/Configuration.h" +eval "sed -i 's/\(#define \b${1}\b\).*$/\1 ${2}/g' Marlin/src/config/Configuration.h" diff --git a/buildroot/bin/opt_set_adv b/buildroot/bin/opt_set_adv index 54076a0bca..21184872d3 100755 --- a/buildroot/bin/opt_set_adv +++ b/buildroot/bin/opt_set_adv @@ -1,3 +1,3 @@ #!/usr/bin/env bash -eval "sed -i 's/\(#define \b${1}\b\).*$/\1 ${2}/g' Marlin/Configuration_adv.h" +eval "sed -i 's/\(#define \b${1}\b\).*$/\1 ${2}/g' Marlin/src/config/Configuration_adv.h" diff --git a/buildroot/bin/pins_set b/buildroot/bin/pins_set index ae6549fb3d..2dc5693937 100755 --- a/buildroot/bin/pins_set +++ b/buildroot/bin/pins_set @@ -1,3 +1,3 @@ #!/usr/bin/env bash -eval "sed -i 's/\(#define \b${2}\b\).*$/\1 ${3}/g' Marlin/pins_${1}.h" +eval "sed -i 's/\(#define \b${2}\b\).*$/\1 ${3}/g' Marlin/src/pins/pins_${1}.h" diff --git a/buildroot/bin/restore_configs b/buildroot/bin/restore_configs index 73240bd438..77094ac23b 100755 --- a/buildroot/bin/restore_configs +++ b/buildroot/bin/restore_configs @@ -1,9 +1,9 @@ #!/usr/bin/env bash -cp Marlin/Configuration.h.backup Marlin/Configuration.h -cp Marlin/Configuration_adv.h.backup Marlin/Configuration_adv.h -cp Marlin/pins_RAMPS.h.backup Marlin/pins_RAMPS.h +cp Marlin/src/config/Configuration.h.backup Marlin/src/config/Configuration.h +cp Marlin/src/config/Configuration_adv.h.backup Marlin/src/config/Configuration_adv.h +cp Marlin/src/pins/pins_RAMPS.h.backup Marlin/src/pins/pins_RAMPS.h -if [ -f Marlin/_Bootscreen.h ]; then - rm Marlin/_Bootscreen.h +if [ -f Marlin/src/config/_Bootscreen.h ]; then + rm Marlin/src/config/_Bootscreen.h fi diff --git a/buildroot/bin/use_example_configs b/buildroot/bin/use_example_configs index 9f55c52e1f..d745de84d4 100755 --- a/buildroot/bin/use_example_configs +++ b/buildroot/bin/use_example_configs @@ -1,7 +1,9 @@ #!/usr/bin/env bash -eval "cp Marlin/example_configurations/${1}/Configuration* Marlin/" +restore_configs -if [ -f "Marlin/example_configurations/${1}/_Bootscreen.h" ]; then - cp "Marlin/example_configurations/${1}/_Bootscreen.h" Marlin/ +eval "cp Marlin/src/config/examples/${1}/Configuration* Marlin/src/config/" + +if [ -f "Marlin/src/config/examples/${1}/_Bootscreen.h" ]; then + cp "Marlin/src/config/examples/${1}/_Bootscreen.h" Marlin/src/config/ fi diff --git a/buildroot/share/cmake/CMakeLists.txt b/buildroot/share/cmake/CMakeLists.txt index 54cef29cc4..1308f8bf97 100644 --- a/buildroot/share/cmake/CMakeLists.txt +++ b/buildroot/share/cmake/CMakeLists.txt @@ -93,11 +93,11 @@ setup_motherboard(${PROJECT_NAME} ${CMAKE_CURRENT_LIST_DIR}/../../../Marlin) #====================================================================# # Setup all source files # -# Incude Marlin.ino to compile libs not included in *.cpp files # +# Include Marlin.ino to compile libs not included in *.cpp files # #====================================================================# -file(GLOB SOURCES "../../../Marlin/*.cpp") -set(${PROJECT_NAME}_SRCS "${SOURCES};../../../Marlin/Marlin.ino") +file(GLOB SOURCES "../../../src/*.cpp") +set(${PROJECT_NAME}_SRCS "${SOURCES};../../../src/Marlin.ino") #====================================================================# # Define the port for uploading code to the Arduino #