diff options
| -rw-r--r-- | ao-tools/ao-dumplog/ao-dumplog.c | 9 | ||||
| -rw-r--r-- | ao-tools/lib/cc-usb.c | 5 | ||||
| -rw-r--r-- | ao-tools/lib/cc-usb.h | 2 | 
3 files changed, 11 insertions, 5 deletions
diff --git a/ao-tools/ao-dumplog/ao-dumplog.c b/ao-tools/ao-dumplog/ao-dumplog.c index 440a02b5..57c43290 100644 --- a/ao-tools/ao-dumplog/ao-dumplog.c +++ b/ao-tools/ao-dumplog/ao-dumplog.c @@ -30,12 +30,13 @@ static const struct option options[] = {  	{ .name = "tty", .has_arg = 1, .val = 'T' },  	{ .name = "device", .has_arg = 1, .val = 'D' },  	{ .name = "remote", .has_arg = 1, .val = 'R' }, +	{ .name = "channel", .has_arg = 1, .val = 'C' },  	{ 0, 0, 0, 0},  };  static void usage(char *program)  { -	fprintf(stderr, "usage: %s [--tty <tty-name>] [--device <device-name>] [-R]\n", program); +	fprintf(stderr, "usage: %s [--tty <tty-name>] [--device <device-name>] [--remote] [--channel <radio-channel>]\n", program);  	exit(1);  } @@ -75,6 +76,7 @@ main (int argc, char **argv)  	FILE		*out;  	char		*filename;  	int		serial_number = 0; +	int		channel = 0;  	int		flight = 0;  	char		cmd;  	int		tick, a, b; @@ -100,6 +102,9 @@ main (int argc, char **argv)  		case 'R':  			remote = 1;  			break; +		case 'C': +			channel = atoi(optarg); +			break;  		default:  			usage(argv[0]);  			break; @@ -119,7 +124,7 @@ main (int argc, char **argv)  	if (!cc)  		exit(1);  	if (remote) -		cc_usb_open_remote(cc); +		cc_usb_open_remote(cc, channel);  	/* send a 'version' command followed by a 'log' command */  	cc_usb_printf(cc, "v\n");  	out = NULL; diff --git a/ao-tools/lib/cc-usb.c b/ao-tools/lib/cc-usb.c index 53a50741..1580c6d9 100644 --- a/ao-tools/lib/cc-usb.c +++ b/ao-tools/lib/cc-usb.c @@ -375,10 +375,11 @@ cc_usb_reset(struct cc_usb *cc)  }  void -cc_usb_open_remote(struct cc_usb *cc) +cc_usb_open_remote(struct cc_usb *cc, int channel)  {  	if (!cc->remote) { -		cc_usb_printf(cc, "\np\nE 0\n"); +		printf ("channel %d\n", channel); +		cc_usb_printf(cc, "\nc r %d\np\nE 0\n", channel);  		do {  			cc->in_count = cc->in_pos = 0;  			_cc_usb_sync(cc, 100); diff --git a/ao-tools/lib/cc-usb.h b/ao-tools/lib/cc-usb.h index 627f1b5d..d3539281 100644 --- a/ao-tools/lib/cc-usb.h +++ b/ao-tools/lib/cc-usb.h @@ -63,7 +63,7 @@ void  cc_usb_printf(struct cc_usb *cc, char *format, ...);  void -cc_usb_open_remote(struct cc_usb *cc); +cc_usb_open_remote(struct cc_usb *cc, int channel);  void  cc_usb_close_remote(struct cc_usb *cc);  | 
