Skip to content

Custom board options menu items not in order specified by boards.txt #801

Closed
@mjs513

Description

@mjs513

Describe the problem

In the boards.txt file for the Teensy we have specified a list of menu items for USB Type, e.g.,

teensyMM.menu.usb.serial=Serial
teensyMM.menu.usb.serial.build.usbtype=USB_SERIAL
teensyMM.menu.usb.serial2=Dual Serial
teensyMM.menu.usb.serial2.build.usbtype=USB_DUAL_SERIAL
teensyMM.menu.usb.serial3=Triple Serial
teensyMM.menu.usb.serial3.build.usbtype=USB_TRIPLE_SERIAL
teensyMM.menu.usb.keyboard=Keyboard
teensyMM.menu.usb.keyboard.build.usbtype=USB_KEYBOARDONLY
teensyMM.menu.usb.keyboard.fake_serial=teensy_gateway
teensyMM.menu.usb.touch=Keyboard + Touch Screen
teensyMM.menu.usb.touch.build.usbtype=USB_TOUCHSCREEN
teensyMM.menu.usb.touch.fake_serial=teensy_gateway
teensyMM.menu.usb.hidtouch=Keyboard + Mouse + Touch Screen
teensyMM.menu.usb.hidtouch.build.usbtype=USB_HID_TOUCHSCREEN
teensyMM.menu.usb.hidtouch.fake_serial=teensy_gateway
teensyMM.menu.usb.hid=Keyboard + Mouse + Joystick
teensyMM.menu.usb.hid.build.usbtype=USB_HID
teensyMM.menu.usb.hid.fake_serial=teensy_gateway
teensyMM.menu.usb.serialhid=Serial + Keyboard + Mouse + Joystick
teensyMM.menu.usb.serialhid.build.usbtype=USB_SERIAL_HID
teensyMM.menu.usb.midi=MIDI
teensyMM.menu.usb.midi.build.usbtype=USB_MIDI
teensyMM.menu.usb.midi.fake_serial=teensy_gateway
teensyMM.menu.usb.midi4=MIDIx4
teensyMM.menu.usb.midi4.build.usbtype=USB_MIDI4
teensyMM.menu.usb.midi4.fake_serial=teensy_gateway
teensyMM.menu.usb.midi16=MIDIx16
teensyMM.menu.usb.midi16.build.usbtype=USB_MIDI16
teensyMM.menu.usb.midi16.fake_serial=teensy_gateway
teensyMM.menu.usb.serialmidi=Serial + MIDI
teensyMM.menu.usb.serialmidi.build.usbtype=USB_MIDI_SERIAL
teensyMM.menu.usb.serialmidi4=Serial + MIDIx4
teensyMM.menu.usb.serialmidi4.build.usbtype=USB_MIDI4_SERIAL
teensyMM.menu.usb.serialmidi16=Serial + MIDIx16
teensyMM.menu.usb.serialmidi16.build.usbtype=USB_MIDI16_SERIAL
teensyMM.menu.usb.audio=Audio
teensyMM.menu.usb.audio.build.usbtype=USB_AUDIO
teensyMM.menu.usb.audio.fake_serial=teensy_gateway
teensyMM.menu.usb.serialmidiaudio=Serial + MIDI + Audio
teensyMM.menu.usb.serialmidiaudio.build.usbtype=USB_MIDI_AUDIO_SERIAL
teensyMM.menu.usb.serialmidi16audio=Serial + MIDIx16 + Audio
teensyMM.menu.usb.serialmidi16audio.build.usbtype=USB_MIDI16_AUDIO_SERIAL
teensyMM.menu.usb.mtp=MTP Disk (Experimental)
teensyMM.menu.usb.mtp.build.usbtype=USB_MTPDISK
teensyMM.menu.usb.mtp.fake_serial=teensy_gateway
teensyMM.menu.usb.rawhid=Raw HID
teensyMM.menu.usb.rawhid.build.usbtype=USB_RAWHID
teensyMM.menu.usb.rawhid.fake_serial=teensy_gateway
teensyMM.menu.usb.flightsim=Flight Sim Controls
teensyMM.menu.usb.flightsim.build.usbtype=USB_FLIGHTSIM
teensyMM.menu.usb.flightsim.fake_serial=teensy_gateway
teensyMM.menu.usb.flightsimjoystick=Flight Sim Controls + Joystick
teensyMM.menu.usb.flightsimjoystick.build.usbtype=USB_FLIGHTSIM_JOYSTICK
teensyMM.menu.usb.flightsimjoystick.fake_serial=teensy_gateway
#teensyMM.menu.usb.disable=No USB
#teensyMM.menu.usb..disable.build.usbtype=USB_DISABLED

However, when we go in the IDE 2.0 when we select USB Type from the Tools dropdown (after selecting the board the order of USB Types appears to be in random order:
Capture

This behavior not constrained to just this menu. The list of boards is also not in the order specified.

To reproduce

  1. Install Teensy Boards using package:
    https://www.pjrc.com/teensy/td_156/package_teensy_index.json
    
  2. Install Teensy from Boards Manager
  3. Open boards.txt file in arduino15 for Teensy
  4. Go to tools, select Teensy MircoMod
  5. Select USB Type and compare to boards.txt for TMM.menu.usb....
  6. See error

Expected behavior

Order specified in the boards.txt file should be the order shown in the menu item in the Tools drop downs for the board specified.

Arduino IDE version

Original report

2.0.0-rc3-nightly.20220201

Last verified with

9a6a457

Operating system

Windows

Operating system version

  • Windows 10
  • Windows 11

Issue checklist

  • I searched for previous reports in the issue tracker
  • I verified the problem still occurs when using the latest nightly build
  • My report contains all necessary details

Metadata

Metadata

Assignees

Labels

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions