diff --git a/Marlin/Makefile b/Marlin/Makefile index 98d035d959..150f07439a 100644 --- a/Marlin/Makefile +++ b/Marlin/Makefile @@ -310,7 +310,7 @@ CXXSRC = WMath.cpp WString.cpp Print.cpp Marlin_main.cpp \ temperature.cpp cardreader.cpp configuration_store.cpp \ watchdog.cpp SPI.cpp servo.cpp Tone.cpp ultralcd.cpp digipot_mcp4451.cpp \ dac_mcp4728.cpp vector_3.cpp least_squares_fit.cpp endstops.cpp stopwatch.cpp utility.cpp \ - printcounter.cpp nozzle.cpp serial.cpp gcode.cpp + printcounter.cpp nozzle.cpp serial.cpp gcode.cpp Max7219_Debug_LEDs.cpp ifeq ($(NEOPIXEL), 1) CXXSRC += Adafruit_NeoPixel.cpp endif diff --git a/Marlin/Marlin_main.cpp b/Marlin/Marlin_main.cpp index 5196bca81f..1134324034 100644 --- a/Marlin/Marlin_main.cpp +++ b/Marlin/Marlin_main.cpp @@ -279,6 +279,10 @@ #include "watchdog.h" #endif +#if ENABLED(MAX7219_DEBUG) + #include "Max7219_Debug_LEDs.h" +#endif + #if ENABLED(NEOPIXEL_RGBW_LED) #include #endif @@ -10292,7 +10296,7 @@ inline void invalid_extruder_error(const uint8_t e) { SET_OUTPUT(FANMUX1_PIN); #if PIN_EXISTS(FANMUX2) SET_OUTPUT(FANMUX2_PIN); - #endif + #endif #endif fanmux_switch(0); } @@ -13201,6 +13205,10 @@ void idle( bool no_stepper_sleep/*=false*/ #endif ) { + #if ENABLED(MAX7219_DEBUG) + Max7219_idle_tasks(); + #endif // MAX7219_DEBUG + lcd_update(); host_keepalive(); @@ -13316,6 +13324,10 @@ void stop() { */ void setup() { + #if ENABLED(MAX7219_DEBUG) + Max7219_init(); + #endif + #ifdef DISABLE_JTAG // Disable JTAG on AT90USB chips to free up pins for IO MCUCR = 0x80; @@ -13467,11 +13479,11 @@ void setup() { SET_OUTPUT(E_MUX1_PIN); SET_OUTPUT(E_MUX2_PIN); #endif - + #if HAS_FANMUX fanmux_init(); #endif - + lcd_init(); #ifndef CUSTOM_BOOTSCREEN_TIMEOUT diff --git a/Marlin/Max7219_Debug_LEDs.cpp b/Marlin/Max7219_Debug_LEDs.cpp new file mode 100644 index 0000000000..a5aa3e50d2 --- /dev/null +++ b/Marlin/Max7219_Debug_LEDs.cpp @@ -0,0 +1,286 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +/** + * This module is normally not enabled. It can be enabled to facilitate + * the display of extra debug information during code development. + * It assumes the existance of a Max7219 LED Matrix. A suitable + * device can be obtained on eBay similar to this: http://www.ebay.com/itm/191781645249 + * for under $2.00 including shipping. + * + * Just connect up +5v and Gnd to give it power. And then 3 wires declared in the + * #define's below. Actual pin assignments can be changed in MAX7219_DEBUG section + * of configuration_adv.h + * + * #define Max7219_clock 77 + * #define Max7219_data_in 78 + * #define Max7219_load 79 + * + * First call Max7219_init() and then there are a number of support functions available + * to control the LED's in the 8x8 grid. + * + * void Max7219_init(); + * void Max7219_PutByte(uint8_t data); + * void Max7219(uint8_t reg, uint8_t data); + * void Max7219_LED_On( int8_t row, int8_t col); + * void Max7219_LED_Off( int8_t row, int8_t col); + * void Max7219_LED_Toggle( int8_t row, int8_t col); + * void Max7219_Clear_Row( int8_t row); + * void Max7219_Clear_Column( int8_t col); + */ + + +#include "Marlin.h" + +#if ENABLED(MAX7219_DEBUG) + #include "planner.h" + #include "stepper.h" + #include "Max7219_Debug_LEDs.h" + + static uint8_t LEDs[8] = {0}; + + void Max7219_PutByte(uint8_t data) { + uint8_t i = 8; + while(i > 0) { + digitalWrite( Max7219_clock, LOW); // tick + if (data & 0x80) // check bit + digitalWrite(Max7219_data_in,HIGH); // send 1 + else + digitalWrite(Max7219_data_in,LOW); // send 0 + digitalWrite(Max7219_clock, HIGH); // tock + data = data << 0x01; + --i; // move to lesser bit + } + } + + void Max7219( uint8_t reg, uint8_t data) { + digitalWrite(Max7219_load, LOW); // begin + Max7219_PutByte(reg); // specify register + Max7219_PutByte(data); // put data + digitalWrite(Max7219_load, LOW); // and tell the chip to load the data + digitalWrite(Max7219_load,HIGH); + } + + void Max7219_LED_On( int8_t row, int8_t col) { + int x_index; + if ( row>=8 || row<0 || col>=8 || col<0) + return; + if ( LEDs[row] & (0x01<=8 || row<0 || col>=8 || col<0) + return; + if ( !(LEDs[row] & (0x01<=8 || row<0 || col>=8 || col<0) + return; + if ( (LEDs[row] & (0x01<=8 || col<0 ) + return; + LEDs[col] = 0; + x_index = 7-col; + Max7219( x_index+1, LEDs[col] ); + } + + void Max7219_Clear_Row( int8_t row) { + int c; + if ( row>=8 || row<0 ) + return; + + for(c=0; c<8; c++) + Max7219_LED_Off( c, row); + } + + void Max7219_Set_Row( int8_t row, uint8_t val) { + int b; + + if ( row<0 || row>7 ) + return; + + if ( val<0 || val>255 ) + return; + + for(b=0; b<8; b++) + if ( val & (0x01 << b) ) + Max7219_LED_On( 7-b, row); + else + Max7219_LED_Off( 7-b, row); + } + + void Max7219_Set_Column( int8_t col, uint8_t val) { + int x_index; + + if ( col>=8 || col<0 ) + return; + + if ( val<0 || val>255 ) + return; + + LEDs[col] = val; + x_index = 7-col; + Max7219( x_index+1, LEDs[col] ); + } + + + void Max7219_init() { + int i, x, y; + + pinMode(Max7219_data_in, OUTPUT); + pinMode(Max7219_clock, OUTPUT); + pinMode(Max7219_load, OUTPUT); + + digitalWrite(Max7219_load, HIGH); + + //initiation of the max 7219 + Max7219(max7219_reg_scanLimit, 0x07); + Max7219(max7219_reg_decodeMode, 0x00); // using an led matrix (not digits) + Max7219(max7219_reg_shutdown, 0x01); // not in shutdown mode + Max7219(max7219_reg_displayTest, 0x00); // no display test + Max7219(max7219_reg_intensity, 0x01 & 0x0f); // the first 0x0f is the value you can set + // range: 0x00 to 0x0f + for (i=0; i<8; i++) { // empty registers, turn all LEDs off + LEDs[i] = 0x00; + Max7219(i+1,0); + } + + for(x=0; x<8; x++) { // Do an austetically pleasing pattern to fully test + for(y=0; y<8; y++) { // the Max7219 module and LED's. First, turn them + Max7219_LED_On( x, y); // all on. + delay(3); + } + } + for(x=0; x<8; x++) { // Now, turn them all off. + for(y=0; y<8; y++) { + Max7219_LED_Off( x, y); + delay(3); // delay() is OK here. Max7219_init() is only called from + } // setup() and nothing is running yet. + } + + delay(150); + + for(x=7; x>=0; x--) { // Now, do the same thing from the opposite direction + for(y=0; y<8; y++) { + Max7219_LED_On( x, y); + delay(2); + } + } + + for(x=7; x>=0; x--) { + for(y=0; y<8; y++) { + Max7219_LED_Off( x, y); + delay(2); + } + } + } + +/* + * These are sample debug features to demonstrate the usage of the 8x8 LED Matrix for debug purposes. + * There is very little CPU burden added to the system by displaying information within the idle() + * task. + * + * But with that said, if your debugging can be facilitated by making calls into the library from + * other places in the code, feel free to do it. The CPU burden for a few calls to toggle an LED + * or clear a row is not very significant. + */ + void Max7219_idle_tasks() { + #ifdef MAX7219_DEBUG_PRINTER_ALIVE + static int debug_cnt=0; + if (debug_cnt++ > 100) { + Max7219_LED_Toggle(7,7); + debug_cnt = 0; + } + #endif + + #ifdef MAX7219_DEBUG_STEPPER_HEAD + Max7219_Clear_Row(MAX7219_DEBUG_STEPPER_HEAD); + Max7219_Clear_Row(MAX7219_DEBUG_STEPPER_HEAD+1); + if ( planner.block_buffer_head < 8) + Max7219_LED_On( planner.block_buffer_head, MAX7219_DEBUG_STEPPER_HEAD); + else + Max7219_LED_On( planner.block_buffer_head-8, MAX7219_DEBUG_STEPPER_HEAD+1); + #endif + + #ifdef MAX7219_DEBUG_STEPPER_TAIL + Max7219_Clear_Row(MAX7219_DEBUG_STEPPER_TAIL); + Max7219_Clear_Row(MAX7219_DEBUG_STEPPER_TAIL+1); + if ( planner.block_buffer_tail < 8) + Max7219_LED_On( planner.block_buffer_tail, MAX7219_DEBUG_STEPPER_TAIL ); + else + Max7219_LED_On( planner.block_buffer_tail-8, MAX7219_DEBUG_STEPPER_TAIL+1 ); + #endif + + #ifdef MAX7219_DEBUG_STEPPER_QUEUE + static int16_t last_depth=0, current_depth; + uint8_t i; + current_depth = planner.block_buffer_head - planner.block_buffer_tail; + if (current_depth != last_depth) { // usually, no update will be needed. + + if ( current_depth < 0 ) + current_depth += BLOCK_BUFFER_SIZE; + + if ( current_depth >= BLOCK_BUFFER_SIZE ) + current_depth = BLOCK_BUFFER_SIZE; + + if ( current_depth > 16 ) // if the BLOCK_BUFFER_SIZE is greater than 16 two lines + current_depth = 16; // of LED's is enough to see if the buffer is draining + + if ( current_depth < last_depth ) + for(i=current_depth; i<=last_depth; i++) { // clear the highest order LED's + if ( i & 1) + Max7219_LED_Off(i>>1, MAX7219_DEBUG_STEPPER_QUEUE+1); + else + Max7219_LED_Off(i>>1, MAX7219_DEBUG_STEPPER_QUEUE+0); + } + else + for(i=last_depth; i<=current_depth; i++) { // light up the highest order LED's + if ( i & 1) + Max7219_LED_On(i>>1, MAX7219_DEBUG_STEPPER_QUEUE+1); + else + Max7219_LED_On(i>>1, MAX7219_DEBUG_STEPPER_QUEUE+0); + } + last_depth = current_depth; + } + #endif + } +#endif //MAX7219_DEBUG + diff --git a/Marlin/Max7219_Debug_LEDs.h b/Marlin/Max7219_Debug_LEDs.h new file mode 100644 index 0000000000..d2a502953c --- /dev/null +++ b/Marlin/Max7219_Debug_LEDs.h @@ -0,0 +1,85 @@ +/** + * Marlin 3D Printer Firmware + * Copyright (C) 2016 MarlinFirmware [https://github.com/MarlinFirmware/Marlin] + * + * Based on Sprinter and grbl. + * Copyright (C) 2011 Camiel Gubbels / Erik van der Zalm + * + * This program is free software: you can redistribute it and/or modify + * it under the terms of the GNU General Public License as published by + * the Free Software Foundation, either version 3 of the License, or + * (at your option) any later version. + * + * This program is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + * GNU General Public License for more details. + * + * You should have received a copy of the GNU General Public License + * along with this program. If not, see . + * + */ + +/** + * This module is normally not enabled and does not generate any code. But it + * can be enabled to facilitate the display of extra debug information during + * code development. It assumes the existance of a Max7219 LED Matrix. You + * can get one on eBay similar to this: http://www.ebay.com/itm/191781645249 + * for under $2.00 including shipping. + * + * Just connect up +5v and Gnd to give it power. And then 3 wires declared in the + * #define's below. Actual pin assignments can be changed in MAX7219_DEBUG section + * of configuration_adv.h + * + * You first call Max7219_init() and then you have 3 support functions available + * to control the LED's in the 8x8 grid. + * + * void Max7219_init(); + * void Max7219_PutByte(uint8_t data); + * void Max7219(uint8_t reg, uint8_t data); + * void Max7219_LED_On( int8_t row, int8_t col); + * void Max7219_LED_Off( int8_t row, int8_t col); + * void Max7219_LED_Toggle( int8_t row, int8_t col); + * void Max7219_Clear_Row( int8_t row); + * void Max7219_Clear_Column( int8_t col); + * void Max7219_Set_Row( int8_t row, int8_t val); + * void Max7219_Set_Column( int8_t column, int8_t val); + * void Max7219_idle_tasks(); + */ + + +#if ENABLED(MAX7219_DEBUG) + // + // define max7219 registers + // + #define max7219_reg_noop 0x00 + #define max7219_reg_digit0 0x01 + #define max7219_reg_digit1 0x02 + #define max7219_reg_digit2 0x03 + #define max7219_reg_digit3 0x04 + #define max7219_reg_digit4 0x05 + #define max7219_reg_digit5 0x06 + #define max7219_reg_digit6 0x07 + #define max7219_reg_digit7 0x08 + + #define max7219_reg_intensity 0x0a + #define max7219_reg_displayTest 0x0f + #define max7219_reg_decodeMode 0x09 + #define max7219_reg_scanLimit 0x0b + #define max7219_reg_shutdown 0x0c + + + void Max7219_init(); + void Max7219_PutByte(uint8_t data); + void Max7219(uint8_t reg, uint8_t data); + void Max7219_LED_On( int8_t row, int8_t col); + void Max7219_LED_Off( int8_t row, int8_t col); + void Max7219_LED_Toggle( int8_t row, int8_t col); + void Max7219_Clear_Row( int8_t row); + void Max7219_Clear_Column( int8_t col); + void Max7219_Set_Row( int8_t row, uint8_t val); + void Max7219_Set_Column( int8_t col, uint8_t val); + void Max7219_idle_tasks(); +#endif + + diff --git a/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h b/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h index 8c52ba38a8..71bfc4a69f 100644 --- a/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h +++ b/Marlin/example_configurations/AlephObjects/TAZ4/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/Anet/A6/Configuration_adv.h b/Marlin/example_configurations/Anet/A6/Configuration_adv.h index fbb7573a3f..e12347eb94 100644 --- a/Marlin/example_configurations/Anet/A6/Configuration_adv.h +++ b/Marlin/example_configurations/Anet/A6/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/Anet/A8/Configuration_adv.h b/Marlin/example_configurations/Anet/A8/Configuration_adv.h index 4812733d5c..73dcf75952 100644 --- a/Marlin/example_configurations/Anet/A8/Configuration_adv.h +++ b/Marlin/example_configurations/Anet/A8/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h b/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h index aed6aad199..1157da1214 100644 --- a/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h +++ b/Marlin/example_configurations/BQ/Hephestos/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h b/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h index b0dbdadba2..b22e092d1b 100644 --- a/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h +++ b/Marlin/example_configurations/BQ/Hephestos_2/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h b/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h index aed6aad199..1157da1214 100644 --- a/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h +++ b/Marlin/example_configurations/BQ/WITBOX/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/Cartesio/Configuration_adv.h b/Marlin/example_configurations/Cartesio/Configuration_adv.h index 6782e070f9..928e98935d 100644 --- a/Marlin/example_configurations/Cartesio/Configuration_adv.h +++ b/Marlin/example_configurations/Cartesio/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/Felix/Configuration_adv.h b/Marlin/example_configurations/Felix/Configuration_adv.h index 638915b918..a16fbf766b 100644 --- a/Marlin/example_configurations/Felix/Configuration_adv.h +++ b/Marlin/example_configurations/Felix/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/Folger Tech/i3-2020/Configuration_adv.h b/Marlin/example_configurations/Folger Tech/i3-2020/Configuration_adv.h index 960b1b5f8b..e3ce65ad99 100644 --- a/Marlin/example_configurations/Folger Tech/i3-2020/Configuration_adv.h +++ b/Marlin/example_configurations/Folger Tech/i3-2020/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h b/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h index 751759c30a..e86f802ae5 100644 --- a/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h +++ b/Marlin/example_configurations/Infitary/i3-M508/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/Malyan/M150/Configuration_adv.h b/Marlin/example_configurations/Malyan/M150/Configuration_adv.h index 4a7930605d..f29f662170 100644 --- a/Marlin/example_configurations/Malyan/M150/Configuration_adv.h +++ b/Marlin/example_configurations/Malyan/M150/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/RigidBot/Configuration_adv.h b/Marlin/example_configurations/RigidBot/Configuration_adv.h index 8fbd278c7e..b57af74b3a 100644 --- a/Marlin/example_configurations/RigidBot/Configuration_adv.h +++ b/Marlin/example_configurations/RigidBot/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/SCARA/Configuration_adv.h b/Marlin/example_configurations/SCARA/Configuration_adv.h index cab69c2b10..da8e0ae0eb 100644 --- a/Marlin/example_configurations/SCARA/Configuration_adv.h +++ b/Marlin/example_configurations/SCARA/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/Sanguinololu/Configuration_adv.h b/Marlin/example_configurations/Sanguinololu/Configuration_adv.h index 953894cba8..46384be46e 100644 --- a/Marlin/example_configurations/Sanguinololu/Configuration_adv.h +++ b/Marlin/example_configurations/Sanguinololu/Configuration_adv.h @@ -1371,4 +1371,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/TinyBoy2/Configuration_adv.h b/Marlin/example_configurations/TinyBoy2/Configuration_adv.h index 95630746dd..610c084ce1 100644 --- a/Marlin/example_configurations/TinyBoy2/Configuration_adv.h +++ b/Marlin/example_configurations/TinyBoy2/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h b/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h index 1a31f5eda8..6265725f14 100644 --- a/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h +++ b/Marlin/example_configurations/Velleman/K8200/Configuration_adv.h @@ -1395,4 +1395,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h b/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h index 998b25bac6..703300a679 100644 --- a/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h +++ b/Marlin/example_configurations/Velleman/K8400/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h b/Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h index 3715a421ac..1f21b2f215 100644 --- a/Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h +++ b/Marlin/example_configurations/delta/FLSUN/auto_calibrate/Configuration_adv.h @@ -1384,4 +1384,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h b/Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h index e4eaec7c47..4d41b9280e 100644 --- a/Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h +++ b/Marlin/example_configurations/delta/FLSUN/kossel_mini/Configuration_adv.h @@ -1384,4 +1384,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/delta/generic/Configuration_adv.h b/Marlin/example_configurations/delta/generic/Configuration_adv.h index e4eaec7c47..4d41b9280e 100644 --- a/Marlin/example_configurations/delta/generic/Configuration_adv.h +++ b/Marlin/example_configurations/delta/generic/Configuration_adv.h @@ -1384,4 +1384,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h index e4eaec7c47..4d41b9280e 100644 --- a/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h @@ -1384,4 +1384,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h index ffabd4eed9..35836cefaa 100644 --- a/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h @@ -1389,4 +1389,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h b/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h index 57dc101978..a7cd5c7648 100644 --- a/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h +++ b/Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h @@ -1384,4 +1384,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/gCreate/gMax1.5+/Configuration.h b/Marlin/example_configurations/gCreate/gMax1.5+/Configuration.h index 51968f7076..df49c31a0c 100644 --- a/Marlin/example_configurations/gCreate/gMax1.5+/Configuration.h +++ b/Marlin/example_configurations/gCreate/gMax1.5+/Configuration.h @@ -1625,7 +1625,7 @@ // Delay (in milliseconds) before the next move will start, to give the servo time to reach its target angle. // 300ms is a good value but you can try less delay. // If the servo can't reach the requested position, increase it. -#define SERVO_DELAY { 300 } +#define SERVO_DELAY { 300, 300 } // Servo deactivation // diff --git a/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h b/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h index b6df0fe5ee..1848bcf501 100644 --- a/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h +++ b/Marlin/example_configurations/gCreate/gMax1.5+/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/makibox/Configuration_adv.h b/Marlin/example_configurations/makibox/Configuration_adv.h index 2e755a1ecc..2ea7f33e85 100644 --- a/Marlin/example_configurations/makibox/Configuration_adv.h +++ b/Marlin/example_configurations/makibox/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h b/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h index fc07c0456d..c878d49510 100644 --- a/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h +++ b/Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H diff --git a/Marlin/example_configurations/wt150/Configuration_adv.h b/Marlin/example_configurations/wt150/Configuration_adv.h index d8f6c3a3b0..0aa8b7ef04 100644 --- a/Marlin/example_configurations/wt150/Configuration_adv.h +++ b/Marlin/example_configurations/wt150/Configuration_adv.h @@ -1382,4 +1382,30 @@ #endif // I2C_POSITION_ENCODERS +/** + * Debug LED's using an 8x8 LED Matrix driven by a Max7219 chip. Fully assembled versions are available on + * eBay for under $2.00 (including shipping) and only require 3 signal wires. + * + * Check out auctions similar to this: https://www.ebay.com/sch/i.html?_from=R40&_trksid=m570.l1313&_nkw=332349290049&_sacat=0 + */ + +//#define MAX7219_DEBUG +#if ENABLED(MAX7219_DEBUG) + #define Max7219_clock 64 // 77 on Re-ARM // Configuration of the 3 pins to control the display + #define Max7219_data_in 57 // 78 on Re-ARM + #define Max7219_load 44 // 79 on Re-ARM + + /* + * These are sample debug features that can be turned on and configured for your use. + * The developer will need to manage the use of the various LED's in the 8x8 matrix to avoid conflicts. + */ + #define MAX7219_DEBUG_PRINTER_ALIVE // Blink corner LED of 8x8 matrix from idle() routine if firmware is functioning + #define MAX7219_DEBUG_STEPPER_HEAD 3 // Display row position of stepper queue head on this line and the next line of LED matrix + #define MAX7219_DEBUG_STEPPER_TAIL 5 // Display row position of stepper queue tail on this line and the next line of LED matrix + + #define MAX7219_DEBUG_STEPPER_QUEUE 0 // Display row position of stepper queue depth on this line and the next line of LED matrix + // If you have stuttering on your Delta printer, this option may help you understand how + // various tweaks you make to your configuration are affecting the printer. +#endif + #endif // CONFIGURATION_ADV_H