Interoperable DER <-> Building Energy Management Protocol?

I’m working in the Linux Foundation Energy (LF Energy) Virtual Power Plants and Microgrids working group. I’ve been looking around for an interoperable protocol between a building energy management system and DERs/loads where the loads are HVAC systems or smart breakers. It seems Thingset could be that protocol but it seems there are as yet no detailed specification, REST APIs nor a pointer to code assuming it is open source (the entries on the Thingset web pages are about 1 year old). Also, there is no mention of BACnet as a transport protocol, perhaps BACnet isn’t used in Europe? Pecan Street in Austin has something quite similar, called OpenARMs (see here. What is the status of Thingset?

The stuff Pecan Street is doing looks quite interesting. Thanks for sharing.

Well, the ThingSet protocol works very will for general monitoring and configuration of devices. We are using it on a daily basis for multiple projects.

The protocol itself does not define the endpoints of a REST API. Instead, it defines ways how to discover the capabilities of a device. It does not intend to be fully RESTful, as it would require too much data to be communicated from a very tiny device. It’s also not suitable to send huge amounts of JSON data via CAN.

The esp32-edge-firmware provides an interface between ThingSet and the internet via an HTTP API. So you can e.g. request output data from a device connected via CAN or serial interface with the following request:

GET /api/v1/ts/<device-id>/output

It does also provide a web interface that uses this API. It runs on the ESP32 itself. Also forwarding the data via MQTT is already possible.

The firmware is making lots of progress at the moment, but unfortunately the documentation lags behind a bit…

I don’t really know BACnet, but it looks like it could also be implemented on an ESP32-based gateway without too much effort.