Change MIDI Device Name? (XIAO_ESP32S3)

Hi there,
LOL, Problem between the Keyboard and the floor on this END as per usual, when it doesn’t work, Fixed it… :face_with_peeking_eye:
GL :slight_smile: PJ
:v:

looks like the name change (uncommented manufacture etc.) doesn’t stick, also looks like it’s in one of the other files, “esp-hal-tinyusb.h” may need to insert it in there, or rename the file to the name also.
time to experiment. It does appear to work over all fo r output to serial when I touch D3 or mess with the pins with a jumper +3v & GND touched to them.
:+1:

1 Like

Super cool. Reminds me of Belew-ear King Crimson or Talking Heads or something like that. Particularly the guitar tone. Real snappy/slappy.

So it looks like esp-hal-tinyusb.h isn’t on my system anywhere. Did find it on the expressif github:

Though it looks like it has a ton of other #includes which also aren’t on my system.

It would be great if I could just have a .h file in the same folder as the .ino with manually added names (basically the process when doing it on a Teensy).

So far the code is working pretty well, with all the IMU stuff. Want to add a couple more functions like manually resetting to default calibration values, and a hacky drift-compensation for the YAW axis since it drifts a bit due to this being 6DOF vs 9DOF, so the sensor fusion stuff can’t really correct for yaw drift.

Hi there,
Exactly , he was big King crimson , talking heads FAN and Influenced. :stuck_out_tongue_winking_eye: :love_you_gesture:

In the <USBMIDI.h> I do a ctrl key down and click it and the files in there is one named “esp-hal-tinyusb.h”
I looked in there.
Bailing for Lunch , BB later
HTH
GL :slight_smile: PJ
:v:

IMU is a nice hardware a tad complex but works well I use it a lot. Tap on Wakeup etc. :+1:

Ah, it turns out I wasn’t searching inside the (normally hidden) ~/Library folder. I found the esp32-hal-tinyusb.h in there, but didn’t see anywhere to define a default MANUFACTURER name. Much more I didn’t turn up “XIAO_ESP32S3” anywhere (the current name, which is presumably hard-baked into an .h somewhere).

#define TINYUSB_CONFIG_DEFAULT()                                                                                                                               \
  {                                                                                                                                                            \
    .vid = USB_ESPRESSIF_VID, .pid = 0x0002, .product_name = CONFIG_TINYUSB_DESC_PRODUCT_STRING, .manufacturer_name = CONFIG_TINYUSB_DESC_MANUFACTURER_STRING, \
    .serial_number = CONFIG_TINYUSB_DESC_SERIAL_STRING, .fw_version = CONFIG_TINYUSB_DESC_BCDDEVICE, .usb_version = 0x0200, .usb_class = TUSB_CLASS_MISC,      \
    .usb_subclass = MISC_SUBCLASS_COMMON, .usb_protocol = MISC_PROTOCOL_IAD, .usb_attributes = TUSB_DESC_CONFIG_ATT_SELF_POWERED, .usb_power_ma = 500,         \
    .webusb_enabled = false, .webusb_url = "espressif.github.io/arduino-esp32/webusb.html"                                                                     \
  }

I’ve had some good fun with IMU stuff for music in the past, but it’s always been a pain to deal with drift and quaternion->euler stuff. Thankfully the modern IMUs handle most of that heavy lifting for you.

1 Like

Sadly I wasn’t able to get find anywhere clear to change stuff, and anything else I tried couldn’t get a name change to stick.

I wouldn’t mind just pre-baking it in a compile file somewhere even if it means any other ESP32s I flash will end up with the same name (not a problem for me since this is the only use case I have for them (for now!)).

Hi there,
So you could make an Uf2 file from you compiled code and then just drag & drop to any and all Xiao’s
I have a how to on here, “Creating a Drag & Drop Ufs Testing file”
Look at that , I do it for code that is tested and verified to work. make , distro and programming a non -issue.
HTH
GL :slight_smile: PJ
:v:

Also every Xiao has it’s own Serial number that includes the MAC address also a how to on here way back. :+1:

1 Like

That’s definitely cool! It does feel like an overall more fragile endeavor with all the variants and libraries/dependencies,

Does that ‘double-tap the reset button’ thing work across most ESP variants? That seems like a waaaay easier way to do things!

That expansion board/flashing setup looks like a great idea as well. Particularly like the 3d-printed pogo pin thing.

/////////////////////////////

I guess ultimately, it’s not currently possible (or at least in any way I could figure out) to change the manufacturer/MIDI name. I’ll keep my eyes peeled on updates of the BSPs, now that I know where that is.

Hi there,

No the UF2 is easy, once you have the flash built it’s just a process to make it drag & Drop from Xiao to Xiao and so on. The double tap is on the Nrf52840 Sense (IMU) built in.
could be made to go ESP32 with add-on, adjusting code or hardware configuration.

I’ll look more into the MIDI name situation, strikes me funny such a basic thing should be doable, perhaps another seeeder will comment.
All the sockets are on my thingiverse to download and print your own BTW, add the pogos and away it goes.

HTH
GL :slight_smile: PJ
:v:

1 Like

Gotcha. Shame it’s not a ubiquitous thing (across all microcontrollers actually) as drag-and-drop bootloading would be sooo much easier for people just getting into things. As you outline in your thread, that can be such a barrier to entry where setting up the environment is the biggest hurdle and if you don’t know how to trouble-shoot things (and even if you do!) it can fail silently.

Super appreciated.

I’ll continue searching as well, but with all the variants it seems tricky to google info that relates to the exact variant/board.

1 Like