Teensy without seremu interface

CM207

Member
I've been working on a custom USB type for my Teensy, aiming to replicate the functionality of the "Keyboard + Mouse + Joystick" USB configuration but without the SEREMU_INTERFACE. Everything functions correctly as long as the SEREMU_INTERFACE remains defined. However, as soon as I remove this definition, I start encountering errors.

I even attempted to modify the preconfigured "USB_HID" type by removing the SEREMU_INTERFACE, but I faced the same issues. It appears that the Teensy cannot operate purely as an HID device without this interface being defined.

Can anyone provide insights into why the SEREMU_INTERFACE seems to be required, or if there’s a way to achieve this without it?

Example error:
C:\Users\_\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.59.0\cores\teensy4\Print.cpp: In function 'int _write(int, char*, int)':
C:\Users\_\AppData\Local\Arduino15\packages\teensy\hardware\avr\1.59.0\cores\teensy4\Print.cpp:95:50: error: 'Serial' was not declared in this scope; did you mean 'Serial8'?
 
I did ask the same question recently:


It seems that a lot of other places rely on SEREMU_INTERFACE (or CDC) being defined in usb_desc.h or you will get the sort of errors that you are getting.

I did however manage to get around it by removing(more like blocking) the SEREMU_INTERFACE descriptors from usb_desc.c which stops the Teensy enumerating as the SEREMU HID device, and doesn't cause the errors.

If you do remove SEREMU you won't be able to auto upload from the Arduino IDE, and will also need to use the push button on the Teensy to put it into program mode to upload code every time.

Happy to elaborate how I did it if you need more help.
 
Last edited:
Back
Top