summaryrefslogtreecommitdiffstats
path: root/commandline/library/micronucleus_lib.c
diff options
context:
space:
mode:
authorcpldcpu <cpldcpu@gmail.com>2014-01-05 14:57:58 +0100
committercpldcpu <cpldcpu@gmail.com>2014-01-05 14:57:58 +0100
commit4f96c4048389d6be8df8143b3a29d877f75b5860 (patch)
tree52b5fd570f2eb36d0977120ca4f34ffefd127daa /commandline/library/micronucleus_lib.c
parent2b63296c16739cb720f3c6990b5516ca43ed9851 (diff)
downloadmicronucleus-4f96c4048389d6be8df8143b3a29d877f75b5860.tar.gz
micronucleus-4f96c4048389d6be8df8143b3a29d877f75b5860.tar.bz2
micronucleus-4f96c4048389d6be8df8143b3a29d877f75b5860.zip
commandline: change usb requests to "out" if no data is requested
zero sized "In" requests require more handshaking, but do not add more error checking or more security.
Diffstat (limited to 'commandline/library/micronucleus_lib.c')
-rw-r--r--commandline/library/micronucleus_lib.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/commandline/library/micronucleus_lib.c b/commandline/library/micronucleus_lib.c
index ddcefdd..eaeaf38 100644
--- a/commandline/library/micronucleus_lib.c
+++ b/commandline/library/micronucleus_lib.c
@@ -62,7 +62,7 @@ micronucleus* micronucleus_connect() {
// get nucleus info
unsigned char buffer[4];
- int res = usb_control_msg(nucleus->device, 0xC0, 0, 0, 0, (char *)buffer, 4, MICRONUCLEUS_USB_TIMEOUT);
+ int res = usb_control_msg(nucleus->device, USB_ENDPOINT_IN| USB_TYPE_VENDOR | USB_RECIP_DEVICE, 0, 0, 0, (char *)buffer, 4, MICRONUCLEUS_USB_TIMEOUT);
assert(res >= 4);
nucleus->flash_size = (buffer[0]<<8) + buffer[1];
@@ -80,7 +80,7 @@ micronucleus* micronucleus_connect() {
int micronucleus_eraseFlash(micronucleus* deviceHandle, micronucleus_callback progress) {
int res;
- res = usb_control_msg(deviceHandle->device, 0xC0, 2, 0, 0, NULL, 0, MICRONUCLEUS_USB_TIMEOUT);
+ res = usb_control_msg(deviceHandle->device, USB_ENDPOINT_OUT| USB_TYPE_VENDOR | USB_RECIP_DEVICE, 2, 0, 0, NULL, 0, MICRONUCLEUS_USB_TIMEOUT);
// give microcontroller enough time to erase all writable pages and come back online
float i = 0;
@@ -174,7 +174,7 @@ int micronucleus_writeFlash(micronucleus* deviceHandle, unsigned int program_siz
int micronucleus_startApp(micronucleus* deviceHandle) {
int res;
- res = usb_control_msg(deviceHandle->device, 0xC0, 4, 0, 0, NULL, 0, MICRONUCLEUS_USB_TIMEOUT);
+ res = usb_control_msg(deviceHandle->device, USB_ENDPOINT_OUT| USB_TYPE_VENDOR | USB_RECIP_DEVICE, 4, 0, 0, NULL, 0, MICRONUCLEUS_USB_TIMEOUT);
if(res!=0)
return -1;