Skip to content

Commit 22f29d9

Browse files
committed
updated firmware
1 parent e5c6ec1 commit 22f29d9

File tree

1 file changed

+16
-1
lines changed

1 file changed

+16
-1
lines changed

examples/firmware/firmware.ino

Lines changed: 16 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -122,6 +122,8 @@ void loop(){
122122
break;
123123
case 'P':
124124
alvik.setPositionLeft(value);
125+
ack_required=MOVEMENT_LEFT;
126+
ack_check=true;
125127
break;
126128
case 'Z':
127129
alvik.resetPositionLeft(value);
@@ -136,6 +138,8 @@ void loop(){
136138
break;
137139
case 'P':
138140
alvik.setPositionRight(value);
141+
ack_required=MOVEMENT_RIGHT;
142+
ack_check=true;
139143
break;
140144
case 'Z':
141145
alvik.resetPositionRight(value);
@@ -149,6 +153,8 @@ void loop(){
149153
packeter.unpacketC2F(code,position_left, position_right);
150154
alvik.disableKinematicsMovement();
151155
alvik.setPosition(position_left, position_right);
156+
ack_required=MOVEMENT_POSITION;
157+
ack_check=true;
152158
break;
153159

154160

@@ -280,13 +286,22 @@ void loop(){
280286
msg_size = packeter.packetC3B(0x7E, version[0], version[1], version[2]);
281287
alvik.serial->write(packeter.msg,msg_size);
282288
}
283-
if (ack_check && alvik.isTargetReached()){
289+
if (ack_check && (alvik.isTargetReached() || alvik.isPositionReached() || alvik.isPositionLeftReached() || alvik.isPositionRightReached())){
284290
if (ack_required == MOVEMENT_ROTATE){
285291
msg_size = packeter.packetC1B('x', 'R');
286292
}
287293
if (ack_required == MOVEMENT_MOVE){
288294
msg_size = packeter.packetC1B('x', 'M');
289295
}
296+
if (ack_required == MOVEMENT_POSITION){
297+
msg_size = packeter.packetC1B('x', 'P');
298+
}
299+
if (ack_required == MOVEMENT_LEFT){
300+
msg_size = packeter.packetC1B('x', 'P');
301+
}
302+
if (ack_required == MOVEMENT_RIGHT){
303+
msg_size = packeter.packetC1B('x', 'P');
304+
}
290305
}
291306
else{
292307
msg_size = packeter.packetC1B('x', 0);

0 commit comments

Comments
 (0)