diff --git a/ChangeLog b/ChangeLog
index aba06037..bb5751a6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,10 @@
+2012-12-18  Joerg Wunsch <j.gnu@uriah.heep.sax.de>
+
+	* usbdefs.h (USBDEV_BULK_EP_WRITE_STK600)
+	(USBDEV_BULK_EP_READ_STK600): new define values
+	* stk500v2.c (stk600_open): use the STK600 EP values,
+	as they are different from AVRISPmkII
+
 2012-12-18  Joerg Wunsch <j.gnu@uriah.heep.sax.de>
 
 	bug #37942: Latest SVN can't program in dragon_jtag mode
diff --git a/stk500v2.c b/stk500v2.c
index 0edf8c9a..443ccb25 100644
--- a/stk500v2.c
+++ b/stk500v2.c
@@ -1666,8 +1666,8 @@ static int stk600_open(PROGRAMMER * pgm, char * port)
     PDATA(pgm)->pgmtype = PGMTYPE_STK600;
     pgm->set_sck_period = stk600_set_sck_period;
     pgm->fd.usb.max_xfer = USBDEV_MAX_XFER_MKII;
-    pgm->fd.usb.rep = USBDEV_BULK_EP_READ_MKII;
-    pgm->fd.usb.wep = USBDEV_BULK_EP_WRITE_MKII;
+    pgm->fd.usb.rep = USBDEV_BULK_EP_READ_STK600;
+    pgm->fd.usb.wep = USBDEV_BULK_EP_WRITE_STK600;
     pgm->fd.usb.eep = 0;           /* no seperate EP for events */
 #else
     fprintf(stderr, "avrdude was compiled without usb support.\n");
diff --git a/usbdevs.h b/usbdevs.h
index 62b02d74..c546f500 100644
--- a/usbdevs.h
+++ b/usbdevs.h
@@ -32,11 +32,15 @@
 #define USB_DEVICE_AVRDRAGON   0x2107
 #define USB_DEVICE_JTAGICE3    0x2110
 
-/* JTAGICEmkII */
+/* JTAGICEmkII, AVRISPmkII */
 #define USBDEV_BULK_EP_WRITE_MKII 0x02
 #define USBDEV_BULK_EP_READ_MKII  0x82
 #define USBDEV_MAX_XFER_MKII 64
 
+/* STK600 */
+#define USBDEV_BULK_EP_WRITE_STK600 0x02
+#define USBDEV_BULK_EP_READ_STK600 0x83
+
 /* JTAGICE3 */
 #define USBDEV_BULK_EP_WRITE_3    0x01
 #define USBDEV_BULK_EP_READ_3     0x82