aboutsummaryrefslogtreecommitdiffstats
path: root/Demos/Host
diff options
context:
space:
mode:
authorDean Camera <dean@fourwalledcubicle.com>2010-08-24 13:16:16 +0000
committerDean Camera <dean@fourwalledcubicle.com>2010-08-24 13:16:16 +0000
commitb7b8a9edfacb000c138eb6e7ad77c515c3a82050 (patch)
tree4b5afe16c3d22fdf3e2b5a7fe175ba5062404c12 /Demos/Host
parent092f82e06fc64436fd957b4b6b8d5ce33532efae (diff)
downloadlufa-b7b8a9edfacb000c138eb6e7ad77c515c3a82050.tar.gz
lufa-b7b8a9edfacb000c138eb6e7ad77c515c3a82050.tar.bz2
lufa-b7b8a9edfacb000c138eb6e7ad77c515c3a82050.zip
Fixed LowLevel PrinterHost demo not sending control requests to the attached printer with the correct printer interface wIndex value.
Diffstat (limited to 'Demos/Host')
-rw-r--r--Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.c14
-rw-r--r--Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.h2
-rw-r--r--Demos/Host/LowLevel/PrinterHost/PrinterHost.h3
3 files changed, 12 insertions, 7 deletions
diff --git a/Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.c b/Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.c
index 024895991..ac0ca9a2b 100644
--- a/Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.c
+++ b/Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.c
@@ -86,7 +86,7 @@ uint8_t Printer_GetDeviceID(char* DeviceIDString,
.bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),
.bRequest = REQ_GetDeviceID,
.wValue = 0,
- .wIndex = 0,
+ .wIndex = PrinterInterfaceNumber,
.wLength = sizeof(DeviceIDStringLength),
};
@@ -130,11 +130,11 @@ uint8_t Printer_GetPortStatus(uint8_t* const PortStatus)
{
USB_ControlRequest = (USB_Request_Header_t)
{
- bmRequestType: (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),
- bRequest: REQ_GetPortStatus,
- wValue: 0,
- wIndex: 0,
- wLength: sizeof(uint8_t),
+ .bmRequestType = (REQDIR_DEVICETOHOST | REQTYPE_CLASS | REQREC_INTERFACE),
+ .bRequest = REQ_GetPortStatus,
+ .wValue = 0,
+ .wIndex = PrinterInterfaceNumber,
+ .wLength = sizeof(uint8_t),
};
Pipe_SelectPipe(PIPE_CONTROLPIPE);
@@ -154,7 +154,7 @@ uint8_t Printer_SoftReset(void)
.bmRequestType = (REQDIR_HOSTTODEVICE | REQTYPE_CLASS | REQREC_INTERFACE),
.bRequest = REQ_SoftReset,
.wValue = 0,
- .wIndex = 0,
+ .wIndex = PrinterInterfaceNumber,
.wLength = 0,
};
diff --git a/Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.h b/Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.h
index 8c3bd3316..3edfe434d 100644
--- a/Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.h
+++ b/Demos/Host/LowLevel/PrinterHost/Lib/PrinterCommands.h
@@ -41,6 +41,8 @@
#include <string.h>
#include <LUFA/Drivers/USB/USB.h>
+
+ #include "../PrinterHost.h"
/* Macros: */
/** Printer class-specific request to retrieve the printer's ID string. */
diff --git a/Demos/Host/LowLevel/PrinterHost/PrinterHost.h b/Demos/Host/LowLevel/PrinterHost/PrinterHost.h
index 78583f0e4..2ba270f7d 100644
--- a/Demos/Host/LowLevel/PrinterHost/PrinterHost.h
+++ b/Demos/Host/LowLevel/PrinterHost/PrinterHost.h
@@ -70,6 +70,9 @@
/** LED mask for the library LED driver, to indicate that the USB interface is busy. */
#define LEDMASK_USB_BUSY LEDS_LED2
+ /* External Variables: */
+ extern uint8_t PrinterInterfaceNumber;
+
/* Function Prototypes: */
void EVENT_USB_Host_DeviceAttached(void);
void EVENT_USB_Host_DeviceUnattached(void);