1
0
Kaleidoscope/avr/boards.txt
Florian Fleissner f95d9e5084 Partially fixed virtual builds
This commit re-enables virtual builds with the Model01 keyboard.

The commit also prepares the infrastructure to generate virtual builds with all other
keyboards currently supported.

Please note that this commit does not enable virtual builds of the stock firmware
right away. This is because currently the stock firmware uses the
Model01-Testmode which is not compatible with virtual builds.

The stock firmware could be made ready for virtual builds by replacing the
Model01-Testmode with the more general HardwareTestMode.

In general for those features/plugins that do not support virtual builds,
this commit adds the generation of compiler error messages
that inform about what parts of the sketch need to be changed to allow virtual
builds.

To allow the stock firmware to build for the virtual core, just remove the
Model01-TestMode, then run the build on a unixoid system as follows.

cd ..../libraries/Model01-Firmware
ARCH=x86 make

With this change, virtual builds are furtheron triggered via setting ARCH=x86.
The board that firmware is meant to be build for is defined through the
BOARD variable, just like with non-virtual builds.

Please note that it is currently not yet possible to run virtual builds for
other keyboards than the Model01. This as because only for the Model01
specification files Model01_Spec.h/cpp have been generated.

To enable virtual builds for all keyboards, specification files need to be
factored out for all keyboards apart from Model01.

After all keyboards will have been made available to virtual builds
through future changes, it will be possible to build the whole examples set
as

cd ..../libraries/Kaleidoscope
ARCH=x86 BOARD_HARDWARE_PATH=$PWD/../../../.. make smoke-examples

Signed-off-by: Florian Fleissner <florian.fleissner@inpartik.de>
2019-07-07 14:29:20 -07:00

279 lines
9.2 KiB
Plaintext

