1919#define UARM_FIRMATA_BUGFIX 2
2020
2121#define UARM_FIRMWARE_MAJOR_VERSION 1
22- #define UARM_FIRMWARE_MINOR_VERSION 6
23- #define UARM_FIRMWARE_BUGFIX 2
22+ #define UARM_FIRMWARE_MINOR_VERSION 7
23+ #define UARM_FIRMWARE_BUGFIX 1
2424
2525#define START_SYSEX 0xF0 // start a MIDI Sysex message
2626#define END_SYSEX 0xF7 // end a MIDI Sysex message
3737#define WRITE_ANALOG (0X17 )
3838#define READ_EEPROM (0X1A )
3939#define WRITE_EEPROM (0X1B )
40- #define DETACH_SERVO (0X1C )
40+ #define SERVO_STATUS (0X1C )
4141#define PUMP_STATUS (0X1D )
4242#define WRITE_STRETCH (0X1E )
4343#define WRITE_LEFT_RIGHT_ANGLE (0X1F )
@@ -61,6 +61,7 @@ int sysexBytesRead;
6161void setup ()
6262{
6363 Serial.begin (57600 );
64+ uarm.init ();
6465}
6566
6667void loop ()
@@ -271,9 +272,12 @@ boolean handleSysex(byte command, byte argc, byte *argv)
271272 }
272273
273274 // CMD 1C Servo Attach or Detach
274- if (uarmCommand == DETACH_SERVO )
275+ if (uarmCommand == SERVO_STATUS )
275276 {
276- uarm.detach_all_servos ();
277+ // uarm.detach_all_servos();
278+ byte servo_num = argv[1 ];
279+ boolean servo_status = argv[2 ] == 0 ? false : true ;
280+ uarm.set_servo_status (servo_status, servo_num);
277281 return true ;
278282 }
279283
0 commit comments