aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--Bootloaders/CDC/LUFA CDC Bootloader.inf113
-rw-r--r--Demos/Device/ClassDriver/CDC/LUFA CDC.inf113
-rw-r--r--Demos/Device/ClassDriver/DualCDC/LUFA DualCDC.inf114
-rw-r--r--Demos/Device/ClassDriver/USBtoSerial/LUFA USBtoSerial.inf113
-rw-r--r--Demos/Device/LowLevel/CDC/LUFA CDC.inf113
-rw-r--r--Demos/Device/LowLevel/DualCDC/LUFA DualCDC.inf114
-rw-r--r--Demos/Device/LowLevel/USBtoSerial/LUFA USBtoSerial.inf113
-rw-r--r--Demos/Host/ClassDriver/StillImageHost/StillImageHost.c6
-rw-r--r--LUFA/Drivers/USB/Class/Host/StillImage.c52
-rw-r--r--LUFA/Drivers/USB/Class/Host/StillImage.h6
-rw-r--r--LUFA/ManPages/ChangeLog.txt2
-rw-r--r--LUFA/ManPages/LUFAPoweredProjects.txt2
-rw-r--r--LUFA/ManPages/VIDAndPIDValues.txt2
-rw-r--r--Projects/Benito/Benito Programmer.inf113
-rw-r--r--Projects/Benito/Descriptors.c4
15 files changed, 711 insertions, 269 deletions
diff --git a/Bootloaders/CDC/LUFA CDC Bootloader.inf b/Bootloaders/CDC/LUFA CDC Bootloader.inf
index 6df089ab7..80b8d69bc 100644
--- a/Bootloaders/CDC/LUFA CDC Bootloader.inf
+++ b/Bootloaders/CDC/LUFA CDC Bootloader.inf
@@ -1,55 +1,106 @@
-; Windows LUFA CDC Setup File
+;************************************************************
+; Windows USB CDC ACM Setup File
; Copyright (c) 2000 Microsoft Corporation
-[Version]
-Signature="$Windows NT$"
+
+[Version]
+Signature="$Windows NT$"
Class=Ports
-ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
-Provider=%COMPANY%
+ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
+Provider=%MFGNAME%
LayoutFile=layout.inf
-DriverVer=06/06/2006,1.0.0.0
+CatalogFile=%MFGFILENAME%.cat
+DriverVer=11/15/2007,5.1.2600.0
-[Manufacturer]
-%MFGNAME% = ManufName
+[Manufacturer]
+%MFGNAME%=DeviceList, NTamd64
-[DestinationDirs]
-DefaultDestDir=12
+[DestinationDirs]
+DefaultDestDir=12
-[ManufName]
-%Modem3% = Modem3, USB\VID_03EB&PID_204A
;------------------------------------------------------------------------------
-; Windows 2000/XP Sections
+; Windows 2000/XP/Vista-32bit Sections
;------------------------------------------------------------------------------
-[Modem3.nt]
-CopyFiles=USBModemCopyFileSection
-AddReg=Modem3.nt.AddReg
+[DriverInstall.nt]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.nt
+AddReg=DriverInstall.nt.AddReg
-[USBModemCopyFileSection]
+[DriverCopyFiles.nt]
usbser.sys,,,0x20
-[Modem3.nt.AddReg]
-HKR,,DevLoader,,*ntkern
-HKR,,NTMPDriver,,usbser.sys
-HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+[DriverInstall.nt.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
-[Modem3.nt.Services]
-AddService=usbser, 0x00000002, DriverService
+[DriverInstall.nt.Services]
+AddService=usbser, 0x00000002, DriverService.nt
-[DriverService]
+[DriverService.nt]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
-ServiceBinary=%12%\usbser.sys
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
;------------------------------------------------------------------------------
-; String Definitions
+; Vista-64bit Sections
+;------------------------------------------------------------------------------
+
+[DriverInstall.NTamd64]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.NTamd64
+AddReg=DriverInstall.NTamd64.AddReg
+
+[DriverCopyFiles.NTamd64]
+%DRIVERFILENAME%.sys,,,0x20
+
+[DriverInstall.NTamd64.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+
+[DriverInstall.NTamd64.Services]
+AddService=usbser, 0x00000002, DriverService.NTamd64
+
+[DriverService.NTamd64]
+DisplayName=%SERVICE%
+ServiceType=1
+StartType=3
+ErrorControl=1
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
+
+
;------------------------------------------------------------------------------
+; Vendor and Product ID Definitions
+;------------------------------------------------------------------------------
+; When developing your USB device, the VID and PID used in the PC side
+; application program and the firmware on the microcontroller must match.
+; Modify the below line to use your VID and PID. Use the format as shown below.
+; Note: One INF file can be used for multiple devices with different VID and PIDs.
+; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
+;------------------------------------------------------------------------------
+[SourceDisksFiles]
+[SourceDisksNames]
+[DeviceList]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204A
+
+[DeviceList.NTamd64]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204A
-[Strings]
-COMPANY="LUFA Library"
-MFGNAME="Dean Camera"
-Modem3="USB AVR109 Bootloader"
-SERVICE="USB Virtual Serial Port CDC Driver" \ No newline at end of file
+
+;------------------------------------------------------------------------------
+; String Definitions
+;------------------------------------------------------------------------------
+;Modify these strings to customize your device
+;------------------------------------------------------------------------------
+[Strings]
+MFGFILENAME="CDC_vista"
+DRIVERFILENAME ="usbser"
+MFGNAME="CCS, Inc."
+INSTDISK="LUFA CDC Bootloader Driver Installer"
+DESCRIPTION="Communications Port"
+SERVICE="USB RS-232 Emulation Driver" \ No newline at end of file
diff --git a/Demos/Device/ClassDriver/CDC/LUFA CDC.inf b/Demos/Device/ClassDriver/CDC/LUFA CDC.inf
index d9d9ed63a..4cdf59435 100644
--- a/Demos/Device/ClassDriver/CDC/LUFA CDC.inf
+++ b/Demos/Device/ClassDriver/CDC/LUFA CDC.inf
@@ -1,55 +1,106 @@
-; Windows LUFA CDC Setup File
+;************************************************************
+; Windows USB CDC ACM Setup File
; Copyright (c) 2000 Microsoft Corporation
-[Version]
-Signature="$Windows NT$"
+
+[Version]
+Signature="$Windows NT$"
Class=Ports
-ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
-Provider=%COMPANY%
+ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
+Provider=%MFGNAME%
LayoutFile=layout.inf
-DriverVer=06/06/2006,1.0.0.0
+CatalogFile=%MFGFILENAME%.cat
+DriverVer=11/15/2007,5.1.2600.0
-[Manufacturer]
-%MFGNAME% = ManufName
+[Manufacturer]
+%MFGNAME%=DeviceList, NTamd64
-[DestinationDirs]
-DefaultDestDir=12
+[DestinationDirs]
+DefaultDestDir=12
-[ManufName]
-%Modem3% = Modem3, USB\VID_03EB&PID_2044
;------------------------------------------------------------------------------
-; Windows 2000/XP Sections
+; Windows 2000/XP/Vista-32bit Sections
;------------------------------------------------------------------------------
-[Modem3.nt]
-CopyFiles=USBModemCopyFileSection
-AddReg=Modem3.nt.AddReg
+[DriverInstall.nt]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.nt
+AddReg=DriverInstall.nt.AddReg
-[USBModemCopyFileSection]
+[DriverCopyFiles.nt]
usbser.sys,,,0x20
-[Modem3.nt.AddReg]
-HKR,,DevLoader,,*ntkern
-HKR,,NTMPDriver,,usbser.sys
-HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+[DriverInstall.nt.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
-[Modem3.nt.Services]
-AddService=usbser, 0x00000002, DriverService
+[DriverInstall.nt.Services]
+AddService=usbser, 0x00000002, DriverService.nt
-[DriverService]
+[DriverService.nt]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
-ServiceBinary=%12%\usbser.sys
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
;------------------------------------------------------------------------------
-; String Definitions
+; Vista-64bit Sections
+;------------------------------------------------------------------------------
+
+[DriverInstall.NTamd64]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.NTamd64
+AddReg=DriverInstall.NTamd64.AddReg
+
+[DriverCopyFiles.NTamd64]
+%DRIVERFILENAME%.sys,,,0x20
+
+[DriverInstall.NTamd64.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+
+[DriverInstall.NTamd64.Services]
+AddService=usbser, 0x00000002, DriverService.NTamd64
+
+[DriverService.NTamd64]
+DisplayName=%SERVICE%
+ServiceType=1
+StartType=3
+ErrorControl=1
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
+
+
;------------------------------------------------------------------------------
+; Vendor and Product ID Definitions
+;------------------------------------------------------------------------------
+; When developing your USB device, the VID and PID used in the PC side
+; application program and the firmware on the microcontroller must match.
+; Modify the below line to use your VID and PID. Use the format as shown below.
+; Note: One INF file can be used for multiple devices with different VID and PIDs.
+; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
+;------------------------------------------------------------------------------
+[SourceDisksFiles]
+[SourceDisksNames]
+[DeviceList]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044
+
+[DeviceList.NTamd64]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044
-[Strings]
-COMPANY="LUFA Library"
-MFGNAME="Dean Camera"
-Modem3="USB Virtual Serial Port"
-SERVICE="USB Virtual Serial Port CDC Driver" \ No newline at end of file
+
+;------------------------------------------------------------------------------
+; String Definitions
+;------------------------------------------------------------------------------
+;Modify these strings to customize your device
+;------------------------------------------------------------------------------
+[Strings]
+MFGFILENAME="CDC_vista"
+DRIVERFILENAME ="usbser"
+MFGNAME="CCS, Inc."
+INSTDISK="LUFA CDC Driver Installer"
+DESCRIPTION="Communications Port"
+SERVICE="USB RS-232 Emulation Driver" \ No newline at end of file
diff --git a/Demos/Device/ClassDriver/DualCDC/LUFA DualCDC.inf b/Demos/Device/ClassDriver/DualCDC/LUFA DualCDC.inf
index 10ba560f8..741bf28eb 100644
--- a/Demos/Device/ClassDriver/DualCDC/LUFA DualCDC.inf
+++ b/Demos/Device/ClassDriver/DualCDC/LUFA DualCDC.inf
@@ -1,56 +1,106 @@
-; Windows LUFA Dual CDC Setup File
+;************************************************************
+; Windows USB CDC ACM Setup File
; Copyright (c) 2000 Microsoft Corporation
-[Version]
-Signature="$Windows NT$"
+
+[Version]
+Signature="$Windows NT$"
Class=Ports
-ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
-Provider=%COMPANY%
+ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
+Provider=%MFGNAME%
LayoutFile=layout.inf
-DriverVer=06/06/2006,1.0.0.0
+CatalogFile=%MFGFILENAME%.cat
+DriverVer=11/15/2007,5.1.2600.0
-[Manufacturer]
-%MFGNAME% = ManufName
+[Manufacturer]
+%MFGNAME%=DeviceList, NTamd64
-[DestinationDirs]
-DefaultDestDir=12
+[DestinationDirs]
+DefaultDestDir=12
-[ManufName]
-%Modem3% = Modem3, USB\VID_03EB&PID_204E&MI_00
-%Modem3% = Modem3, USB\VID_03EB&PID_204E&MI_02
;------------------------------------------------------------------------------
-; Windows 2000/XP Sections
+; Windows 2000/XP/Vista-32bit Sections
;------------------------------------------------------------------------------
-[Modem3.nt]
-CopyFiles=USBModemCopyFileSection
-AddReg=Modem3.nt.AddReg
+[DriverInstall.nt]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.nt
+AddReg=DriverInstall.nt.AddReg
-[USBModemCopyFileSection]
+[DriverCopyFiles.nt]
usbser.sys,,,0x20
-[Modem3.nt.AddReg]
-HKR,,DevLoader,,*ntkern
-HKR,,NTMPDriver,,usbser.sys
-HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+[DriverInstall.nt.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
-[Modem3.nt.Services]
-AddService=usbser, 0x00000002, DriverService
+[DriverInstall.nt.Services]
+AddService=usbser, 0x00000002, DriverService.nt
-[DriverService]
+[DriverService.nt]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
-ServiceBinary=%12%\usbser.sys
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
;------------------------------------------------------------------------------
-; String Definitions
+; Vista-64bit Sections
+;------------------------------------------------------------------------------
+
+[DriverInstall.NTamd64]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.NTamd64
+AddReg=DriverInstall.NTamd64.AddReg
+
+[DriverCopyFiles.NTamd64]
+%DRIVERFILENAME%.sys,,,0x20
+
+[DriverInstall.NTamd64.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+
+[DriverInstall.NTamd64.Services]
+AddService=usbser, 0x00000002, DriverService.NTamd64
+
+[DriverService.NTamd64]
+DisplayName=%SERVICE%
+ServiceType=1
+StartType=3
+ErrorControl=1
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
+
+
;------------------------------------------------------------------------------
+; Vendor and Product ID Definitions
+;------------------------------------------------------------------------------
+; When developing your USB device, the VID and PID used in the PC side
+; application program and the firmware on the microcontroller must match.
+; Modify the below line to use your VID and PID. Use the format as shown below.
+; Note: One INF file can be used for multiple devices with different VID and PIDs.
+; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
+;------------------------------------------------------------------------------
+[SourceDisksFiles]
+[SourceDisksNames]
+[DeviceList]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204E&MI_00, USB\VID_03EB&PID_204E&MI_02
+
+[DeviceList.NTamd64]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204E&MI_00, USB\VID_03EB&PID_204E&MI_02
-[Strings]
-COMPANY="LUFA Library"
-MFGNAME="Dean Camera"
-Modem3="USB Virtual Serial Port"
-SERVICE="USB Virtual Serial Port CDC Driver" \ No newline at end of file
+
+;------------------------------------------------------------------------------
+; String Definitions
+;------------------------------------------------------------------------------
+;Modify these strings to customize your device
+;------------------------------------------------------------------------------
+[Strings]
+MFGFILENAME="CDC_vista"
+DRIVERFILENAME ="usbser"
+MFGNAME="CCS, Inc."
+INSTDISK="LUFA Dual CDC Driver Installer"
+DESCRIPTION="Communications Port"
+SERVICE="USB RS-232 Emulation Driver" \ No newline at end of file
diff --git a/Demos/Device/ClassDriver/USBtoSerial/LUFA USBtoSerial.inf b/Demos/Device/ClassDriver/USBtoSerial/LUFA USBtoSerial.inf
index bd9c8bf14..10a6a8ce2 100644
--- a/Demos/Device/ClassDriver/USBtoSerial/LUFA USBtoSerial.inf
+++ b/Demos/Device/ClassDriver/USBtoSerial/LUFA USBtoSerial.inf
@@ -1,55 +1,106 @@
-; Windows LUFA USB to Serial Setup File
+;************************************************************
+; Windows USB CDC ACM Setup File
; Copyright (c) 2000 Microsoft Corporation
-[Version]
-Signature="$Windows NT$"
+
+[Version]
+Signature="$Windows NT$"
Class=Ports
-ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
-Provider=%COMPANY%
+ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
+Provider=%MFGNAME%
LayoutFile=layout.inf
-DriverVer=06/06/2006,1.0.0.0
+CatalogFile=%MFGFILENAME%.cat
+DriverVer=11/15/2007,5.1.2600.0
-[Manufacturer]
-%MFGNAME% = ManufName
+[Manufacturer]
+%MFGNAME%=DeviceList, NTamd64
-[DestinationDirs]
-DefaultDestDir=12
+[DestinationDirs]
+DefaultDestDir=12
-[ManufName]
-%Modem3% = Modem3, USB\VID_03EB&PID_204B
;------------------------------------------------------------------------------
-; Windows 2000/XP Sections
+; Windows 2000/XP/Vista-32bit Sections
;------------------------------------------------------------------------------
-[Modem3.nt]
-CopyFiles=USBModemCopyFileSection
-AddReg=Modem3.nt.AddReg
+[DriverInstall.nt]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.nt
+AddReg=DriverInstall.nt.AddReg
-[USBModemCopyFileSection]
+[DriverCopyFiles.nt]
usbser.sys,,,0x20
-[Modem3.nt.AddReg]
-HKR,,DevLoader,,*ntkern
-HKR,,NTMPDriver,,usbser.sys
-HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+[DriverInstall.nt.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
-[Modem3.nt.Services]
-AddService=usbser, 0x00000002, DriverService
+[DriverInstall.nt.Services]
+AddService=usbser, 0x00000002, DriverService.nt
-[DriverService]
+[DriverService.nt]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
-ServiceBinary=%12%\usbser.sys
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
;------------------------------------------------------------------------------
-; String Definitions
+; Vista-64bit Sections
+;------------------------------------------------------------------------------
+
+[DriverInstall.NTamd64]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.NTamd64
+AddReg=DriverInstall.NTamd64.AddReg
+
+[DriverCopyFiles.NTamd64]
+%DRIVERFILENAME%.sys,,,0x20
+
+[DriverInstall.NTamd64.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+
+[DriverInstall.NTamd64.Services]
+AddService=usbser, 0x00000002, DriverService.NTamd64
+
+[DriverService.NTamd64]
+DisplayName=%SERVICE%
+ServiceType=1
+StartType=3
+ErrorControl=1
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
+
+
;------------------------------------------------------------------------------
+; Vendor and Product ID Definitions
+;------------------------------------------------------------------------------
+; When developing your USB device, the VID and PID used in the PC side
+; application program and the firmware on the microcontroller must match.
+; Modify the below line to use your VID and PID. Use the format as shown below.
+; Note: One INF file can be used for multiple devices with different VID and PIDs.
+; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
+;------------------------------------------------------------------------------
+[SourceDisksFiles]
+[SourceDisksNames]
+[DeviceList]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204B
+
+[DeviceList.NTamd64]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204B
-[Strings]
-COMPANY="LUFA Library"
-MFGNAME="Dean Camera"
-Modem3="USB Virtual Serial Port"
-SERVICE="USB Virtual Serial Port CDC Driver" \ No newline at end of file
+
+;------------------------------------------------------------------------------
+; String Definitions
+;------------------------------------------------------------------------------
+;Modify these strings to customize your device
+;------------------------------------------------------------------------------
+[Strings]
+MFGFILENAME="CDC_vista"
+DRIVERFILENAME ="usbser"
+MFGNAME="CCS, Inc."
+INSTDISK="LUFA USB-RS232 CDC Driver Installer"
+DESCRIPTION="Communications Port"
+SERVICE="USB RS-232 Emulation Driver" \ No newline at end of file
diff --git a/Demos/Device/LowLevel/CDC/LUFA CDC.inf b/Demos/Device/LowLevel/CDC/LUFA CDC.inf
index d9d9ed63a..4cdf59435 100644
--- a/Demos/Device/LowLevel/CDC/LUFA CDC.inf
+++ b/Demos/Device/LowLevel/CDC/LUFA CDC.inf
@@ -1,55 +1,106 @@
-; Windows LUFA CDC Setup File
+;************************************************************
+; Windows USB CDC ACM Setup File
; Copyright (c) 2000 Microsoft Corporation
-[Version]
-Signature="$Windows NT$"
+
+[Version]
+Signature="$Windows NT$"
Class=Ports
-ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
-Provider=%COMPANY%
+ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
+Provider=%MFGNAME%
LayoutFile=layout.inf
-DriverVer=06/06/2006,1.0.0.0
+CatalogFile=%MFGFILENAME%.cat
+DriverVer=11/15/2007,5.1.2600.0
-[Manufacturer]
-%MFGNAME% = ManufName
+[Manufacturer]
+%MFGNAME%=DeviceList, NTamd64
-[DestinationDirs]
-DefaultDestDir=12
+[DestinationDirs]
+DefaultDestDir=12
-[ManufName]
-%Modem3% = Modem3, USB\VID_03EB&PID_2044
;------------------------------------------------------------------------------
-; Windows 2000/XP Sections
+; Windows 2000/XP/Vista-32bit Sections
;------------------------------------------------------------------------------
-[Modem3.nt]
-CopyFiles=USBModemCopyFileSection
-AddReg=Modem3.nt.AddReg
+[DriverInstall.nt]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.nt
+AddReg=DriverInstall.nt.AddReg
-[USBModemCopyFileSection]
+[DriverCopyFiles.nt]
usbser.sys,,,0x20
-[Modem3.nt.AddReg]
-HKR,,DevLoader,,*ntkern
-HKR,,NTMPDriver,,usbser.sys
-HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+[DriverInstall.nt.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
-[Modem3.nt.Services]
-AddService=usbser, 0x00000002, DriverService
+[DriverInstall.nt.Services]
+AddService=usbser, 0x00000002, DriverService.nt
-[DriverService]
+[DriverService.nt]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
-ServiceBinary=%12%\usbser.sys
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
;------------------------------------------------------------------------------
-; String Definitions
+; Vista-64bit Sections
+;------------------------------------------------------------------------------
+
+[DriverInstall.NTamd64]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.NTamd64
+AddReg=DriverInstall.NTamd64.AddReg
+
+[DriverCopyFiles.NTamd64]
+%DRIVERFILENAME%.sys,,,0x20
+
+[DriverInstall.NTamd64.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+
+[DriverInstall.NTamd64.Services]
+AddService=usbser, 0x00000002, DriverService.NTamd64
+
+[DriverService.NTamd64]
+DisplayName=%SERVICE%
+ServiceType=1
+StartType=3
+ErrorControl=1
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
+
+
;------------------------------------------------------------------------------
+; Vendor and Product ID Definitions
+;------------------------------------------------------------------------------
+; When developing your USB device, the VID and PID used in the PC side
+; application program and the firmware on the microcontroller must match.
+; Modify the below line to use your VID and PID. Use the format as shown below.
+; Note: One INF file can be used for multiple devices with different VID and PIDs.
+; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
+;------------------------------------------------------------------------------
+[SourceDisksFiles]
+[SourceDisksNames]
+[DeviceList]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044
+
+[DeviceList.NTamd64]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2044
-[Strings]
-COMPANY="LUFA Library"
-MFGNAME="Dean Camera"
-Modem3="USB Virtual Serial Port"
-SERVICE="USB Virtual Serial Port CDC Driver" \ No newline at end of file
+
+;------------------------------------------------------------------------------
+; String Definitions
+;------------------------------------------------------------------------------
+;Modify these strings to customize your device
+;------------------------------------------------------------------------------
+[Strings]
+MFGFILENAME="CDC_vista"
+DRIVERFILENAME ="usbser"
+MFGNAME="CCS, Inc."
+INSTDISK="LUFA CDC Driver Installer"
+DESCRIPTION="Communications Port"
+SERVICE="USB RS-232 Emulation Driver" \ No newline at end of file
diff --git a/Demos/Device/LowLevel/DualCDC/LUFA DualCDC.inf b/Demos/Device/LowLevel/DualCDC/LUFA DualCDC.inf
index 10ba560f8..741bf28eb 100644
--- a/Demos/Device/LowLevel/DualCDC/LUFA DualCDC.inf
+++ b/Demos/Device/LowLevel/DualCDC/LUFA DualCDC.inf
@@ -1,56 +1,106 @@
-; Windows LUFA Dual CDC Setup File
+;************************************************************
+; Windows USB CDC ACM Setup File
; Copyright (c) 2000 Microsoft Corporation
-[Version]
-Signature="$Windows NT$"
+
+[Version]
+Signature="$Windows NT$"
Class=Ports
-ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
-Provider=%COMPANY%
+ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
+Provider=%MFGNAME%
LayoutFile=layout.inf
-DriverVer=06/06/2006,1.0.0.0
+CatalogFile=%MFGFILENAME%.cat
+DriverVer=11/15/2007,5.1.2600.0
-[Manufacturer]
-%MFGNAME% = ManufName
+[Manufacturer]
+%MFGNAME%=DeviceList, NTamd64
-[DestinationDirs]
-DefaultDestDir=12
+[DestinationDirs]
+DefaultDestDir=12
-[ManufName]
-%Modem3% = Modem3, USB\VID_03EB&PID_204E&MI_00
-%Modem3% = Modem3, USB\VID_03EB&PID_204E&MI_02
;------------------------------------------------------------------------------
-; Windows 2000/XP Sections
+; Windows 2000/XP/Vista-32bit Sections
;------------------------------------------------------------------------------
-[Modem3.nt]
-CopyFiles=USBModemCopyFileSection
-AddReg=Modem3.nt.AddReg
+[DriverInstall.nt]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.nt
+AddReg=DriverInstall.nt.AddReg
-[USBModemCopyFileSection]
+[DriverCopyFiles.nt]
usbser.sys,,,0x20
-[Modem3.nt.AddReg]
-HKR,,DevLoader,,*ntkern
-HKR,,NTMPDriver,,usbser.sys
-HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+[DriverInstall.nt.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
-[Modem3.nt.Services]
-AddService=usbser, 0x00000002, DriverService
+[DriverInstall.nt.Services]
+AddService=usbser, 0x00000002, DriverService.nt
-[DriverService]
+[DriverService.nt]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
-ServiceBinary=%12%\usbser.sys
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
;------------------------------------------------------------------------------
-; String Definitions
+; Vista-64bit Sections
+;------------------------------------------------------------------------------
+
+[DriverInstall.NTamd64]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.NTamd64
+AddReg=DriverInstall.NTamd64.AddReg
+
+[DriverCopyFiles.NTamd64]
+%DRIVERFILENAME%.sys,,,0x20
+
+[DriverInstall.NTamd64.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+
+[DriverInstall.NTamd64.Services]
+AddService=usbser, 0x00000002, DriverService.NTamd64
+
+[DriverService.NTamd64]
+DisplayName=%SERVICE%
+ServiceType=1
+StartType=3
+ErrorControl=1
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
+
+
;------------------------------------------------------------------------------
+; Vendor and Product ID Definitions
+;------------------------------------------------------------------------------
+; When developing your USB device, the VID and PID used in the PC side
+; application program and the firmware on the microcontroller must match.
+; Modify the below line to use your VID and PID. Use the format as shown below.
+; Note: One INF file can be used for multiple devices with different VID and PIDs.
+; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
+;------------------------------------------------------------------------------
+[SourceDisksFiles]
+[SourceDisksNames]
+[DeviceList]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204E&MI_00, USB\VID_03EB&PID_204E&MI_02
+
+[DeviceList.NTamd64]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204E&MI_00, USB\VID_03EB&PID_204E&MI_02
-[Strings]
-COMPANY="LUFA Library"
-MFGNAME="Dean Camera"
-Modem3="USB Virtual Serial Port"
-SERVICE="USB Virtual Serial Port CDC Driver" \ No newline at end of file
+
+;------------------------------------------------------------------------------
+; String Definitions
+;------------------------------------------------------------------------------
+;Modify these strings to customize your device
+;------------------------------------------------------------------------------
+[Strings]
+MFGFILENAME="CDC_vista"
+DRIVERFILENAME ="usbser"
+MFGNAME="CCS, Inc."
+INSTDISK="LUFA Dual CDC Driver Installer"
+DESCRIPTION="Communications Port"
+SERVICE="USB RS-232 Emulation Driver" \ No newline at end of file
diff --git a/Demos/Device/LowLevel/USBtoSerial/LUFA USBtoSerial.inf b/Demos/Device/LowLevel/USBtoSerial/LUFA USBtoSerial.inf
index bd9c8bf14..10a6a8ce2 100644
--- a/Demos/Device/LowLevel/USBtoSerial/LUFA USBtoSerial.inf
+++ b/Demos/Device/LowLevel/USBtoSerial/LUFA USBtoSerial.inf
@@ -1,55 +1,106 @@
-; Windows LUFA USB to Serial Setup File
+;************************************************************
+; Windows USB CDC ACM Setup File
; Copyright (c) 2000 Microsoft Corporation
-[Version]
-Signature="$Windows NT$"
+
+[Version]
+Signature="$Windows NT$"
Class=Ports
-ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
-Provider=%COMPANY%
+ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
+Provider=%MFGNAME%
LayoutFile=layout.inf
-DriverVer=06/06/2006,1.0.0.0
+CatalogFile=%MFGFILENAME%.cat
+DriverVer=11/15/2007,5.1.2600.0
-[Manufacturer]
-%MFGNAME% = ManufName
+[Manufacturer]
+%MFGNAME%=DeviceList, NTamd64
-[DestinationDirs]
-DefaultDestDir=12
+[DestinationDirs]
+DefaultDestDir=12
-[ManufName]
-%Modem3% = Modem3, USB\VID_03EB&PID_204B
;------------------------------------------------------------------------------
-; Windows 2000/XP Sections
+; Windows 2000/XP/Vista-32bit Sections
;------------------------------------------------------------------------------
-[Modem3.nt]
-CopyFiles=USBModemCopyFileSection
-AddReg=Modem3.nt.AddReg
+[DriverInstall.nt]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.nt
+AddReg=DriverInstall.nt.AddReg
-[USBModemCopyFileSection]
+[DriverCopyFiles.nt]
usbser.sys,,,0x20
-[Modem3.nt.AddReg]
-HKR,,DevLoader,,*ntkern
-HKR,,NTMPDriver,,usbser.sys
-HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+[DriverInstall.nt.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
-[Modem3.nt.Services]
-AddService=usbser, 0x00000002, DriverService
+[DriverInstall.nt.Services]
+AddService=usbser, 0x00000002, DriverService.nt
-[DriverService]
+[DriverService.nt]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
-ServiceBinary=%12%\usbser.sys
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
;------------------------------------------------------------------------------
-; String Definitions
+; Vista-64bit Sections
+;------------------------------------------------------------------------------
+
+[DriverInstall.NTamd64]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.NTamd64
+AddReg=DriverInstall.NTamd64.AddReg
+
+[DriverCopyFiles.NTamd64]
+%DRIVERFILENAME%.sys,,,0x20
+
+[DriverInstall.NTamd64.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+
+[DriverInstall.NTamd64.Services]
+AddService=usbser, 0x00000002, DriverService.NTamd64
+
+[DriverService.NTamd64]
+DisplayName=%SERVICE%
+ServiceType=1
+StartType=3
+ErrorControl=1
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
+
+
;------------------------------------------------------------------------------
+; Vendor and Product ID Definitions
+;------------------------------------------------------------------------------
+; When developing your USB device, the VID and PID used in the PC side
+; application program and the firmware on the microcontroller must match.
+; Modify the below line to use your VID and PID. Use the format as shown below.
+; Note: One INF file can be used for multiple devices with different VID and PIDs.
+; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
+;------------------------------------------------------------------------------
+[SourceDisksFiles]
+[SourceDisksNames]
+[DeviceList]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204B
+
+[DeviceList.NTamd64]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_204B
-[Strings]
-COMPANY="LUFA Library"
-MFGNAME="Dean Camera"
-Modem3="USB Virtual Serial Port"
-SERVICE="USB Virtual Serial Port CDC Driver" \ No newline at end of file
+
+;------------------------------------------------------------------------------
+; String Definitions
+;------------------------------------------------------------------------------
+;Modify these strings to customize your device
+;------------------------------------------------------------------------------
+[Strings]
+MFGFILENAME="CDC_vista"
+DRIVERFILENAME ="usbser"
+MFGNAME="CCS, Inc."
+INSTDISK="LUFA USB-RS232 CDC Driver Installer"
+DESCRIPTION="Communications Port"
+SERVICE="USB RS-232 Emulation Driver" \ No newline at end of file
diff --git a/Demos/Host/ClassDriver/StillImageHost/StillImageHost.c b/Demos/Host/ClassDriver/StillImageHost/StillImageHost.c
index d60db097b..ef073abd5 100644
--- a/Demos/Host/ClassDriver/StillImageHost/StillImageHost.c
+++ b/Demos/Host/ClassDriver/StillImageHost/StillImageHost.c
@@ -110,6 +110,10 @@ int main(void)
break;
}
+ printf("Turning off Device...\r\n");
+ SImage_Host_SendCommand(&DigitalCamera_SI_Interface, 0x1013, 0, 0, 0, 0, NULL);
+ printf("Device Off.\r\n");
+
printf("Closing Session...\r\n");
if (SImage_Host_CloseSession(&DigitalCamera_SI_Interface) != PIPE_RWSTREAM_NoError)
@@ -119,8 +123,6 @@ int main(void)
break;
}
- printf("Device Idle.\r\n");
-
LEDs_SetAllLEDs(LEDMASK_USB_READY);
USB_HostState = HOST_STATE_WaitForDeviceRemoval;
break;
diff --git a/LUFA/Drivers/USB/Class/Host/StillImage.c b/LUFA/Drivers/USB/Class/Host/StillImage.c
index a3b150848..ecaed3a89 100644
--- a/LUFA/Drivers/USB/Class/Host/StillImage.c
+++ b/LUFA/Drivers/USB/Class/Host/StillImage.c
@@ -153,10 +153,7 @@ static uint8_t SImage_Host_SendBlockHeader(USB_ClassInfo_SI_Host_t* SIInterfaceI
{
uint8_t ErrorCode;
- if (SIInterfaceInfo->State.IsSessionOpen)
- PIMAHeader->TransactionID = SIInterfaceInfo->State.TransactionID++;
- else
- PIMAHeader->TransactionID = 0;
+ PIMAHeader->TransactionID = SIInterfaceInfo->State.TransactionID++;
Pipe_SelectPipe(SIInterfaceInfo->Config.DataOUTPipeNumber);
Pipe_Unfreeze();
@@ -164,15 +161,12 @@ static uint8_t SImage_Host_SendBlockHeader(USB_ClassInfo_SI_Host_t* SIInterfaceI
if ((ErrorCode = Pipe_Write_Stream_LE(PIMAHeader, PIMA_COMMAND_SIZE(0), NO_STREAM_CALLBACK)) != PIPE_RWSTREAM_NoError)
return ErrorCode;
- if (PIMAHeader->Type == CType_CommandBlock)
- {
- uint8_t ParamBytes = (PIMAHeader->DataLength - PIMA_COMMAND_SIZE(0));
+ uint8_t ParamBytes = (PIMAHeader->DataLength - PIMA_COMMAND_SIZE(0));
- if (ParamBytes)
- {
- if ((ErrorCode = Pipe_Write_Stream_LE(&PIMAHeader->Params, ParamBytes, NO_STREAM_CALLBACK)) != PIPE_RWSTREAM_NoError)
- return ErrorCode;
- }
+ if (ParamBytes)
+ {
+ if ((ErrorCode = Pipe_Write_Stream_LE(&PIMAHeader->Params, ParamBytes, NO_STREAM_CALLBACK)) != PIPE_RWSTREAM_NoError)
+ return ErrorCode;
}
Pipe_ClearOUT();
@@ -318,14 +312,13 @@ uint8_t SImage_Host_OpenSession(USB_ClassInfo_SI_Host_t* SIInterfaceInfo)
.Params = {},
};
- SIInterfaceInfo->State.TransactionID = 1;
-
if ((ErrorCode = SImage_Host_SendBlockHeader(SIInterfaceInfo, &PIMABlock)) != PIPE_RWSTREAM_NoError)
return ErrorCode;
if ((ErrorCode = SImage_Host_ReceiveBlockHeader(SIInterfaceInfo, &PIMABlock)) != PIPE_RWSTREAM_NoError)
return ErrorCode;
+ SIInterfaceInfo->State.TransactionID = 0;
SIInterfaceInfo->State.IsSessionOpen = true;
return PIPE_RWSTREAM_NoError;
@@ -354,6 +347,37 @@ uint8_t SImage_Host_CloseSession(USB_ClassInfo_SI_Host_t* SIInterfaceInfo)
SIInterfaceInfo->State.IsSessionOpen = false;
+ if ((PIMABlock.Type != CType_ResponseBlock) || (PIMABlock.Code != 0x2001))
+ return SI_ERROR_LOGICAL_CMD_FAILED;
+
+ return PIPE_RWSTREAM_NoError;
+}
+
+uint8_t SImage_Host_SendCommand(USB_ClassInfo_SI_Host_t* SIInterfaceInfo, uint16_t Operation, uint8_t UsedParams,
+ uint32_t Param1, uint32_t Param2, uint32_t Param3, void* DataBuff)
+{
+ if ((USB_HostState != HOST_STATE_Configured) || !(SIInterfaceInfo->State.IsActive))
+ return HOST_SENDCONTROL_DeviceDisconnect;
+
+ uint8_t ErrorCode;
+
+ SI_PIMA_Container_t PIMABlock = (SI_PIMA_Container_t)
+ {
+ .DataLength = PIMA_COMMAND_SIZE(UsedParams),
+ .Type = CType_CommandBlock,
+ .Code = Operation,
+ .Params = {Param1, Param2, Param3},
+ };
+
+ if ((ErrorCode = SImage_Host_SendBlockHeader(SIInterfaceInfo, &PIMABlock)) != PIPE_RWSTREAM_NoError)
+ return ErrorCode;
+
+ if ((ErrorCode = SImage_Host_ReceiveBlockHeader(SIInterfaceInfo, &PIMABlock)) != PIPE_RWSTREAM_NoError)
+ return ErrorCode;
+
+ if ((PIMABlock.Type != CType_ResponseBlock) || (PIMABlock.Code != 0x2001))
+ return SI_ERROR_LOGICAL_CMD_FAILED;
+
return PIPE_RWSTREAM_NoError;
}
diff --git a/LUFA/Drivers/USB/Class/Host/StillImage.h b/LUFA/Drivers/USB/Class/Host/StillImage.h
index 7e33fc4b1..75f76eb8e 100644
--- a/LUFA/Drivers/USB/Class/Host/StillImage.h
+++ b/LUFA/Drivers/USB/Class/Host/StillImage.h
@@ -54,6 +54,9 @@
#endif
/* Public Interface - May be used in end-application: */
+ /* Macros: */
+ #define SI_ERROR_LOGICAL_CMD_FAILED 0xC0
+
/* Type Defines: */
typedef struct
{
@@ -125,6 +128,9 @@
uint8_t SImage_Host_OpenSession(USB_ClassInfo_SI_Host_t* SIInterfaceInfo);
uint8_t SImage_Host_CloseSession(USB_ClassInfo_SI_Host_t* SIInterfaceInfo);
+
+ uint8_t SImage_Host_SendCommand(USB_ClassInfo_SI_Host_t* SIInterfaceInfo, uint16_t Operation, uint8_t UsedParams,
+ uint32_t Param1, uint32_t Param2, uint32_t Param3, void* DataBuff);
/* Private Interface - For use in library only: */
#if !defined(__DOXYGEN__)
diff --git a/LUFA/ManPages/ChangeLog.txt b/LUFA/ManPages/ChangeLog.txt
index 60f00ed15..db91efe7b 100644
--- a/LUFA/ManPages/ChangeLog.txt
+++ b/LUFA/ManPages/ChangeLog.txt
@@ -36,6 +36,7 @@
* - Changed HIDParser to only zero out important values in the Parsed HID Report Item Information structure to save cycles
* - The HID report parser now always processed FEATURE items - HID_ENABLE_FEATURE_PROCESSING token now has no effect
* - The HID report parser now always ignores constant-data items, HID_INCLUDE_CONSTANT_DATA_ITEMS token now has no effect
+ * - The Benito Programmer project now has its own unique VID/PID pair allocated from the Atmel donated LUFA VID/PID pool
*
* <b>Fixed:</b>
* - Fixed possible lockup in the CDC device class driver, when the host sends data that is a multiple of the
@@ -54,6 +55,7 @@
* routine, so that ignored callbacks don't cause incorrect data to be sent
* - Fixed StillImageHost not correctly freezing and unfreezing data pipes while waiting for a response block header
* - Fixed error in PrinterHost preventing the full page data from being sent to the attached device
+ * - CDC based demos and project now work under 64 bit versions of Windows (thanks to Ronny Hanson, Thomas Bleeker)
*
*
* \section Sec_ChangeLog090810 Version 090810
diff --git a/LUFA/ManPages/LUFAPoweredProjects.txt b/LUFA/ManPages/LUFAPoweredProjects.txt
index 752bf7b2b..f58dc88f0 100644
--- a/LUFA/ManPages/LUFAPoweredProjects.txt
+++ b/LUFA/ManPages/LUFAPoweredProjects.txt
@@ -33,6 +33,7 @@
* - Bicycle POV: http://www.code.google.com/p/bicycleledpov/
* - CAMTRIG, a remote Camera Trigger device: http://code.astraw.com/projects/motmot/camtrig
* - "Fingerlicking Wingdinger" (WARNING: Bad Language if no Javascript), a MIDI controller - http://noisybox.net/electronics/wingdinger/
+ * - Garmin GPS USB to NMEA standard serial sentence translator: http://github.com/nall/garmin-transmogrifier/tree/master
* - Opendous-JTAG, an open source JTAG device: http://code.google.com/p/opendous-jtag/
* - Openkubus, an open source hardware-based authentication dongle: http://code.google.com/p/openkubus/
* - Orbee, a USB connected RGB Orb for notifications: http://www.franksworkshop.com.au/Electronics/Orbee/Orbee.htm
@@ -51,4 +52,5 @@
* - ARPS Locator: http://la3t.hamradio.no/lab//?id=tracker_en
* - Digital Survey Instruments Magnetometer and Pointer: http://www.digitalsurveyinstruments.com/
* - Lightweight CC110x USB dongle for 868MHz Protocols: http://busware.de/tiki-index.php?page=CUL
+ * - BAP, A tiny LUFA based AVR Programmer: http://www.busware.de/tiki-index.php?page=BAP
*/ \ No newline at end of file
diff --git a/LUFA/ManPages/VIDAndPIDValues.txt b/LUFA/ManPages/VIDAndPIDValues.txt
index 296098fc5..e0259141c 100644
--- a/LUFA/ManPages/VIDAndPIDValues.txt
+++ b/LUFA/ManPages/VIDAndPIDValues.txt
@@ -228,7 +228,7 @@
* 0x2060
* </td>
* <td>
- * <i>Currently Unallocated</i>
+ * <i>Benito Programmer Project</i>
* </td>
* </tr>
*
diff --git a/Projects/Benito/Benito Programmer.inf b/Projects/Benito/Benito Programmer.inf
index bd9c8bf14..6af572527 100644
--- a/Projects/Benito/Benito Programmer.inf
+++ b/Projects/Benito/Benito Programmer.inf
@@ -1,55 +1,106 @@
-; Windows LUFA USB to Serial Setup File
+;************************************************************
+; Windows USB CDC ACM Setup File
; Copyright (c) 2000 Microsoft Corporation
-[Version]
-Signature="$Windows NT$"
+
+[Version]
+Signature="$Windows NT$"
Class=Ports
-ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
-Provider=%COMPANY%
+ClassGuid={4D36E978-E325-11CE-BFC1-08002BE10318}
+Provider=%MFGNAME%
LayoutFile=layout.inf
-DriverVer=06/06/2006,1.0.0.0
+CatalogFile=%MFGFILENAME%.cat
+DriverVer=11/15/2007,5.1.2600.0
-[Manufacturer]
-%MFGNAME% = ManufName
+[Manufacturer]
+%MFGNAME%=DeviceList, NTamd64
-[DestinationDirs]
-DefaultDestDir=12
+[DestinationDirs]
+DefaultDestDir=12
-[ManufName]
-%Modem3% = Modem3, USB\VID_03EB&PID_204B
;------------------------------------------------------------------------------
-; Windows 2000/XP Sections
+; Windows 2000/XP/Vista-32bit Sections
;------------------------------------------------------------------------------
-[Modem3.nt]
-CopyFiles=USBModemCopyFileSection
-AddReg=Modem3.nt.AddReg
+[DriverInstall.nt]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.nt
+AddReg=DriverInstall.nt.AddReg
-[USBModemCopyFileSection]
+[DriverCopyFiles.nt]
usbser.sys,,,0x20
-[Modem3.nt.AddReg]
-HKR,,DevLoader,,*ntkern
-HKR,,NTMPDriver,,usbser.sys
-HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+[DriverInstall.nt.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
-[Modem3.nt.Services]
-AddService=usbser, 0x00000002, DriverService
+[DriverInstall.nt.Services]
+AddService=usbser, 0x00000002, DriverService.nt
-[DriverService]
+[DriverService.nt]
DisplayName=%SERVICE%
ServiceType=1
StartType=3
ErrorControl=1
-ServiceBinary=%12%\usbser.sys
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
;------------------------------------------------------------------------------
-; String Definitions
+; Vista-64bit Sections
+;------------------------------------------------------------------------------
+
+[DriverInstall.NTamd64]
+include=mdmcpq.inf
+CopyFiles=DriverCopyFiles.NTamd64
+AddReg=DriverInstall.NTamd64.AddReg
+
+[DriverCopyFiles.NTamd64]
+%DRIVERFILENAME%.sys,,,0x20
+
+[DriverInstall.NTamd64.AddReg]
+HKR,,DevLoader,,*ntkern
+HKR,,NTMPDriver,,%DRIVERFILENAME%.sys
+HKR,,EnumPropPages32,,"MsPorts.dll,SerialPortPropPageProvider"
+
+[DriverInstall.NTamd64.Services]
+AddService=usbser, 0x00000002, DriverService.NTamd64
+
+[DriverService.NTamd64]
+DisplayName=%SERVICE%
+ServiceType=1
+StartType=3
+ErrorControl=1
+ServiceBinary=%12%\%DRIVERFILENAME%.sys
+
+
;------------------------------------------------------------------------------
+; Vendor and Product ID Definitions
+;------------------------------------------------------------------------------
+; When developing your USB device, the VID and PID used in the PC side
+; application program and the firmware on the microcontroller must match.
+; Modify the below line to use your VID and PID. Use the format as shown below.
+; Note: One INF file can be used for multiple devices with different VID and PIDs.
+; For each supported device, append ",USB\VID_xxxx&PID_yyyy" to the end of the line.
+;------------------------------------------------------------------------------
+[SourceDisksFiles]
+[SourceDisksNames]
+[DeviceList]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2060
+
+[DeviceList.NTamd64]
+%DESCRIPTION%=DriverInstall, USB\VID_03EB&PID_2060
-[Strings]
-COMPANY="LUFA Library"
-MFGNAME="Dean Camera"
-Modem3="USB Virtual Serial Port"
-SERVICE="USB Virtual Serial Port CDC Driver" \ No newline at end of file
+
+;------------------------------------------------------------------------------
+; String Definitions
+;------------------------------------------------------------------------------
+;Modify these strings to customize your device
+;------------------------------------------------------------------------------
+[Strings]
+MFGFILENAME="CDC_vista"
+DRIVERFILENAME ="usbser"
+MFGNAME="CCS, Inc."
+INSTDISK="LUFA Benito Programmer Driver Installer"
+DESCRIPTION="Communications Port"
+SERVICE="USB RS-232 Emulation Driver" \ No newline at end of file
diff --git a/Projects/Benito/Descriptors.c b/Projects/Benito/Descriptors.c
index cab20326f..9e08a41b2 100644
--- a/Projects/Benito/Descriptors.c
+++ b/Projects/Benito/Descriptors.c
@@ -54,8 +54,8 @@ USB_Descriptor_Device_t PROGMEM DeviceDescriptor =
.Endpoint0Size = FIXED_CONTROL_ENDPOINT_SIZE,
.VendorID = 0x03EB,
- .ProductID = 0x204B,
- .ReleaseNumber = 0x0001,
+ .ProductID = 0x2060,
+ .ReleaseNumber = 0x0000,
.ManufacturerStrIndex = 0x01,
.ProductStrIndex = 0x02,