Преглед изворни кода

Merge pull request #5133 from thinkyhead/rc_M355_case_light

M355 Case light
Scott Lahteine пре 8 година
родитељ
комит
66744a6076

+ 1
- 0
Marlin/Conditionals_post.h Прегледај датотеку

@@ -509,6 +509,7 @@
509 509
   #define HAS_E4_STEP (PIN_EXISTS(E4_STEP))
510 510
   #define HAS_DIGIPOTSS (PIN_EXISTS(DIGIPOTSS))
511 511
   #define HAS_BUZZER (PIN_EXISTS(BEEPER) || ENABLED(LCD_USE_I2C_BUZZER))
512
+  #define HAS_CASE_LIGHT (PIN_EXISTS(CASE_LIGHT))
512 513
 
513 514
   #define HAS_MOTOR_CURRENT_PWM (PIN_EXISTS(MOTOR_CURRENT_PWM_XY) || PIN_EXISTS(MOTOR_CURRENT_PWM_Z) || PIN_EXISTS(MOTOR_CURRENT_PWM_E))
514 515
 

+ 4
- 0
Marlin/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 59
- 6
Marlin/Marlin_main.cpp Прегледај датотеку

@@ -861,11 +861,17 @@ void setup_homepin(void) {
861 861
   #endif
862 862
 }
863 863
 
864
-void setup_photpin() {
865
-  #if HAS_PHOTOGRAPH
866
-    OUT_WRITE(PHOTOGRAPH_PIN, LOW);
867
-  #endif
868
-}
864
+#if HAS_CASE_LIGHT
865
+
866
+  void setup_case_light() {
867
+    #if ENABLED(CASE_LIGHT_DEFAULT_ON)
868
+      OUT_WRITE(CASE_LIGHT_PIN, HIGH);
869
+    #else
870
+      OUT_WRITE(CASE_LIGHT_PIN, LOW);
871
+    #endif
872
+  }
873
+
874
+#endif
869 875
 
870 876
 void setup_powerhold() {
871 877
   #if HAS_SUICIDE
@@ -7087,6 +7093,38 @@ inline void gcode_M907() {
7087 7093
 
7088 7094
 #endif // HAS_MICROSTEPS
7089 7095
 
7096
+#if HAS_CASE_LIGHT
7097
+  /**
7098
+   * M355: Turn case lights on/off
7099
+   *
7100
+   *   S<int>   change state on/off or sets PWM
7101
+   *
7102
+   */
7103
+  inline void gcode_M355() {
7104
+    if (code_seen('S')) {
7105
+      SERIAL_ECHO_START;
7106
+      SERIAL_ECHOPGM("Case lights ");
7107
+      byte light_pwm = code_value_byte();
7108
+      switch (light_pwm) {
7109
+        case 0: // Disable lights
7110
+          SERIAL_ECHOPGM("off");
7111
+          break;
7112
+        case 1: // Enable lights
7113
+          light_pwm = 255;
7114
+          SERIAL_ECHOPGM("on");
7115
+          break;
7116
+        default: // Enable lights PWM
7117
+          SERIAL_ECHOPAIR("set to: ", (int)map(light_pwm, 0, 255, 0, 100));
7118
+          SERIAL_CHAR('%');
7119
+          break;
7120
+      }
7121
+      analogWrite(CASE_LIGHT_PIN, light_pwm);
7122
+      SERIAL_EOL;
7123
+    }
7124
+  }
7125
+
7126
+#endif // HAS_CASE_LIGHT
7127
+
7090 7128
 #if ENABLED(MIXING_EXTRUDER)
7091 7129
 
7092 7130
   /**
@@ -8195,6 +8233,14 @@ void process_next_command() {
8195 8233
 
8196 8234
       #endif // HAS_MICROSTEPS
8197 8235
 
8236
+      #if HAS_CASE_LIGHT
8237
+
8238
+        case 355: // M355 Turn case lights on/off
8239
+          gcode_M355();
8240
+          break;
8241
+
8242
+      #endif // HAS_CASE_LIGHT
8243
+
8198 8244
       case 999: // M999: Restart after being Stopped
8199 8245
         gcode_M999();
8200 8246
         break;
@@ -9693,9 +9739,16 @@ void setup() {
9693 9739
   #endif
9694 9740
 
9695 9741
   stepper.init();    // Initialize stepper, this enables interrupts!
9696
-  setup_photpin();
9697 9742
   servo_init();
9698 9743
 
9744
+  #if HAS_PHOTOGRAPH
9745
+    OUT_WRITE(PHOTOGRAPH_PIN, LOW);
9746
+  #endif
9747
+
9748
+  #if HAS_CASE_LIGHT
9749
+    setup_case_light();
9750
+  #endif
9751
+
9699 9752
   #if HAS_BED_PROBE
9700 9753
     endstops.enable_z_probe(false);
9701 9754
   #endif

+ 4
- 0
Marlin/example_configurations/Cartesio/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 35
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/Felix/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/Hephestos/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/Hephestos_2/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/K8200/Configuration_adv.h Прегледај датотеку

@@ -230,6 +230,10 @@
230 230
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
231 231
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
232 232
 
233
+// Define a pin to turn case light on/off
234
+//#define CASE_LIGHT_PIN 4
235
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
236
+
233 237
 //===========================================================================
234 238
 //============================ Mechanical Settings ==========================
235 239
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/K8400/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/RigidBot/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/SCARA/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/TAZ4/Configuration_adv.h Прегледај датотеку

@@ -232,6 +232,10 @@
232 232
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
233 233
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
234 234
 
235
+// Define a pin to turn case light on/off
236
+//#define CASE_LIGHT_PIN 4
237
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
238
+
235 239
 //===========================================================================
236 240
 //============================ Mechanical Settings ==========================
237 241
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/WITBOX/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/delta/biv2.5/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/delta/generic/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/delta/kossel_mini/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/delta/kossel_pro/Configuration_adv.h Прегледај датотеку

@@ -229,6 +229,10 @@
229 229
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
230 230
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
231 231
 
232
+// Define a pin to turn case light on/off
233
+//#define CASE_LIGHT_PIN 4
234
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
235
+
232 236
 //===========================================================================
233 237
 //============================ Mechanical Settings ==========================
234 238
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/delta/kossel_xl/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/makibox/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

+ 4
- 0
Marlin/example_configurations/tvrrug/Round2/Configuration_adv.h Прегледај датотеку

@@ -224,6 +224,10 @@
224 224
 #define EXTRUDER_AUTO_FAN_TEMPERATURE 50
225 225
 #define EXTRUDER_AUTO_FAN_SPEED   255  // == full speed
226 226
 
227
+// Define a pin to turn case light on/off
228
+//#define CASE_LIGHT_PIN 4
229
+//#define CASE_LIGHT_DEFAULT_ON   // Uncomment to set default state to on
230
+
227 231
 //===========================================================================
228 232
 //============================ Mechanical Settings ==========================
229 233
 //===========================================================================

Loading…
Откажи
Сачувај