Browse Source

Add support for M300: Play beep sound

Colin Edwards 12 years ago
parent
commit
1a0f889803
1 changed files with 20 additions and 5 deletions
  1. 20
    5
      Marlin/Marlin_main.cpp

+ 20
- 5
Marlin/Marlin_main.cpp View File

@@ -117,6 +117,7 @@
117 117
 // M220 S<factor in percent>- set speed factor override percentage
118 118
 // M221 S<factor in percent>- set extrude factor override percentage
119 119
 // M240 - Trigger a camera to take a photograph
120
+// M300 - Play beepsound S<frequency Hz> P<duration ms>
120 121
 // M301 - Set PID parameters P I and D
121 122
 // M302 - Allow cold extrudes
122 123
 // M303 - PID relay autotune S<temperature> sets the target temperature. (default target temperature = 150C)
@@ -157,12 +158,12 @@ float add_homeing[3]={0,0,0};
157 158
 float min_pos[3] = { X_MIN_POS, Y_MIN_POS, Z_MIN_POS };
158 159
 float max_pos[3] = { X_MAX_POS, Y_MAX_POS, Z_MAX_POS };
159 160
 // Extruder offset, only in XY plane
160
-#if EXTRUDERS > 1
161
+#if EXTRUDERS > 1
161 162
 float extruder_offset[2][EXTRUDERS] = { 
162 163
 #if defined(EXTRUDER_OFFSET_X) && defined(EXTRUDER_OFFSET_Y)
163 164
   EXTRUDER_OFFSET_X, EXTRUDER_OFFSET_Y 
164 165
 #endif
165
-}; 
166
+}; 
166 167
 #endif
167 168
 uint8_t active_extruder = 0;
168 169
 int fanSpeed=0;
@@ -1380,7 +1381,7 @@ void process_commands()
1380 1381
       }
1381 1382
       
1382 1383
     }break;
1383
-    #endif // FWRETRACT
1384
+    #endif // FWRETRACT
1384 1385
     #if EXTRUDERS > 1
1385 1386
     case 218: // M218 - set hotend offset (in mm), T<extruder_number> X<offset_on_X> Y<offset_on_Y>
1386 1387
     {
@@ -1405,7 +1406,7 @@ void process_commands()
1405 1406
          SERIAL_ECHO(extruder_offset[Y_AXIS][tmp_extruder]);
1406 1407
       }
1407 1408
       SERIAL_ECHOLN("");
1408
-    }break;
1409
+    }break;
1409 1410
     #endif
1410 1411
     case 220: // M220 S<factor in percent>- set speed factor override percentage
1411 1412
     {
@@ -1424,6 +1425,20 @@ void process_commands()
1424 1425
     }
1425 1426
     break;
1426 1427
 
1428
+    #ifdef BEEPER
1429
+    case 300: // M300
1430
+    {
1431
+      int beepS = 1;
1432
+      int beepP = 1000;
1433
+      if(code_seen('S')) beepS = code_value();
1434
+      if(code_seen('P')) beepP = code_value();
1435
+      tone(BEEPER, beepS);
1436
+      delay(beepP);
1437
+      noTone(BEEPER);
1438
+    }
1439
+    break;
1440
+    #endif // M300
1441
+
1427 1442
     #ifdef PIDTEMP
1428 1443
     case 301: // M301
1429 1444
       {
@@ -1756,7 +1771,7 @@ void process_commands()
1756 1771
         if(make_move && Stopped == false) {
1757 1772
            prepare_move();
1758 1773
         }
1759
-      }
1774
+      }
1760 1775
       #endif
1761 1776
       SERIAL_ECHO_START;
1762 1777
       SERIAL_ECHO(MSG_ACTIVE_EXTRUDER);

Loading…
Cancel
Save