Revision 623
cleanup and colonet debugging
colonet_dragonfly.c | ||
---|---|---|
89 | 89 |
ColonetRobotServerPacket pkt; |
90 | 90 |
pkt.client_id = -1; |
91 | 91 |
pkt.msg_code = ROBOT_REQUEST_POSITION_FROM_SERVER; |
92 |
wl_send_global_packet(colonet_pgh.groupCode, 0, (char*)&pkt, sizeof(pkt), 0);
|
|
92 |
wl_send_global_packet(colonet_pgh.groupCode, 0, (char*)&pkt, sizeof(ColonetRobotServerPacket), 0);
|
|
93 | 93 |
} |
94 | 94 |
|
95 | 95 |
static float sqrt_approx(float x) { |
... | ... | |
278 | 278 |
* @return -1 on error (invalid msgId), 0 on success |
279 | 279 |
*/ |
280 | 280 |
static void colonet_handle_receive(char type, int wl_source, unsigned char* packet, int length) { |
281 |
ColonetRobotServerPacket* pkt= (ColonetRobotServerPacket*)packet; |
|
281 |
length = length; |
|
282 |
|
|
283 |
ColonetRobotServerPacket* pkt = (ColonetRobotServerPacket*)packet; |
|
282 | 284 |
unsigned char* args; //up to 7 char args |
283 | 285 |
unsigned int_args[3]; //up to 3 int (2-byte) args |
284 |
|
|
285 | 286 |
char buf[40]; |
286 | 287 |
|
287 |
length = length; |
|
288 |
|
|
288 | 289 |
/* |
289 | 290 |
usb_puts("Packet received.\n"); |
290 | 291 |
|
... | ... | |
298 | 299 |
usb_puts("\n"); |
299 | 300 |
*/ |
300 | 301 |
|
301 |
//printf("received message from %d of length %d\n", source, length); |
|
302 |
//sprintf(buf, "received message from client_id=%d of length %d\n", pkt->client_id, length); |
|
303 |
//usb_puts(buf); |
|
302 | 304 |
|
303 | 305 |
///assert(length == sizeof(ColonetRobotServerPacket)); |
304 | 306 |
|
... | ... | |
313 | 315 |
int_args[2] = two_bytes_to_int(args[4], args[5]); |
314 | 316 |
|
315 | 317 |
if (type == COLONET_REQUEST) { |
316 |
sprintf(buf, "received colonet request: pkt msgcode is %d\n", pkt->msg_code); |
|
317 |
usb_puts(buf); |
|
318 |
//sprintf(buf, "received colonet request: pkt msgcode is %d\n", pkt->msg_code);
|
|
319 |
//usb_puts(buf);
|
|
318 | 320 |
|
319 | 321 |
switch (pkt->msg_code) { |
320 | 322 |
//Sharp |
... | ... | |
336 | 338 |
case BATTERY: |
337 | 339 |
sprintf((char*)pkt->data, "%d", (int)battery8()); |
338 | 340 |
|
339 |
// TODO: THIS IS NOT WORKING! SERVER DOES NOT GET PACKET!
|
|
340 |
wl_send_robot_to_robot_global_packet(colonet_pgh.groupCode, 0, (char*)&pkt, sizeof(pkt), wl_source, 0);
|
|
341 |
// NOTE: wl_send_robot_to_robot_global_packet does not work here!
|
|
342 |
wl_send_global_packet(COLONET_PACKET_GROUP_ID, 0, (char*)pkt, sizeof(ColonetRobotServerPacket), 0);
|
|
341 | 343 |
|
342 | 344 |
sprintf(buf, "it's a battery request\nsent battery value: %s\n", pkt->data); |
343 | 345 |
usb_puts(buf); |
... | ... | |
347 | 349 |
case GETMAXBOM: |
348 | 350 |
break; |
349 | 351 |
|
350 |
//Dio |
|
351 | 352 |
case DIGITAL_INPUT: |
352 | 353 |
break; |
353 |
case BUTTON1_READ: |
|
354 |
break; |
|
355 |
case BUTTON2_READ: |
|
356 |
break; |
|
357 |
|
|
358 |
//Bumper |
|
359 |
case DETECT_BUMP: |
|
360 |
break; |
|
361 | 354 |
} |
362 | 355 |
} else if (type == COLONET_COMMAND) { |
363 | 356 |
sprintf(buf, "colonet command ... pkt->msg_code=%d\n", pkt->msg_code); |
Also available in: Unified diff