aboutsummaryrefslogtreecommitdiffstats
path: root/sw/usbcom
diff options
context:
space:
mode:
authorSam Anthony <sam@samanthony.xyz>2025-09-05 17:21:31 -0400
committerSam Anthony <sam@samanthony.xyz>2025-09-05 17:21:31 -0400
commit38040fcaa3f943b26f5d5668ecea5fc4607535a7 (patch)
tree50be688b39ed77ac4213c4b7ab3c59bbf420c1f5 /sw/usbcom
parentba6fb7522c7333b3a9081a823f2b93a425b36022 (diff)
downloadcan-gauge-interface-38040fcaa3f943b26f5d5668ecea5fc4607535a7.zip
debug usb
Diffstat (limited to 'sw/usbcom')
-rw-r--r--sw/usbcom/usbcom.c17
1 files changed, 9 insertions, 8 deletions
diff --git a/sw/usbcom/usbcom.c b/sw/usbcom/usbcom.c
index 920b4a1..1568d88 100644
--- a/sw/usbcom/usbcom.c
+++ b/sw/usbcom/usbcom.c
@@ -8,7 +8,7 @@
#define TIMEOUT_MS 1000
-#define BUF_SIZE 64
+#define BUF_SIZE 512
#define INTERFACE 0
@@ -94,9 +94,9 @@ txChars(libusb_device_handle *devh, unsigned char *data, int n) {
while (actualLen < n) {
res = libusb_bulk_transfer(devh, EP_OUT_ADDR, data, n, &actualLen, TIMEOUT_MS);
if (res == LIBUSB_ERROR_TIMEOUT) {
- printf("Timeout (%d)\n", actualLen);
+ printf("Tx timeout (%d)\n", actualLen);
} else if (res < 0) {
- fprintf(stderr, "Error sending data\n");
+ fprintf(stderr, "Tx error: %s\n", libusb_strerror(res));
}
assert(actualLen <= n);
n -= actualLen;
@@ -108,17 +108,17 @@ txChars(libusb_device_handle *devh, unsigned char *data, int n) {
// Returns number of bytes read, or -1 on error
static int
rxChars(libusb_device_handle *devh, unsigned char *data, int size) {
- int res, actualLen;
+ int res, len;
- res = libusb_bulk_transfer(devh, EP_IN_ADDR, data, size, &actualLen, TIMEOUT_MS);
+ res = libusb_bulk_transfer(devh, EP_IN_ADDR, data, size, &len, TIMEOUT_MS);
if (res == LIBUSB_ERROR_TIMEOUT) {
- fprintf(stderr, "Timeout\n");
+ fprintf(stderr, "Rx timeout\n");
return -1;
} else if (res < 0) {
- fprintf(stderr, "Error receiving data\n");
+ fprintf(stderr, "Rx error: %s\n", libusb_strerror(res));
return -1;
}
- return actualLen;
+ return len;
}
// Get line from stdin
@@ -192,3 +192,4 @@ main(int argc, char *argv[]) {
teardown(devh);
return 0;
}
+