# See: http://code.google.com/p/arduino/wiki/Platforms
menu.cpu=Processor
menu.bootloader=Bootloader
menu.pinout=Pinout
##############################################################
model01.name=Keyboardio Model 01
model01.vid.0=0x1209
model01.pid.0=0x2301
model01.upload.tool=avrdude
model01.upload.protocol=avr109
model01.upload.maximum_size=28672
model01.upload.maximum_data_size=2560
model01.upload.speed=57600
model01.upload.disable_flushing=true
model01.upload.use_1200bps_touch=true
model01.upload.wait_for_upload_port=true
model01.bootloader.tool=avrdude
model01.bootloader.low_fuses=0xff
model01.bootloader.high_fuses=0xd8
model01.bootloader.extended_fuses=0xcb
model01.bootloader.file=caterina/Caterina.hex
model01.bootloader.unlock_bits=0x3F
model01.bootloader.lock_bits=0x2F
model01.bootloader.pid=0x2300
model01.build.mcu=atmega32u4
model01.build.f_cpu=16000000L
model01.build.vid=0x1209
model01.build.pid=0x2301
model01.build.usb_product="Model 01"
model01.build.usb_manufacturer="Keyboardio"
model01.build.board=AVR_MODEL01
model01.build.core=arduino:arduino
model01.build.variant=model01
# TODO - the hardware spec / hardware duplication here makes Jesse unhappy. he would not like to see it live here long-term
model01.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-Model01.h"' '-DKALEIDOSCOPE_HARDWARE_SPEC_H="kaleidoscope/hardware/keyboardio/Model01_Spec.h"'
keyboardio_imago.name=Keyboardio Imago
keyboardio_imago.vid.0=0x1209
keyboardio_imago.pid.0=0x2301
keyboardio_imago.upload.tool=avrdude
keyboardio_imago.upload.protocol=avr109
keyboardio_imago.upload.maximum_size=28672
keyboardio_imago.upload.maximum_data_size=2560
keyboardio_imago.upload.speed=57600
keyboardio_imago.upload.disable_flushing=true
keyboardio_imago.upload.use_1200bps_touch=true
keyboardio_imago.upload.wait_for_upload_port=true
keyboardio_imago.bootloader.tool=avrdude
keyboardio_imago.bootloader.low_fuses=0xff
keyboardio_imago.bootloader.high_fuses=0xd8
keyboardio_imago.bootloader.extended_fuses=0xcb
keyboardio_imago.bootloader.file=caterina/Caterina.hex
keyboardio_imago.bootloader.unlock_bits=0x3F
keyboardio_imago.bootloader.lock_bits=0x2F
keyboardio_imago.bootloader.pid=0x0036
keyboardio_imago.bootloader.vid=0x2341
keyboardio_imago.build.mcu=atmega32u4
keyboardio_imago.build.f_cpu=16000000L
keyboardio_imago.build.vid=0x1209
keyboardio_imago.build.pid=0x2301
keyboardio_imago.build.usb_product="Imago"
keyboardio_imago.build.usb_manufacturer="Keyboardio"
keyboardio_imago.build.board=AVR_KEYBOARDIO_IMAGO
keyboardio_imago.build.core=arduino:arduino
keyboardio_imago.build.variant=keyboardio-imago
keyboardio_imago.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-Keyboardio-Imago.h"'
####################
planck.name=OLKB Planck
planck.vid.0=0x1209
planck.pid.0=0x2303
planck.menu.bootloader.dfu=DFU
planck.menu.bootloader.dfu.upload.tool=dfu-programmer
planck.menu.bootloader.dfu.upload.protocol=dfu
planck.menu.bootloader.dfu.upload.maximum_size=28672
planck.menu.bootloader.dfu.upload.maximum_data_size=2560
planck.menu.bootloader.dfu.upload.speed=57600
planck.menu.bootloader.dfu.upload.disable_flushing=true
planck.menu.bootloader.dfu.upload.use_1200bps_touch=false
planck.menu.bootloader.dfu.upload.wait_for_upload_port=true
planck.menu.bootloader.caterina=Caterina
planck.menu.bootloader.caterina.upload.tool=avrdude
planck.menu.bootloader.caterina.upload.protocol=avr109
planck.menu.bootloader.caterina.upload.maximum_size=28672
planck.menu.bootloader.caterina.upload.maximum_data_size=2560
planck.menu.bootloader.caterina.upload.speed=57600
planck.menu.bootloader.caterina.upload.disable_flushing=true
planck.menu.bootloader.caterina.upload.use_1200bps_touch=true
planck.menu.bootloader.caterina.upload.wait_for_upload_port=true
planck.bootloader.tool=avrdude
planck.bootloader.low_fuses=0xff
planck.bootloader.high_fuses=0xd8
planck.bootloader.extended_fuses=0xcb
planck.bootloader.file=caterina/Caterina.hex
planck.bootloader.unlock_bits=0x3F
planck.bootloader.lock_bits=0x2F
planck.bootloader.pid=0x2302
planck.build.mcu=atmega32u4
planck.build.f_cpu=16000000L
planck.build.vid=0x1209
planck.build.pid=0x2303
planck.build.usb_product="Planck"
planck.build.usb_manufacturer="OLKB"
planck.build.board=AVR_PLANCK
planck.build.core=arduino:arduino
planck.build.variant=olkb-planck
planck.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-OLKB-Planck.h"'
##############################################################
ergodox.name=ErgoDox
ergodox.vid.0=0xfeed
ergodox.pid.0=0x1307
ergodox.upload.tool=teensy_loader_cli
ergodox.upload.protocol=halfkay
ergodox.upload.maximum_size=32256
ergodox.upload.maximum_data_size=2560
ergodox.build.mcu=atmega32u4
ergodox.build.f_cpu=16000000L
ergodox.build.vid=0xfeed
ergodox.build.pid=0x1307
ergodox.build.usb_product="ErgoDox EZ"
ergodox.build.usb_manufacturer="ErgoDox EZ"
ergodox.build.board=AVR_ERGODOX
ergodox.build.core=arduino:arduino
ergodox.build.variant=ergodox
ergodox.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-EZ-ErgoDox.h"' '-DKALEIDOSCOPE_ENABLE_V1_PLUGIN_API=0'
##############################################################
atreus2.name=Atreus 2 Prototype
atreus2.vid.0=0x1209
atreus2.pid.0=0xa1e5
atreus2.upload.maximum_data_size=2560
## defaults
atreus2.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-Technomancy-Atreus2.h"'
atreus2.build.mcu=atmega32u4
atreus2.build.f_cpu=16000000L
atreus2.build.vid=0x1209
atreus2.build.pid=0xa1e5
atreus2.build.usb_product="Atreus2"
atreus2.build.usb_manufacturer="Technomancy"
atreus2.build.board=AVR_ATREUS2
atreus2.build.core=arduino:arduino
atreus2.build.variant=atreus2
atreus2.upload.tool=avrdude
atreus2.upload.protocol=avr109
atreus2.upload.maximum_size=28672
atreus2.upload.maximum_data_size=2560
atreus2.upload.speed=57600
atreus2.upload.disable_flushing=true
atreus2.upload.use_1200bps_touch=true
atreus2.upload.wait_for_upload_port=true
atreus.name=Atreus
atreus.vid.0=0x1209
atreus.pid.0=0xa1e5
atreus.upload.maximum_data_size=2560
## defaults
atreus.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-Technomancy-Atreus.h"' -DKALEIDOSCOPE_HARDWARE_ATREUS_PINOUT_ASTAR=1
atreus.menu.cpu.astar=A*
atreus.menu.cpu.astar.upload.tool=avrdude
atreus.menu.cpu.astar.upload.protocol=avr109
atreus.menu.cpu.astar.upload.maximum_size=28672
atreus.menu.cpu.astar.upload.speed=57600
atreus.menu.cpu.astar.upload.disable_flushing=true
atreus.menu.cpu.teensy=Teensy2
atreus.menu.cpu.teensy.upload.tool=teensy_loader_cli
atreus.menu.cpu.teensy.upload.protocol=halfkay
atreus.menu.cpu.teensy.upload.maximum_size=32256
atreus.menu.pinout.post2016=Post-2016 PCB
atreus.menu.pinout.post2016.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-Technomancy-Atreus.h"' -DKALEIDOSCOPE_HARDWARE_ATREUS_PINOUT_ASTAR=1
atreus.menu.pinout.pre2016=Pre-2016 PCB
atreus.menu.pinout.pre2016.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-Technomancy-Atreus.h"' -DKALEIDOSCOPE_HARDWARE_ATREUS_PINOUT_ASTAR_DOWN=1
atreus.menu.pinout.legacy_teensy2=Legacy Teensy2
atreus.menu.pinout.legacy_teensy2.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-Technomancy-Atreus.h"' -DKALEIDOSCOPE_HARDWARE_ATREUS_PINOUT_LEGACY_TEENSY2=1
atreus.build.mcu=atmega32u4
atreus.build.f_cpu=16000000L
atreus.build.vid=0x1209
atreus.build.pid=0xa1e5
atreus.build.usb_product="Atreus"
atreus.build.usb_manufacturer="Technomancy"
atreus.build.board=AVR_ATREUS
atreus.build.core=arduino:arduino
atreus.build.variant=atreus
##############################################################
splitography.name=Splitography
splitography.vid.0=0xfeed
splitography.pid.0=0x6060
splitography.upload.tool=dfu-programmer
splitography.upload.protocol=dfu
splitography.upload.maximum_size=28672
splitography.upload.maximum_data_size=2560
splitography.upload.speed=57600
splitography.upload.use_1200bps_touch=false
splitography.build.mcu=atmega32u4
splitography.build.f_cpu=16000000L
splitography.build.vid=0xfeed
splitography.build.pid=0x6060
splitography.build.usb_product="Splitography"
splitography.build.usb_manufacturer="SOFT/HRUF"
splitography.build.board=AVR_SPLITOGRAPHY
splitography.build.core=arduino:arduino
splitography.build.variant=softhruf-splitography
splitography.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-SOFTHRUF-Splitography.h"'
##############################################################
kbd4x.name=KBDFans KBD4x
kbd4x.vid.0=0xfeed
kbd4x.pid.0=0x000
kbd4x.upload.tool=dfu-programmer
kbd4x.upload.protocol=dfu
kbd4x.upload.maximum_size=28672
kbd4x.upload.maximum_data_size=2560
kbd4x.upload.speed=57600
kbd4x.upload.disable_flushing=true
kbd4x.upload.use_1200bps_touch=false
kbd4x.upload.wait_for_upload_port=true
kbd4x.build.mcu=atmega32u4
kbd4x.build.f_cpu=16000000L
kbd4x.build.vid=0xfeed
kbd4x.build.pid=0x000
kbd4x.build.usb_product="KBDFans"
kbd4x.build.usb_manufacturer="KBD4x"
kbd4x.build.board=AVR_KBD4X
kbd4x.build.core=arduino:arduino
kbd4x.build.variant=kbdfans-kbd4x
kbd4x.build.extra_flags={build.usb_flags} '-DKALEIDOSCOPE_HARDWARE_H="Kaleidoscope-Hardware-KBDFans-KBD4x.h"'
##############################################################