7684 Commits (d8a4db72ac1dc13e5cef532559526d0d9d033f13)

Author SHA1 Message Date
etagle d8a4db72ac Reimplemented SW SPI for DUE in assembler. This allows to reach 12Mhz as SPI Clock and improves 4x the transfer speed to the SD card. This is REQUIRED so access to SD from USB is usable (allows 600Kbytes/second transfer speeds) 7 years ago
etagle 99b2fc2066 Adjusted timings on the ST7290 u8glib so RE-ARM and RAMPS4DUE have no problems when writing to the graphics LCD. This fixes Issue #8787 - Special thanks to Bergerac56 for testinf this out !!! 7 years ago
etagle 498ea7512a Exposed SDCard interface to the public, to USB MSD is able to read/write sectors on the SD card 7 years ago
etagle 9aff55ed1f Backported latest improvements and fixes from the SdFat liibrary to our own version. This includes support for CRC7 validation on commands and also, made sure that even if using software SPI implementations, SD card speed is properly adjusted when transitioning from INITIALIZATION to DATA TRANSFER mode. ALL HALs implement spiInit, even in SW SPI mode, and we NEED this change to improve 25x the transfer speed of the SD card and allow implementations of USB MSD 7 years ago
etagle 7447979110 Fixed some warnings on the MakerParts configuration, when compiling using the AVR toolchain (integer overflow on the preprocessor calculations) 7 years ago
etagle b6f9c333d4 Adding hooks into the idle loop so HALs can execute 2nd plane tasks, such as serving SD card read/writes requested from the USB MSD layer 7 years ago
victorpv 2ec4113cb2 Changes to STM32F1 HAL (#8833)
Some to correct missing files from previous PR to completely avoid
HardwareTimer Class (reduce overhead). Some changes to formatting.
Changes to DMA ADC to work correctly.
Change to F1 sanity check.
7 years ago
Scott Lahteine 913d9e9a59 Matching sign across filwidth vars 7 years ago
Scott Lahteine 3cde4c78b2 Use wildcard *.cpp in Makefile
Based on #8738
Addressing #8731
7 years ago
Scott Lahteine fdc5e72720 A single setting to validate filament width 7 years ago
Scott Lahteine 93a6a4e1a8 Add VOLUMETRIC capability item 7 years ago
Scott Lahteine 933f76fda3 Option to disable all volumetric extrusion 7 years ago
Scott Lahteine 31e33d2acd Add NO_VOLUMETRICS to example configs 7 years ago
Scott Lahteine fc9ee1a4de Fix up serial sanity check 7 years ago
Scott Lahteine de5ca96654 More parity with 1.1.x, plus whitespace 7 years ago
Scott Lahteine a891d8d738
Merge pull request #8820 from thinkyhead/bf2_mks_sbase_spi
[2.0.x] Fix SDSUPPORT for MKS SBASE
7 years ago
Scott Lahteine 097a26007f Fix SDSUPPORT for MKS SBASE
Fix supplied by @cjsoong in https://github.com/MarlinFirmware/Marlin/issues/8750#issuecomment-350779983
7 years ago
Scott Lahteine 8df5955da4 Revert "Reset timer count before first block step"
This reverts commit 5cf6a062e3.
7 years ago
Scott Lahteine 957bbab57f Update inc files for parity with 1.1.x 7 years ago
Scott Lahteine f79026acc1 Apply MKS_12864OLED_SSD1306 to examples
Followup to #8814
7 years ago
Dan Delaney b055d8c39c [2.0.x] Adding support for using the MKS_12864OLED with the SSD1306 controller (#8814)
* Adding support for using the MKS_12864OLED with the SSD1306 controller

* Update comment for correct controller type
7 years ago
Scott Lahteine 15d05748df Adding support for the Tronxy and Zonestar LCD 7 years ago
Scott Lahteine 9abbcc3ee0 Apply ZONESTAR_LCD to example configs 7 years ago
Dave Johnson aed0cfa3d1 Various fixes for 2.0.x configs 7 years ago
Scott Lahteine 674deaf223 Add NANODLP_ALL_AXIS to config examples 7 years ago
robpower 5595098063 V2 Extended NanoDLP_Z_Move_Sync to G4 & G28,Added all axis option. 7 years ago
Scott Lahteine 2b7db90340 Bring Malyan M200 config up to date 7 years ago
Scott Lahteine 8b12371e45 Change some hex case 7 years ago
Scott Lahteine 4782acf60e
Merge pull request #8780 from fiveangle/bf2-typo
[2.0.x] typo in Marlin.cpp
7 years ago
teemuatlut 0cd1e91056 [2.0.x] TMC driver update (#8769) 7 years ago
Scott Lahteine 09d13f186f
Correct unskew, after all 7 years ago
Dave Johnson 0d531d9655 Missing HAS_HEAT_BED conditional
Fixes issue found in #8779
7 years ago
Dave Johnson 69efb87d19 typo in Marlin.cpp 7 years ago
Scott Lahteine 368c124de8 Fix Planner::unskew parity with skew 7 years ago
Scott Lahteine cf2193c07f Comment, fix filament width sensor 7 years ago
Scott Lahteine a641992c1d
Merge pull request #8762 from victorpv/patch-2
[2.0.x] STM32F1 HAL: Fix issue #8585. Updates to readme.
7 years ago
Eduardo José Tagle ac168a03c8 Fixes for the Arduino DUE HAL (Serial Port, Graphics Display, EEPROM emulation) (#8651)
* Fixing the DUE serial port assignments: Now -1 means the SAM3x USB Device emulating a serial port, and 0 means the USB to serial adapter included as a programming port

* Improving the Fast IO port access implementation on Arduino DUE

* Implemented EEPROM emulation on Due by storing data on the internal FLASH (with wear leveling)

* Implemented a Software SPI for the ST7920 graphics display for the Arduino RAMPS for DUE, as the default one in u8glib is clocking data too fast on ARM, and the display does not understand it.

* Fixing the case where the serial port selected is the USB device

* Adding configuration for the Makerparts 3D printer (www.makerparts.net)

* Tuned MakerParts acceleration on X and Y axis so it never loses steps. Also adjusted pulses per mm to match default hw configuration

* Fine tuned Maximum acceleration for MakerParts printer

* Style cleanup

* Style cleanup (2)

* Style fixes (3)

* Fixing the DUE serial port assignments: Now -1 means the SAM3x USB Device emulating a serial port, and 0 means the USB to serial adapter included as a programming port

* Improving the Fast IO port access implementation on Arduino DUE

* Implemented EEPROM emulation on Due by storing data on the internal FLASH (with wear leveling)

* Implemented a Software SPI for the ST7920 graphics display for the Arduino RAMPS for DUE, as the default one in u8glib is clocking data too fast on ARM, and the display does not understand it.

* Fixing the case where the serial port selected is the USB device

* Adding configuration for the Makerparts 3D printer (www.makerparts.net)

* Tuned MakerParts acceleration on X and Y axis so it never loses steps. Also adjusted pulses per mm to match default hw configuration

* Fine tuned Maximum acceleration for MakerParts printer

* Style cleanup

* Style changes to u8g_dev_st7920_128_64_sw_spi.cpp

* Even more improvements to the FastIO HAL for DUE. Now WRITE() is 2 ASM instructions, if value is constant, and 5 cycles if value is not constant. Previously, it was 7..8 cycles

* After some problems and debugging, seems we need to align the interrupt vector table to 256 bytes, otherwise, the program sometimes stops working

* Moved comments out of macro, otherwise, token pasting does not properly work sometimes

* Improved Software SPI implementation on DUE: Now it honors the selected speed passed to spiInit(). This allows much faster SDCARD access, improving SDCARD menus and reducing latency

* Update u8g_dev_st7920_128_64_sw_spi.cpp

* Disabling EEPROM over FLASH emulatiion if an I2C or SPI EEPROM is present
7 years ago
victorpv 084f2434a7
Update readme.md 7 years ago
victorpv 7c7ae5ebef
Delete duplicated file. 7 years ago
victorpv 4feffca178
fix for issue #8585
As reported in this issue:
https://github.com/MarlinFirmware/Marlin/issues/8585
I have it working fine in my local copy like that change.
7 years ago
Scott Lahteine d568e586b7 Fix up ubl_motion indentation 7 years ago
Scott Lahteine 24f9bec6f4 UBL + DUAL_X_CARRIAGE compatibility 7 years ago
Scott Lahteine 6d0678d963 Omit unused UBL motion code 7 years ago
Scott Lahteine 3255712343 Skew Correction for UBL
Also remove unused grid slicing function when using UBL segmented.
7 years ago
Scott Lahteine 3d796d8040 Move debug code 7 years ago
Scott Lahteine 3db5303bfe _buffer_line => buffer_segment 7 years ago
Scott Lahteine a71d2f3f40 UBL_DELTA => UBL_SEGMENTED 7 years ago
Scott Lahteine 73e32925e4 References are better for array args 7 years ago
Scott Lahteine 125c572d97 Tweak M114 detail 7 years ago
victorpv a5150c83a2 [2.0.x] Multiple updates to STM32F1 HAL (#8733)
* STM32F1 HAL

Adding files for STM32F1 HAL based on libmaple/stm32duino core.
Current persistent_store uses cardreader changes to be sent in separate
commit, but could be changed to use i2c eeprom.
There is another persistent_store implementation that uses the MCU flash memory
to emulate eeprom
Adding readme with some information about the stm32 HAL.

* Switch to Timer4 to avoid a hard reset on STM32F103C6 boards

On bluepill STM32F103C6 boards, using Timer5 results in a error() vector call. Switch to 4 since these are both general purpose, 16 bit timers.

* Add support for EEPROM emulation using Flash

Some low end machines doe not have EEPROM support. Simulate it using the last two pages of flash. Flash does not allow rewrite between erases, so skip writing the working version if that's enabled.

* Basic Pins for a malyan M200

This is a work in progress to go hand in hand with the STM32 work.

* Add support for ADC with DMA. This work has exposed a problem with the pin enumerations in STM boards vs what marlin expects (i.e, try defining PA0 as a temp pin). The hack can be removed with we go to fastio completely. To see this work, set something in adc_pins to a value like PA0 and connect your pullup resistor'd thermistor.

* Missing file - change HAL_adc_init to actually do something

We have an actual ADC init function now.

* Remove pinmode hack

Remove the pin mode hack that I was using to init PA0.

Updated Readme.md

* Several changes to timers and GPIO

Faster GPIO, and faster timer functions by accesing registers and
libmaple.
Still more changes pending for the Timer's code to skip using the
HardwareTimer class altogether.

Switch all enums to be within #defines

This change allows a user to have, for instance, TEMP_4 and TEMP_BED definied but nothing else. The enums which are not defined move "out", allowing the first ones to take the slots in the enum, and since the array is sized on ADC_PIN_COUNT, we always have the right size data and in order.

* Update Malyan M200 pins

Update Malyan M200 pins with correct fan values.

* Test all pins on actual hardware, update definitions

Some of the pin definitions were from knowlege base/pdfs. Now they've been tested against actual hardware. This should be very close to final.

* Update HAL_timers_Stm32f1.cpp

* Add sample configurations for Malyan M200

Add sample configuration for Malyan M200 without bed leveling, and move fan to auto cool E0 since this printer by default has only one fan.


Choose the timer based on MCU defintion. Timer5 is not valid on C8/CB class boards, so use Timer4 for the step timer.


readme.md update

* Updates to timers, and some stm32 boards definitiions

* Correct pin toggle macro.

* Remove duplicated Malyan M200 entry from pins.h

* Update configuration_store.cpp

* Formatting, indentation

* Formatting in HAL_Stm32f1.cpp
7 years ago