Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 4 additions & 0 deletions src/const/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -101,6 +101,10 @@ bool process_record_user(uint16_t keycode, keyrecord_t *record) {
// Presets.
PRESETS: Presets,

// VENDOR_ID PRODUCT_ID
VENDOR_ID: 'FEED',
PRODUCT_ID: '6060',

// Local settings.
LOCAL: Local

Expand Down
2 changes: 2 additions & 0 deletions src/files/generators/config.h.js
Original file line number Diff line number Diff line change
Expand Up @@ -10,6 +10,8 @@ class ConfigH extends Generator {
const keyboard = this.keyboard;

return {
'vendor_id': (keyboard.settings.vendor_id) ? keyboard.settings.vendor_id: C.VENDOR_ID,
'product_id': (keyboard.settings.product_id) ? keyboard.settings.product_id: C.PRODUCT_ID,
'rows': keyboard.rows,
'cols': keyboard.cols,
'row_pins': keyboard.pins.row.join(', '),
Expand Down
4 changes: 2 additions & 2 deletions src/files/generators/templates/config.h.js
Original file line number Diff line number Diff line change
Expand Up @@ -6,8 +6,8 @@ module.exports = `
#include "config_common.h"

/* USB Device descriptor parameter */
#define VENDOR_ID 0xFEED
#define PRODUCT_ID 0x6060
#define VENDOR_ID 0x%vendor_id%
#define PRODUCT_ID 0x%product_id%
#define DEVICE_VER 0x0001
#define MANUFACTURER qmkbuilder
#define PRODUCT keyboard
Expand Down
5 changes: 5 additions & 0 deletions src/state/keyboard/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -38,6 +38,8 @@ class Keyboard {
this.settings = {
diodeDirection: C.DIODE_COL2ROW,
name: '',
vendor_id: C.VENDOR_ID,
product_id: C.PRODUCT_ID,
bootloaderSize: C.BOOTLOADER_4096,
rgbNum: 0,
backlightLevels: 3
Expand Down Expand Up @@ -485,6 +487,9 @@ class Keyboard {
keyboard.quantum = quantum;
keyboard.settings = settings;

if (!keyboard.settings.vendor_id) keyboard.settings.vendor_id = C.VENDOR_ID;
if (!keyboard.settings.product_id) keyboard.settings.product_id = C.PRODUCT_ID;

keyboard.updateWiring();
keyboard.updatePins();
keyboard.verify();
Expand Down
20 changes: 20 additions & 0 deletions src/ui/panes/settings/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -77,6 +77,26 @@ class Settings extends React.Component {
Give your layout a name!
</Help>
<div style={{ height: '0.5rem' }}/>
<h2 style={{ width: '8rem', marginRight: '0.8rem' }}>VENDOR ID</h2>
0x <input
style={{ width: '7rem' }}
type='text'
value={ keyboard.settings.vendor_id }
onChange={ e => keyboard.setSetting('vendor_id', e.target.value) }/>
<Help>
Give your vendor id!
</Help>
<div style={{ height: '0.5rem' }}/>
<h2 style={{ width: '8rem', marginRight: '0.8rem' }}>PRODUCT ID</h2>
0x <input
style={{ width: '7rem' }}
type='text'
value={ keyboard.settings.product_id }
onChange={ e => keyboard.setSetting('product_id', e.target.value) }/>
<Help>
Give your product id!
</Help>
<div style={{ height: '0.5rem' }}/>
<h2 style={{ width: '8rem', marginRight: '0.8rem' }}>Bootloader Size</h2>
<select
style={{ width: '8rem' }}
Expand Down