Want to DIY a new device, don't know where to start

I have an Esp32 which can control an LED, a beeper and an electrical shocking thing.
Preferably when communicating with Intiface, it would show up as just that, a light, a beeper and a shocker.

As a simple test, my Esp32 accepts a number from 0 to 255 in the serial console, and numbers above 127 turn my LED on, while those below or equal turn it off.

To this end, I am hoping to (at least) connect to it via serial. I am unable to connect to it with the response:

Looking for protocol that matches specifier: Serial(SerialSpecifier { baud_rate: 0, data_bits: 0, stop_bits: 0, parity: ‘\0’, port: “/dev/ttyUSB0” })
No viable protocols for hardware Serial(SerialSpecifier { baud_rate: 0, data_bits: 0, stop_bits: 0, parity: ‘\0’, port: “/dev/ttyUSB0” }), ignoring.

My protocols field in my buttplug-device-config.json begins as follows:

  "protocols": {
    "CUSTOMXXX": {
      "serial": [
        {
          "port": "default",
          "baud-rate": 115200,
          "data-bits": 8,
          "parity": "N",
          "stop-bits": 1
        }
      ],
      "defaults": {
        "name": "ESP32",
        "messages": {
          "LinearCmd": [
            {
              "StepRange": [
                0,
                255
              ],
              "ActuatorType": "Vibrate"
            }
          ]
        }
      }
    },
    --

Edit: I am using Intiface-Central v2.4.0 for linux x64 (Straight from github)

“CUSTOMXXX” isn’t a protocol we support. The list of protocols in the device config are related to the protocols implemented in the library, so you can’t just make one up and expect things to work.

Most likely, you’ll want to use tcode, but even then, nothing on your device is supports by actuators in either Buttplug or tcode, so you’re probably going to have to just act like everything is a vibrator.