Compare commits

..
6 Commits
Author SHA1 Message Date
c89c084146 CLI: More MSYS2 fixes (#8577)
* CLI: More MSYS2 fixes

Now I can fully setup and work with qmk_firmware on an MSYS2
installation without any errors or exceptions.

* Apply suggestions from code review

Co-Authored-By: skullydazed <[email protected]>

* Some improvements

* Remove unnecessary import

* Remove slow, unused code

Getting the version from GIT was slow on both Windows and Docker.
Until we find a better, faster way, this is removed.

* remove unused imports

* Implement @vomindoraan's suggestions

* refine how we pick the shell to use

* Apply @fauxpark's suggestions

fauxpark investigated the topic of shells in MSYS2 a bit and we come to the conclusion that the safest bet was to just use the user's shell.
Anything more just opens up more edge-cases than it solves.

Co-Authored-By: Ryan <[email protected]>

* Use `platform_id` in doctor

This will bring it in line with the new code.

Co-authored-by: skullydazed <[email protected]>
Co-authored-by: skullY <[email protected]>
Co-authored-by: Ryan <[email protected]>
2020-03-29 14:29:44 +02:00
Casper Weiss BangandRyan 13fff52f6b fixed problem with implicit declaration in quantum/rgblight.c (#8406)
* Update tmk_core/common/progmem.h

Co-Authored-By: Ryan <[email protected]>

* Update quantum/rgblight.c

Co-Authored-By: Ryan <[email protected]>

* fixed problem with implicit declaration in quantum/rgblight.c (#8381)

Co-authored-by: Ryan <[email protected]>
2020-03-28 23:35:11 +00:00
stanrc85 7bf9d9dc0a [keymap] Add Alice keymap and to userspace files (#8571)
* convert my 60 keymap to alice

* add via to rules for alice

* remove split backspace and add backlight keycodes

* disable LTO for alice pcb

* keymap alignment formatting
2020-03-28 03:57:27 +00:00
Ryan 14079ce698 V-USB: Use structs for USB descriptors (#8572)
* V-USB: Use structs for USB descriptors

* Update usbconfigs

* cformat pass
2020-03-28 13:02:25 +11:00
Ryan 05d9a0ff03 Fix inverted backlight for XD60 (#8575) 2020-03-27 11:00:13 +00:00
MechMerlin b9d0b1f064 [Keyboard] MountainBlocks MB17 (#8554)
* initial commit

* preliminary support for mb17 using the qmk default keymap

* add the VIA keymap

* add qmk configurator support

* code cleanups before submission

* Update keyboards/mountainblocks/mb17/rules.mk

* Update keyboards/mountainblocks/mb17/info.json

* remove file
2020-03-26 17:54:06 -07:00
71 changed files with 879 additions and 599 deletions

No files matched your search

-12
View File
@@ -2,10 +2,8 @@
"""CLI wrapper for running QMK commands. """CLI wrapper for running QMK commands.
""" """
import os import os
import subprocess
import sys import sys
from importlib.util import find_spec from importlib.util import find_spec
from time import strftime
# Add the QMK python libs to our path # Add the QMK python libs to our path
script_dir = os.path.dirname(os.path.realpath(__file__)) script_dir = os.path.dirname(os.path.realpath(__file__))
@@ -35,16 +33,6 @@ with open(os.path.join(qmk_dir, 'requirements.txt'), 'r') as fd:
print('Please run `pip3 install -r requirements.txt` to install the python dependencies.') print('Please run `pip3 install -r requirements.txt` to install the python dependencies.')
exit(255) exit(255)
# Figure out our version
# TODO(skullydazed/anyone): Find a method that doesn't involve git. This is slow in docker and on windows.
command = ['git', 'describe', '--abbrev=6', '--dirty', '--always', '--tags']
result = subprocess.run(command, universal_newlines=True, stdout=subprocess.PIPE, stderr=subprocess.STDOUT)
if result.returncode == 0:
os.environ['QMK_VERSION'] = result.stdout.strip()
else:
os.environ['QMK_VERSION'] = 'nogit-' + strftime('%Y-%m-%d-%H:%M:%S') + '-dirty'
# Setup the CLI # Setup the CLI
import milc # noqa import milc # noqa
-3
View File
@@ -23,9 +23,6 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
#include <string.h> #include <string.h>
#include "progmem.h" #include "progmem.h"
#ifndef __AVR__
# define memcpy_P(des, src, len) memcpy(des, src, len)
#endif
// Used commands from spec sheet: https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf // Used commands from spec sheet: https://cdn-shop.adafruit.com/datasheets/SSD1306.pdf
// for SH1106: https://www.velleman.eu/downloads/29/infosheets/sh1106_datasheet.pdf // for SH1106: https://www.velleman.eu/downloads/29/infosheets/sh1106_datasheet.pdf
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -197,7 +197,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -206,7 +206,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -217,9 +217,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -298,18 +295,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -197,7 +197,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -206,7 +206,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -217,9 +217,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -298,18 +295,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -197,7 +197,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -206,7 +206,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -217,9 +217,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -298,18 +295,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -6
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,7 +305,7 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+158
View File
@@ -0,0 +1,158 @@
/*
Copyright 2020 mechmerlin
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "config_common.h"
/* USB Device descriptor parameter */
#define VENDOR_ID 0x4D42
#define PRODUCT_ID 0x0017
#define DEVICE_VER 0x0001
#define MANUFACTURER Mountainblocks
#define PRODUCT MB17
#define DESCRIPTION A custom numpad
/* key matrix size */
#define MATRIX_ROWS 5
#define MATRIX_COLS 4
/*
* Keyboard Matrix Assignments
*
* Change this to how you wired your keyboard
* COLS: AVR pins used for columns, left to right
* ROWS: AVR pins used for rows, top to bottom
* DIODE_DIRECTION: COL2ROW = COL = Anode (+), ROW = Cathode (-, marked on diode)
* ROW2COL = ROW = Anode (+), COL = Cathode (-, marked on diode)
*
*/
#define MATRIX_ROW_PINS { F4, B1, B3, B2, B6 }
#define MATRIX_COL_PINS { F7, E6, D7, C6 }
#define UNUSED_PINS
/* COL2ROW, ROW2COL*/
#define DIODE_DIRECTION COL2ROW
/*
* Split Keyboard specific options, make sure you have 'SPLIT_KEYBOARD = yes' in your rules.mk, and define SOFT_SERIAL_PIN.
*/
#define SOFT_SERIAL_PIN D0 // or D1, D2, D3, E6
/* Debounce reduces chatter (unintended double-presses) - set 0 if debouncing is not needed */
#define DEBOUNCE 5
/* define if matrix has ghost (lacks anti-ghosting diodes) */
//#define MATRIX_HAS_GHOST
/* Mechanical locking support. Use KC_LCAP, KC_LNUM or KC_LSCR instead in keymap */
#define LOCKING_SUPPORT_ENABLE
/* Locking resynchronize hack */
#define LOCKING_RESYNC_ENABLE
/* If defined, GRAVE_ESC will always act as ESC when CTRL is held.
* This is userful for the Windows task manager shortcut (ctrl+shift+esc).
*/
// #define GRAVE_ESC_CTRL_OVERRIDE
/*
* Force NKRO
*
* Force NKRO (nKey Rollover) to be enabled by default, regardless of the saved
* state in the bootmagic EEPROM settings. (Note that NKRO must be enabled in the
* makefile for this to work.)
*
* If forced on, NKRO can be disabled via magic key (default = LShift+RShift+N)
* until the next keyboard reset.
*
* NKRO may prevent your keystrokes from being detected in the BIOS, but it is
* fully operational during normal computer usage.
*
* For a less heavy-handed approach, enable NKRO via magic key (LShift+RShift+N)
* or via bootmagic (hold SPACE+N while plugging in the keyboard). Once set by
* bootmagic, NKRO mode will always be enabled until it is toggled again during a
* power-up.
*
*/
//#define FORCE_NKRO
/*
* Magic Key Options
*
* Magic keys are hotkey commands that allow control over firmware functions of
* the keyboard. They are best used in combination with the HID Listen program,
* found here: https://www.pjrc.com/teensy/hid_listen.html
*
* The options below allow the magic key functionality to be changed. This is
* useful if your keyboard/keypad is missing keys and you want magic key support.
*
*/
/* key combination for magic key command */
/* defined by default; to change, uncomment and set to the combination you want */
// #define IS_COMMAND() (get_mods() == MOD_MASK_SHIFT)
/* control how magic key switches layers */
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS true
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS true
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM false
/* override magic key keymap */
//#define MAGIC_KEY_SWITCH_LAYER_WITH_FKEYS
//#define MAGIC_KEY_SWITCH_LAYER_WITH_NKEYS
//#define MAGIC_KEY_SWITCH_LAYER_WITH_CUSTOM
//#define MAGIC_KEY_HELP H
//#define MAGIC_KEY_HELP_ALT SLASH
//#define MAGIC_KEY_DEBUG D
//#define MAGIC_KEY_DEBUG_MATRIX X
//#define MAGIC_KEY_DEBUG_KBD K
//#define MAGIC_KEY_DEBUG_MOUSE M
//#define MAGIC_KEY_VERSION V
//#define MAGIC_KEY_STATUS S
//#define MAGIC_KEY_CONSOLE C
//#define MAGIC_KEY_LAYER0 0
//#define MAGIC_KEY_LAYER0_ALT GRAVE
//#define MAGIC_KEY_LAYER1 1
//#define MAGIC_KEY_LAYER2 2
//#define MAGIC_KEY_LAYER3 3
//#define MAGIC_KEY_LAYER4 4
//#define MAGIC_KEY_LAYER5 5
//#define MAGIC_KEY_LAYER6 6
//#define MAGIC_KEY_LAYER7 7
//#define MAGIC_KEY_LAYER8 8
//#define MAGIC_KEY_LAYER9 9
//#define MAGIC_KEY_BOOTLOADER B
//#define MAGIC_KEY_BOOTLOADER_ALT ESC
//#define MAGIC_KEY_LOCK CAPS
//#define MAGIC_KEY_EEPROM E
//#define MAGIC_KEY_EEPROM_CLEAR BSPACE
//#define MAGIC_KEY_NKRO N
//#define MAGIC_KEY_SLEEP_LED Z
/* disable these deprecated features by default */
#ifndef LINK_TIME_OPTIMIZATION_ENABLE
#define NO_ACTION_MACRO
#define NO_ACTION_FUNCTION
#endif
+12
View File
@@ -0,0 +1,12 @@
{
"keyboard_name": "MB17",
"url": "",
"maintainer": "qmk",
"width": 4,
"height": 5,
"layouts": {
"LAYOUT_numpad_5x4": {
"layout": [{"x":0, "y":0}, {"x":1, "y":0}, {"x":2, "y":0}, {"x":3, "y":0}, {"x":0, "y":1}, {"x":1, "y":1}, {"x":2, "y":1}, {"x":0, "y":2}, {"x":1, "y":2}, {"x":2, "y":2}, {"x":3, "y":1, "h":2}, {"x":0, "y":3}, {"x":1, "y":3}, {"x":2, "y":3}, {"x":0, "y":4, "w":2}, {"x":2, "y":4}, {"x":3, "y":3, "h":2}]
}
}
}
@@ -0,0 +1,60 @@
/* Copyright 2020 mechmerlin
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* ┌───┬───┬───┬───┐
* │TG1│ / │ * │ - │
* ├───┼───┼───┼───┤
* │ 7 │ 8 │ 9 │ │
* ├───┼───┼───┤ + │
* │ 4 │ 5 │ 6 │ │
* ├───┼───┼───┼───┤
* │ 1 │ 2 │ 3 │ │
* ├───┴───┼───┤Ent│
* │ 0 │ . │ │
* └───────┴───┴───┘
*/
[0] = LAYOUT_numpad_5x4(
TG(1), KC_PSLS, KC_PAST, KC_PMNS,
KC_P7, KC_P8, KC_P9,
KC_P4, KC_P5, KC_P6, KC_PPLS,
KC_P1, KC_P2, KC_P3,
KC_P0, KC_PDOT, KC_PENT
),
/*
* ┌───┬───┬───┬───┐
* │TG1│ / │ * │ - │
* ┌───┬───┬───┐───┤
* │Hom│ ↑ │PgU│ │
* ├───┼───┼───┤ + │
* │ ← │ │ → │ │
* ├───┼───┼───┤───┤
* │End│ ↓ │PgD│ │
* ├───┴───┼───┤Ent│
* │Insert │Del│ │
* └───────┴───┘───┘
*/
[1] = LAYOUT_numpad_5x4(
_______, _______, _______, _______,
KC_HOME, KC_UP, KC_PGUP,
KC_LEFT, XXXXXXX, KC_RGHT, _______,
KC_END, KC_DOWN, KC_PGDN,
KC_INS, KC_DEL, _______
)
};
@@ -0,0 +1 @@
# The default keymap for mb17
@@ -0,0 +1,76 @@
/* Copyright 2020 mechmerlin
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
/*
* ┌───┬───┬───┬───┐
* │TG1│ / │ * │ - │
* ├───┼───┼───┼───┤
* │ 7 │ 8 │ 9 │ │
* ├───┼───┼───┤ + │
* │ 4 │ 5 │ 6 │ │
* ├───┼───┼───┼───┤
* │ 1 │ 2 │ 3 │ │
* ├───┴───┼───┤Ent│
* │ 0 │ . │ │
* └───────┴───┴───┘
*/
[0] = LAYOUT_numpad_5x4(
TG(1), KC_PSLS, KC_PAST, KC_PMNS,
KC_P7, KC_P8, KC_P9,
KC_P4, KC_P5, KC_P6, KC_PPLS,
KC_P1, KC_P2, KC_P3,
KC_P0, KC_PDOT, KC_PENT
),
/*
* ┌───┬───┬───┬───┐
* │TG1│ / │ * │ - │
* ┌───┬───┬───┐───┤
* │Hom│ ↑ │PgU│ │
* ├───┼───┼───┤ + │
* │ ← │ │ → │ │
* ├───┼───┼───┤───┤
* │End│ ↓ │PgD│ │
* ├───┴───┼───┤Ent│
* │Insert │Del│ │
* └───────┴───┘───┘
*/
[1] = LAYOUT_numpad_5x4(
_______, _______, _______, _______,
KC_HOME, KC_UP, KC_PGUP,
KC_LEFT, XXXXXXX, KC_RGHT, _______,
KC_END, KC_DOWN, KC_PGDN,
KC_INS, KC_DEL, _______
),
[2] = LAYOUT_numpad_5x4(
_______, _______, _______, _______,
_______, _______, _______,
_______, _______, _______, _______,
_______, _______, _______,
_______, _______, _______
),
[3] = LAYOUT_numpad_5x4(
_______, _______, _______, _______,
_______, _______, _______,
_______, _______, _______, _______,
_______, _______, _______,
_______, _______, _______
)
};
@@ -0,0 +1,2 @@
VIA_ENABLE = yes
LTO_ENABLE = yes
+17
View File
@@ -0,0 +1,17 @@
/* Copyright 2020 mechmerlin
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include "mb17.h"
+35
View File
@@ -0,0 +1,35 @@
/* Copyright 2020 mechmerlin
*
* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 2 of the License, or
* (at your option) any later version.
*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#pragma once
#include "quantum.h"
#define ___ KC_NO
#define LAYOUT_numpad_5x4( \
k00, k01, k02, k03, \
k10, k11, k12, \
k20, k21, k22, k23, \
k30, k31, k32, \
k41, k42, k43 \
){ \
{ k00, k01, k02, k03 }, \
{ k10, k11, k12, ___ }, \
{ k20, k21, k22, k23 }, \
{ k30, k31, k32, ___ }, \
{ ___, k41, k42, k43 } \
}
+13
View File
@@ -0,0 +1,13 @@
# MB17
A single layout sandwich numpad.
* Keyboard Maintainer: [MechMerlin](https://github.com/mechmerlin)
* Hardware Supported: MB17
* Hardware Availability: TBD
Make example for this keyboard (after setting up your build environment):
make mountainblocks/mb17:default
See the [build environment setup](https://docs.qmk.fm/#/getting_started_build_tools) and the [make instructions](https://docs.qmk.fm/#/getting_started_make_guide) for more information. Brand new to QMK? Start with our [Complete Newbs Guide](https://docs.qmk.fm/#/newbs).
+32
View File
@@ -0,0 +1,32 @@
# MCU name
MCU = atmega32u4
# Bootloader selection
# Teensy halfkay
# Pro Micro caterina
# Atmel DFU atmel-dfu
# LUFA DFU lufa-dfu
# QMK DFU qmk-dfu
# ATmega32A bootloadHID
# ATmega328P USBasp
BOOTLOADER = caterina
# Build Options
# change yes to no to disable
#
BOOTMAGIC_ENABLE = lite # Virtual DIP switch configuration
MOUSEKEY_ENABLE = yes # Mouse keys
EXTRAKEY_ENABLE = yes # Audio control and System control
CONSOLE_ENABLE = yes # Console for debug
COMMAND_ENABLE = yes # Commands for debug and configuration
# Do not enable SLEEP_LED_ENABLE. it uses the same timer as BACKLIGHT_ENABLE
SLEEP_LED_ENABLE = no # Breathing sleep LED during USB suspend
# if this doesn't work, see here: https://github.com/tmk/tmk_keyboard/wiki/FAQ#nkro-doesnt-work
NKRO_ENABLE = no # USB Nkey Rollover
BACKLIGHT_ENABLE = no # Enable keyboard backlight functionality
RGBLIGHT_ENABLE = no # Enable keyboard RGB underglow
MIDI_ENABLE = no # MIDI support
BLUETOOTH_ENABLE = no # Enable Bluetooth with the Adafruit EZ-Key HID
AUDIO_ENABLE = no # Audio output on port C6
FAUXCLICKY_ENABLE = no # Use buzzer to emulate clicky switches
HD44780_ENABLE = no # Enable support for HD44780 based LCDs
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
@@ -0,0 +1,58 @@
/*
Copyright 2012,2013 Jun Wako <[email protected]>
This program is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation, either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
#include QMK_KEYBOARD_H
#include "stanrc85.h"
// Each layer gets a name for readability, which is then used in the keymap matrix below.
// The underscores don't mean anything - you can have a layer called STUFF or any other name.
// Layer names don't all need to be of the same length, obviously, and you can also skip them
// entirely and just use numbers.
const uint16_t PROGMEM keymaps[][MATRIX_ROWS][MATRIX_COLS] = {
[_QWERTY] = LAYOUT_default(
KC_ESC, TD_TESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, KC_BSPC,
KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
KC_PGDN, KC_CTLE, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN2_60),
KC_LCTL, KC_LALT, LT_SPCF, KC_LGUI, LT_SPCF, TD_TWIN, TD_TCTL
),
[_DEFAULT] = LAYOUT_default(
KC_ESC, KC_GESC, KC_1, KC_2, KC_3, KC_4, KC_5, KC_6, KC_7, KC_8, KC_9, KC_0, KC_MINS, KC_EQL, _______, KC_BSPC,
KC_PGUP, KC_TAB, KC_Q, KC_W, KC_E, KC_R, KC_T, KC_Y, KC_U, KC_I, KC_O, KC_P, KC_LBRC, KC_RBRC, KC_BSLS,
KC_PGDN, KC_CAPS, KC_A, KC_S, KC_D, KC_F, KC_G, KC_H, KC_J, KC_K, KC_L, KC_SCLN, KC_QUOT, KC_ENT,
KC_LSFT, KC_Z, KC_X, KC_C, KC_V, KC_B, KC_B, KC_N, KC_M, KC_COMM, KC_DOT, KC_SLSH, KC_RSFT, MO(_FN2_60),
KC_LCTL, KC_LALT, KC_SPC, MO(_FN1_60), KC_SPC, KC_RALT, KC_RCTL
),
[_FN1_60] = LAYOUT_default(
_______, KC_TILD, KC_F1, KC_F2, KC_F3, KC_F4, KC_F5, KC_F6, KC_F7, KC_F8, KC_F9, KC_F10, KC_F11, KC_F12, _______, KC_DEL,
_______, _______, _______, CA_QUOT, KC_VOLU, CA_SCLN, _______, _______, KC_HOME, KC_UP, KC_END, KC_PSCR, _______, _______, KC_INS,
_______, KC_CAPS, _______, KC_MUTE, KC_VOLD, KC_MPLY, _______, _______, KC_LEFT, KC_DOWN, KC_RGHT, _______, _______, _______,
_______, KC_RDP, _______, _______, _______, _______, _______, _______, KC_WBAK, KC_WFWD, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, _______
),
[_FN2_60] = LAYOUT_default(
BL_TOGG, RGB_TOG, RGB_MOD, RGB_VAD, RGB_VAI, RGB_SAI, RGB_HUD, RGB_HUI, _______, _______, _______, _______, _______, _______, _______, _______,
BL_INC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, RESET,
BL_DEC, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, KC_MAKE,
_______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______, _______,
_______, _______, _______, _______, _______, _______, TG(_DEFAULT)
)
};
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+1
View File
@@ -48,6 +48,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Backlight Setup */ /* Backlight Setup */
#define BACKLIGHT_PIN F5 #define BACKLIGHT_PIN F5
#define BACKLIGHT_LEVELS 6 #define BACKLIGHT_LEVELS 6
#define BACKLIGHT_ON_STATE 0
/* COL2ROW or ROW2COL */ /* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW #define DIODE_DIRECTION COL2ROW
+1
View File
@@ -48,6 +48,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
/* Backlight Setup */ /* Backlight Setup */
#define BACKLIGHT_PIN F5 #define BACKLIGHT_PIN F5
#define BACKLIGHT_LEVELS 6 #define BACKLIGHT_LEVELS 6
#define BACKLIGHT_ON_STATE 0
/* COL2ROW or ROW2COL */ /* COL2ROW or ROW2COL */
#define DIODE_DIRECTION COL2ROW #define DIODE_DIRECTION COL2ROW
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -207,7 +207,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -216,7 +216,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -227,9 +227,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -308,18 +305,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+3 -9
View File
@@ -208,7 +208,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -217,7 +217,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -228,9 +228,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -309,18 +306,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0
#define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+9 -8
View File
@@ -10,6 +10,7 @@ from pathlib import Path
from milc import cli from milc import cli
from qmk import submodules from qmk import submodules
from qmk.questions import yesno from qmk.questions import yesno
from qmk.commands import run
ESSENTIAL_BINARIES = { ESSENTIAL_BINARIES = {
'dfu-programmer': {}, 'dfu-programmer': {},
@@ -135,7 +136,7 @@ def check_modem_manager():
"""Returns True if ModemManager is running. """Returns True if ModemManager is running.
""" """
if shutil.which("systemctl"): if shutil.which("systemctl"):
mm_check = subprocess.run(["systemctl", "--quiet", "is-active", "ModemManager.service"], timeout=10) mm_check = run(["systemctl", "--quiet", "is-active", "ModemManager.service"], timeout=10)
if mm_check.returncode == 0: if mm_check.returncode == 0:
return True return True
@@ -153,7 +154,7 @@ def is_executable(command):
return False return False
# Make sure the command can be executed # Make sure the command can be executed
check = subprocess.run([command, '--version'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, timeout=5, universal_newlines=True) check = run([command, '--version'], stdout=subprocess.PIPE, stderr=subprocess.PIPE, timeout=5, universal_newlines=True)
ESSENTIAL_BINARIES[command]['output'] = check.stdout ESSENTIAL_BINARIES[command]['output'] = check.stdout
if check.returncode in [0, 1]: # Older versions of dfu-programmer exit 1 if check.returncode in [0, 1]: # Older versions of dfu-programmer exit 1
@@ -207,19 +208,19 @@ def doctor(cli):
ok = True ok = True
# Determine our OS and run platform specific tests # Determine our OS and run platform specific tests
OS = platform.platform().lower() # noqa (N806), uppercase name is ok in this instance platform_id = platform.platform().lower()
if 'darwin' in OS or 'macos' in OS: if 'darwin' in platform_id or 'macos' in platform_id:
if not os_test_macos(): if not os_test_macos():
ok = False ok = False
elif 'linux' in OS: elif 'linux' in platform_id:
if not os_test_linux(): if not os_test_linux():
ok = False ok = False
elif 'windows' in OS: elif 'windows' in platform_id:
if not os_test_windows(): if not os_test_windows():
ok = False ok = False
else: else:
cli.log.error('Unsupported OS detected: %s', OS) cli.log.error('Unsupported OS detected: %s', platform_id)
ok = False ok = False
# Make sure the basic CLI tools we need are available and can be executed. # Make sure the basic CLI tools we need are available and can be executed.
@@ -227,7 +228,7 @@ def doctor(cli):
if not bin_ok: if not bin_ok:
if yesno('Would you like to install dependencies?', default=True): if yesno('Would you like to install dependencies?', default=True):
subprocess.run(['util/qmk_install.sh']) run(['util/qmk_install.sh'])
bin_ok = check_binaries() bin_ok = check_binaries()
if bin_ok: if bin_ok:
+20
View File
@@ -1,6 +1,10 @@
"""Helper functions for commands. """Helper functions for commands.
""" """
import json import json
import os
import platform
import subprocess
import shlex
import qmk.keymap import qmk.keymap
@@ -61,3 +65,19 @@ def parse_configurator_json(configurator_file):
user_keymap = json.load(configurator_file) user_keymap = json.load(configurator_file)
return user_keymap return user_keymap
def run(command, *args, **kwargs):
"""Run a command with subprocess.run
"""
platform_id = platform.platform().lower()
if isinstance(command, str):
raise TypeError('`command` must be a non-text sequence such as list or tuple.')
if 'windows' in platform_id:
safecmd = map(shlex.quote, command)
safecmd = ' '.join(safecmd)
command = [os.environ['SHELL'], '-c', safecmd]
return subprocess.run(command, *args, **kwargs)
+2 -1
View File
@@ -1,9 +1,10 @@
import subprocess import subprocess
from qmk.commands import run
def check_subcommand(command, *args): def check_subcommand(command, *args):
cmd = ['bin/qmk', command] + list(args) cmd = ['bin/qmk', command] + list(args)
return subprocess.run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True) return run(cmd, stdout=subprocess.PIPE, stderr=subprocess.PIPE, universal_newlines=True)
def test_cformat(): def test_cformat():
+8 -39
View File
@@ -197,7 +197,7 @@ section at the end of this file).
/* -------------------------- Device Description --------------------------- */ /* -------------------------- Device Description --------------------------- */
#define USB_CFG_VENDOR_ID (VENDOR_ID & 0xFF), ((VENDOR_ID >> 8) & 0xFF) #define USB_CFG_VENDOR_ID
/* USB vendor ID for the device, low byte first. If you have registered your /* USB vendor ID for the device, low byte first. If you have registered your
* own Vendor ID, define it here. Otherwise you may use one of obdev's free * own Vendor ID, define it here. Otherwise you may use one of obdev's free
* shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules! * shared VID/PID pairs. Be sure to read USB-IDs-for-free.txt for rules!
@@ -206,7 +206,7 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_ID (PRODUCT_ID & 0xFF), ((PRODUCT_ID >> 8) & 0xFF) #define USB_CFG_DEVICE_ID
/* This is the ID of the product, low byte first. It is interpreted in the /* This is the ID of the product, low byte first. It is interpreted in the
* scope of the vendor ID. If you have registered your own VID with usb.org * scope of the vendor ID. If you have registered your own VID with usb.org
* or if you have licensed a PID from somebody else, define it here. Otherwise * or if you have licensed a PID from somebody else, define it here. Otherwise
@@ -217,34 +217,6 @@ section at the end of this file).
* with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand * with libusb: 0x16c0/0x5dc. Use this VID/PID pair ONLY if you understand
* the implications! * the implications!
*/ */
#define USB_CFG_DEVICE_VERSION (DEVICE_VER & 0xFF), ((DEVICE_VER >> 8) & 0xFF)
/* Version number of the device: Minor number first, then major number.
*/
#define USB_CFG_VENDOR_NAME 'w', 'i', 'n', 'k', 'e', 'y', 'l', 'e', 's', 's', '.', 'k', 'r'
#define USB_CFG_VENDOR_NAME_LEN 13
/* These two values define the vendor name returned by the USB device. The name
* must be given as a list of characters under single quotes. The characters
* are interpreted as Unicode (UTF-16) entities.
* If you don't want a vendor name string, undefine these macros.
* ALWAYS define a vendor name containing your Internet domain name if you use
* obdev's free shared VID/PID pair. See the file USB-IDs-for-free.txt for
* details.
*/
#define USB_CFG_DEVICE_NAME 'p', 's', '2', 'a', 'v', 'r', 'G', 'B'
#define USB_CFG_DEVICE_NAME_LEN 8
/* Same as above for the device name. If you don't want a device name, undefine
* the macros. See the file USB-IDs-for-free.txt before you assign a name if
* you use a shared VID/PID.
*/
/*#define USB_CFG_SERIAL_NUMBER 'N', 'o', 'n', 'e' */
/*#define USB_CFG_SERIAL_NUMBER_LEN 0 */
/* Same as above for the serial number. If you don't want a serial number,
* undefine the macros.
* It may be useful to provide the serial number through other means than at
* compile time. See the section about descriptor properties below for how
* to fine tune control over USB descriptors such as the string descriptor
* for the serial number.
*/
#define USB_CFG_DEVICE_CLASS 0 #define USB_CFG_DEVICE_CLASS 0
#define USB_CFG_DEVICE_SUBCLASS 0 #define USB_CFG_DEVICE_SUBCLASS 0
/* See USB specification if you want to conform to an existing device class. /* See USB specification if you want to conform to an existing device class.
@@ -323,18 +295,15 @@ section at the end of this file).
* }; * };
*/ */
#define USB_CFG_DESCR_PROPS_DEVICE 0 #define USB_CFG_DESCR_PROPS_DEVICE USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_CONFIGURATION USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_CONFIGURATION 0 #define USB_CFG_DESCR_PROPS_STRINGS USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRINGS 0 #define USB_CFG_DESCR_PROPS_STRING_0 USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_0 0 #define USB_CFG_DESCR_PROPS_STRING_VENDOR USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_VENDOR 0 #define USB_CFG_DESCR_PROPS_STRING_PRODUCT USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_PRODUCT 0 #define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER USB_PROP_IS_DYNAMIC
#define USB_CFG_DESCR_PROPS_STRING_SERIAL_NUMBER 0
#define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID 0
#define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC #define USB_CFG_DESCR_PROPS_HID_REPORT USB_PROP_IS_DYNAMIC
//#define USB_CFG_DESCR_PROPS_HID_REPORT 0
#define USB_CFG_DESCR_PROPS_UNKNOWN 0 #define USB_CFG_DESCR_PROPS_UNKNOWN 0
#define usbMsgPtr_t unsigned short #define usbMsgPtr_t unsigned short
+8 -3
View File
@@ -4,7 +4,12 @@
# include <avr/pgmspace.h> # include <avr/pgmspace.h>
#else #else
# define PROGMEM # define PROGMEM
# define pgm_read_byte(p) *((unsigned char*)(p)) # define memcpy_P(dest, src, n) memcpy(dest, src, n)
# define pgm_read_word(p) *((uint16_t*)(p)) # define pgm_read_byte(address_short) *((uint8_t*)(address_short))
# define pgm_read_dword(p) *((uint32_t*)(p)) # define pgm_read_word(address_short) *((uint16_t*)(address_short))
# define pgm_read_dword(address_short) *((uint32_t*)(address_short))
# define pgm_read_ptr(address_short) *((void*)(address_short))
# define strcmp_P(s1, s2) strcmp(s1, s2)
# define strcpy_P(dest, src) strcpy(dest, src)
# define strlen_P(src) strlen(src)
#endif #endif
+146 -100
View File
@@ -349,134 +349,174 @@ const PROGMEM uchar mouse_extra_hid_report[] = {
#endif #endif
// clang-format off // clang-format off
const PROGMEM usbStringDescriptor_t usbDescriptorStringZero = { const PROGMEM usbStringDescriptor_t usbStringDescriptorZero = {
.header = { .header = {
.bLength = USB_STRING_LEN(1), .bLength = USB_STRING_LEN(1),
.bDescriptorType = USBDESCR_STRING .bDescriptorType = USBDESCR_STRING
}, },
.bString = {0x0409} // US English .bString = {0x0409} // US English
}; };
const PROGMEM usbStringDescriptor_t usbDescriptorStringManufacturer = { const PROGMEM usbStringDescriptor_t usbStringDescriptorManufacturer = {
.header = { .header = {
.bLength = USB_STRING_LEN(sizeof(STR(MANUFACTURER)) - 1), .bLength = USB_STRING_LEN(sizeof(STR(MANUFACTURER)) - 1),
.bDescriptorType = USBDESCR_STRING .bDescriptorType = USBDESCR_STRING
}, },
.bString = LSTR(MANUFACTURER) .bString = LSTR(MANUFACTURER)
}; };
const PROGMEM usbStringDescriptor_t usbDescriptorStringProduct = { const PROGMEM usbStringDescriptor_t usbStringDescriptorProduct = {
.header = { .header = {
.bLength = USB_STRING_LEN(sizeof(STR(PRODUCT)) - 1), .bLength = USB_STRING_LEN(sizeof(STR(PRODUCT)) - 1),
.bDescriptorType = USBDESCR_STRING .bDescriptorType = USBDESCR_STRING
}, },
.bString = LSTR(PRODUCT) .bString = LSTR(PRODUCT)
}; };
const PROGMEM usbStringDescriptor_t usbDescriptorStringSerial = { const PROGMEM usbStringDescriptor_t usbStringDescriptorSerial = {
.header = { .header = {
.bLength = USB_STRING_LEN(sizeof(STR(SERIAL_NUMBER)) - 1), .bLength = USB_STRING_LEN(sizeof(STR(SERIAL_NUMBER)) - 1),
.bDescriptorType = USBDESCR_STRING .bDescriptorType = USBDESCR_STRING
}, },
.bString = LSTR(SERIAL_NUMBER) .bString = LSTR(SERIAL_NUMBER)
}; };
// clang-format on
#if USB_CFG_DESCR_PROPS_DEVICE
/* /*
* Descriptor for compite device: Keyboard + Mouse * Device descriptor
*
* contains: device, interface, HID and endpoint descriptors
*/ */
const PROGMEM usbDeviceDescriptor_t usbDeviceDescriptor = {
.header = {
.bLength = sizeof(usbDeviceDescriptor_t),
.bDescriptorType = USBDESCR_DEVICE
},
.bcdUSB = 0x0110,
.bDeviceClass = USB_CFG_DEVICE_CLASS,
.bDeviceSubClass = USB_CFG_DEVICE_SUBCLASS,
.bDeviceProtocol = 0x00,
.bMaxPacketSize0 = 8,
.idVendor = VENDOR_ID,
.idProduct = PRODUCT_ID,
.bcdDevice = DEVICE_VER,
.iManufacturer = 0x01,
.iProduct = 0x02,
.iSerialNumber = 0x03,
.bNumConfigurations = 1
};
#endif
#if USB_CFG_DESCR_PROPS_CONFIGURATION #if USB_CFG_DESCR_PROPS_CONFIGURATION
const PROGMEM char usbDescriptorConfiguration[] = { /*
/* USB configuration descriptor */ * Configuration descriptors
9, /* sizeof(usbDescriptorConfiguration): length of descriptor in bytes */ */
USBDESCR_CONFIG, /* descriptor type */ const PROGMEM usbConfigurationDescriptor_t usbConfigurationDescriptor = {
.header = {
.header = {
.bLength = sizeof(usbConfigurationDescriptorHeader_t),
.bDescriptorType = USBDESCR_CONFIG
},
.wTotalLength = sizeof(usbConfigurationDescriptor_t),
# if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE) # if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE)
59, // 9 + (9 + 9 + 7) + (9 + 9 + 7) .bNumInterfaces = 2,
# else # else
34, // 9 + (9 + 9 + 7) .bNumInterfaces = 1,
# endif # endif
0, .bConfigurationValue = 0x01,
// 18 + 7 * USB_CFG_HAVE_INTRIN_ENDPOINT + 7 * USB_CFG_HAVE_INTRIN_ENDPOINT3 + 9, 0, .iConfiguration = 0x00,
/* total length of data returned (including inlined descriptors) */
# if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE)
2, /* number of interfaces in this configuration */
# else
1,
# endif
1, /* index of this configuration */
0, /* configuration name string index */
# if USB_CFG_IS_SELF_POWERED # if USB_CFG_IS_SELF_POWERED
(1 << 7) | USBATTR_SELFPOWER, /* attributes */ .bmAttributes = (1 << 7) | USBATTR_SELFPOWER,
# else # else
(1 << 7), /* attributes */ .bmAttributes = (1 << 7),
# endif # endif
USB_MAX_POWER_CONSUMPTION / 2, /* max USB current in 2mA units */ .bMaxPower = USB_MAX_POWER_CONSUMPTION / 2
},
/* /*
* Keyboard interface * Keyboard
*/ */
/* Interface descriptor */ .keyboardInterface = {
9, /* sizeof(usbDescrInterface): length of descriptor in bytes */ .header = {
USBDESCR_INTERFACE, /* descriptor type */ .bLength = sizeof(usbInterfaceDescriptor_t),
0, /* index of this interface */ .bDescriptorType = USBDESCR_INTERFACE
0, /* alternate setting for this interface */ },
USB_CFG_HAVE_INTRIN_ENDPOINT, /* endpoints excl 0: number of endpoint descriptors to follow */ .bInterfaceNumber = 0,
USB_CFG_INTERFACE_CLASS, USB_CFG_INTERFACE_SUBCLASS, USB_CFG_INTERFACE_PROTOCOL, 0, /* string index for interface */ .bAlternateSetting = 0x00,
/* HID descriptor */ .bNumEndpoints = USB_CFG_HAVE_INTRIN_ENDPOINT,
9, /* sizeof(usbDescrHID): length of descriptor in bytes */ .bInterfaceClass = USB_CFG_INTERFACE_CLASS,
USBDESCR_HID, /* descriptor type: HID */ .bInterfaceSubClass = USB_CFG_INTERFACE_SUBCLASS,
0x01, 0x01, /* BCD representation of HID version */ .bInterfaceProtocol = USB_CFG_INTERFACE_PROTOCOL,
0x00, /* target country code */ .iInterface = 0x00
0x01, /* number of HID Report (or other HID class) Descriptor infos to follow */ },
0x22, /* descriptor type: report */ .keyboardHID = {
sizeof(keyboard_hid_report), 0, /* total length of report descriptor */ .header = {
/* Endpoint descriptor */ .bLength = sizeof(usbHIDDescriptor_t),
# if USB_CFG_HAVE_INTRIN_ENDPOINT /* endpoint descriptor for endpoint 1 */ .bDescriptorType = USBDESCR_HID
7, /* sizeof(usbDescrEndpoint) */ },
USBDESCR_ENDPOINT, /* descriptor type = endpoint */ .bcdHID = 0x0101,
(char)0x81, /* IN endpoint number 1 */ .bCountryCode = 0x00,
0x03, /* attrib: Interrupt endpoint */ .bNumDescriptors = 1,
8, 0, /* maximum packet size */ .bDescriptorType = USBDESCR_HID_REPORT,
USB_POLLING_INTERVAL_MS, /* in ms */ .wDescriptorLength = sizeof(keyboard_hid_report)
},
# ifdef USB_CFG_HAVE_INTRIN_ENDPOINT
.keyboardINEndpoint = {
.header = {
.bLength = sizeof(usbEndpointDescriptor_t),
.bDescriptorType = USBDESCR_ENDPOINT
},
.bEndpointAddress = (USBRQ_DIR_DEVICE_TO_HOST | 1),
.bmAttributes = 0x03,
.wMaxPacketSize = 8,
.bInterval = USB_POLLING_INTERVAL_MS
},
# endif # endif
# if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE) # if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE)
/* /*
* Mouse/extrakeys interface * Mouse/Extrakeys
*/ */
/* Interface descriptor */ .mouseExtraInterface = {
9, /* sizeof(usbDescrInterface): length of descriptor in bytes */ .header = {
USBDESCR_INTERFACE, /* descriptor type */ .bLength = sizeof(usbInterfaceDescriptor_t),
1, /* index of this interface */ .bDescriptorType = USBDESCR_INTERFACE
0, /* alternate setting for this interface */ },
USB_CFG_HAVE_INTRIN_ENDPOINT3, /* endpoints excl 0: number of endpoint descriptors to follow */ .bInterfaceNumber = 1,
0x03, /* CLASS: HID */ .bAlternateSetting = 0x00,
0, /* SUBCLASS: none */ .bNumEndpoints = USB_CFG_HAVE_INTRIN_ENDPOINT3,
0, /* PROTOCOL: none */ .bInterfaceClass = 0x03,
0, /* string index for interface */ .bInterfaceSubClass = 0x00,
/* HID descriptor */ .bInterfaceProtocol = 0x00,
9, /* sizeof(usbDescrHID): length of descriptor in bytes */ .iInterface = 0x00
USBDESCR_HID, /* descriptor type: HID */ },
0x01, 0x01, /* BCD representation of HID version */ .mouseExtraHID = {
0x00, /* target country code */ .header = {
0x01, /* number of HID Report (or other HID class) Descriptor infos to follow */ .bLength = sizeof(usbHIDDescriptor_t),
0x22, /* descriptor type: report */ .bDescriptorType = USBDESCR_HID
sizeof(mouse_extra_hid_report), 0, /* total length of report descriptor */ },
# if USB_CFG_HAVE_INTRIN_ENDPOINT3 /* endpoint descriptor for endpoint 3 */ .bcdHID = 0x0101,
/* Endpoint descriptor */ .bCountryCode = 0x00,
7, /* sizeof(usbDescrEndpoint) */ .bNumDescriptors = 1,
USBDESCR_ENDPOINT, /* descriptor type = endpoint */ .bDescriptorType = USBDESCR_HID_REPORT,
(char)(0x80 | USB_CFG_EP3_NUMBER), /* IN endpoint number 3 */ .wDescriptorLength = sizeof(mouse_extra_hid_report)
0x03, /* attrib: Interrupt endpoint */ },
8, 0, /* maximum packet size */ # if USB_CFG_HAVE_INTRIN_ENDPOINT3
USB_POLLING_INTERVAL_MS, /* in ms */ .mouseExtraINEndpoint = {
.header = {
.bLength = sizeof(usbEndpointDescriptor_t),
.bDescriptorType = USBDESCR_ENDPOINT
},
.bEndpointAddress = (USBRQ_DIR_DEVICE_TO_HOST | USB_CFG_EP3_NUMBER),
.bmAttributes = 0x03,
.wMaxPacketSize = 8,
.bInterval = USB_POLLING_INTERVAL_MS
}
# endif # endif
# endif # endif
}; };
#endif #endif
// clang-format on
USB_PUBLIC usbMsgLen_t usbFunctionDescriptor(struct usbRequest *rq) { USB_PUBLIC usbMsgLen_t usbFunctionDescriptor(struct usbRequest *rq) {
usbMsgLen_t len = 0; usbMsgLen_t len = 0;
@@ -489,42 +529,48 @@ USB_PUBLIC usbMsgLen_t usbFunctionDescriptor(struct usbRequest *rq) {
debug_hex16(rq->wLength.word); debug("\n"); debug_hex16(rq->wLength.word); debug("\n");
*/ */
switch (rq->wValue.bytes[1]) { switch (rq->wValue.bytes[1]) {
#if USB_CFG_DESCR_PROPS_DEVICE
case USBDESCR_DEVICE:
usbMsgPtr = (unsigned char *)&usbDeviceDescriptor;
len = sizeof(usbDeviceDescriptor_t);
break;
#endif
#if USB_CFG_DESCR_PROPS_CONFIGURATION #if USB_CFG_DESCR_PROPS_CONFIGURATION
case USBDESCR_CONFIG: case USBDESCR_CONFIG:
usbMsgPtr = (unsigned char *)usbDescriptorConfiguration; usbMsgPtr = (unsigned char *)&usbConfigurationDescriptor;
len = sizeof(usbDescriptorConfiguration); len = sizeof(usbConfigurationDescriptor_t);
break; break;
#endif #endif
case USBDESCR_STRING: case USBDESCR_STRING:
switch (rq->wValue.bytes[0]) { switch (rq->wValue.bytes[0]) {
case 0: case 0:
usbMsgPtr = (unsigned char *)&usbDescriptorStringZero; usbMsgPtr = (unsigned char *)&usbStringDescriptorZero;
len = usbDescriptorStringZero.header.bLength; len = usbStringDescriptorZero.header.bLength;
break; break;
case 1: // iManufacturer case 1: // iManufacturer
usbMsgPtr = (unsigned char *)&usbDescriptorStringManufacturer; usbMsgPtr = (unsigned char *)&usbStringDescriptorManufacturer;
len = usbDescriptorStringManufacturer.header.bLength; len = usbStringDescriptorManufacturer.header.bLength;
break; break;
case 2: // iProduct case 2: // iProduct
usbMsgPtr = (unsigned char *)&usbDescriptorStringProduct; usbMsgPtr = (unsigned char *)&usbStringDescriptorProduct;
len = usbDescriptorStringProduct.header.bLength; len = usbStringDescriptorProduct.header.bLength;
break; break;
case 3: // iSerialNumber case 3: // iSerialNumber
usbMsgPtr = (unsigned char *)&usbDescriptorStringSerial; usbMsgPtr = (unsigned char *)&usbStringDescriptorSerial;
len = usbDescriptorStringSerial.header.bLength; len = usbStringDescriptorSerial.header.bLength;
break; break;
} }
break; break;
case USBDESCR_HID: case USBDESCR_HID:
switch (rq->wValue.bytes[0]) { switch (rq->wValue.bytes[0]) {
case 0: case 0:
usbMsgPtr = (unsigned char *)(usbDescriptorConfiguration + 9 + 9); usbMsgPtr = (unsigned char *)&usbConfigurationDescriptor.keyboardHID;
len = 9; len = sizeof(usbHIDDescriptor_t);
break; break;
#if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE) #if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE)
case 1: case 1:
usbMsgPtr = (unsigned char *)(usbDescriptorConfiguration + 9 + (9 + 9 + 7) + 9); usbMsgPtr = (unsigned char *)&usbConfigurationDescriptor.mouseExtraHID;
len = 9; len = sizeof(usbHIDDescriptor_t);
break; break;
#endif #endif
} }
+72 -4
View File
@@ -15,8 +15,7 @@ You should have received a copy of the GNU General Public License
along with this program. If not, see <http://www.gnu.org/licenses/>. along with this program. If not, see <http://www.gnu.org/licenses/>.
*/ */
#ifndef VUSB_H #pragma once
#define VUSB_H
#include "host_driver.h" #include "host_driver.h"
@@ -25,14 +24,83 @@ typedef struct usbDescriptorHeader {
uchar bDescriptorType; uchar bDescriptorType;
} __attribute__((packed)) usbDescriptorHeader_t; } __attribute__((packed)) usbDescriptorHeader_t;
typedef struct usbDeviceDescriptor {
usbDescriptorHeader_t header;
unsigned bcdUSB;
uchar bDeviceClass;
uchar bDeviceSubClass;
uchar bDeviceProtocol;
uchar bMaxPacketSize0;
unsigned idVendor;
unsigned idProduct;
unsigned bcdDevice;
uchar iManufacturer;
uchar iProduct;
uchar iSerialNumber;
uchar bNumConfigurations;
} __attribute__((packed)) usbDeviceDescriptor_t;
typedef struct usbConfigurationDescriptorHeader {
usbDescriptorHeader_t header;
unsigned wTotalLength;
uchar bNumInterfaces;
uchar bConfigurationValue;
uchar iConfiguration;
uchar bmAttributes;
uchar bMaxPower;
} __attribute__((packed)) usbConfigurationDescriptorHeader_t;
typedef struct usbStringDescriptor { typedef struct usbStringDescriptor {
usbDescriptorHeader_t header; usbDescriptorHeader_t header;
int bString[]; int bString[];
} __attribute__((packed)) usbStringDescriptor_t; } __attribute__((packed)) usbStringDescriptor_t;
typedef struct usbInterfaceDescriptor {
usbDescriptorHeader_t header;
uchar bInterfaceNumber;
uchar bAlternateSetting;
uchar bNumEndpoints;
uchar bInterfaceClass;
uchar bInterfaceSubClass;
uchar bInterfaceProtocol;
uchar iInterface;
} __attribute__((packed)) usbInterfaceDescriptor_t;
typedef struct usbEndpointDescriptor {
usbDescriptorHeader_t header;
uchar bEndpointAddress;
uchar bmAttributes;
unsigned wMaxPacketSize;
uchar bInterval;
} __attribute__((packed)) usbEndpointDescriptor_t;
typedef struct usbHIDDescriptor {
usbDescriptorHeader_t header;
unsigned bcdHID;
uchar bCountryCode;
uchar bNumDescriptors;
uchar bDescriptorType;
unsigned wDescriptorLength;
} __attribute__((packed)) usbHIDDescriptor_t;
typedef struct usbConfigurationDescriptor {
usbConfigurationDescriptorHeader_t header;
usbInterfaceDescriptor_t keyboardInterface;
usbHIDDescriptor_t keyboardHID;
#ifdef USB_CFG_HAVE_INTRIN_ENDPOINT
usbEndpointDescriptor_t keyboardINEndpoint;
#endif
#if defined(MOUSE_ENABLE) || defined(EXTRAKEY_ENABLE)
usbInterfaceDescriptor_t mouseExtraInterface;
usbHIDDescriptor_t mouseExtraHID;
# ifdef USB_CFG_HAVE_INTRIN_ENDPOINT3
usbEndpointDescriptor_t mouseExtraINEndpoint;
# endif
#endif
} __attribute__((packed)) usbConfigurationDescriptor_t;
#define USB_STRING_LEN(s) (sizeof(usbDescriptorHeader_t) + ((s) << 1)) #define USB_STRING_LEN(s) (sizeof(usbDescriptorHeader_t) + ((s) << 1))
host_driver_t *vusb_driver(void); host_driver_t *vusb_driver(void);
void vusb_transfer_keyboard(void); void vusb_transfer_keyboard(void);
#endif
+4
View File
@@ -22,4 +22,8 @@ endif
ifeq ($(strip $(KEYBOARD)), dz60) ifeq ($(strip $(KEYBOARD)), dz60)
VIA_ENABLE = yes VIA_ENABLE = yes
LTO_ENABLE = yes LTO_ENABLE = yes
endif
ifeq ($(strip $(KEYBOARD)), projectkb/alice)
VIA_ENABLE = yes
LTO_ENABLE = no
endif endif