diff options
Diffstat (limited to 'commandline/library')
| -rw-r--r-- | commandline/library/micronucleus_lib.c | 8 | ||||
| -rw-r--r-- | commandline/library/micronucleus_lib.h | 9 | 
2 files changed, 14 insertions, 3 deletions
| diff --git a/commandline/library/micronucleus_lib.c b/commandline/library/micronucleus_lib.c index 2e63425..1c3c179 100644 --- a/commandline/library/micronucleus_lib.c +++ b/commandline/library/micronucleus_lib.c @@ -47,6 +47,14 @@ micronucleus* micronucleus_connect() {          nucleus = malloc(sizeof(micronucleus));          nucleus->version.major = (dev->descriptor.bcdUSB >> 8) & 0xFF;          nucleus->version.minor = dev->descriptor.bcdUSB & 0xFF; +         +        if (nucleus->version.major > MICRONUCLEUS_MAX_MAJOR_VERSION) { +	        fprintf(stderr, "Warning: device with unknown new version of Micronucleus detected.\n"); +	        fprintf(stderr, "This tool doesn't know how to upload to this new device. Updates may be available.\n"); +	        fprintf(stderr, "Device reports version as: %d.%d\n", nucleus->version.major, nucleus->version.minor); +	        return NULL; +        } +                  nucleus->device = usb_open(dev);          // get nucleus info diff --git a/commandline/library/micronucleus_lib.h b/commandline/library/micronucleus_lib.h index d022877..9118ace 100644 --- a/commandline/library/micronucleus_lib.h +++ b/commandline/library/micronucleus_lib.h @@ -34,14 +34,17 @@  #endif  //#include "opendevice.h"      // common code moved to separate module  #include <assert.h> +#include <stdio.h> +#include <stdlib.h>  /*******************************************************************************/  /********************************************************************************  * USB details  ********************************************************************************/ -#define  MICRONUCLEUS_VENDOR_ID   0x16D0 -#define  MICRONUCLEUS_PRODUCT_ID   0x0753 -#define  MICRONUCLEUS_USB_TIMEOUT 0xFFFF +#define MICRONUCLEUS_VENDOR_ID   0x16D0 +#define MICRONUCLEUS_PRODUCT_ID  0x0753 +#define MICRONUCLEUS_USB_TIMEOUT 0xFFFF +#define MICRONUCLEUS_MAX_MAJOR_VERSION 1  /*******************************************************************************/  /******************************************************************************** | 
