featherbear / presonus-studiolive-api

Exploring the PreSonus network control protocol from a StudioLive Series III
https://featherbear.cc/presonus-studiolive-api/
46 stars 13 forks source link

Research: Console Model Identification #7

Closed featherbear closed 2 years ago

featherbear commented 2 years ago

The discovery packet outlines the model number of the console (which we can then use to determine the channel count, etc) - but we have to rely on waiting for the console to broadcast its discovery packet - adding connection delays

Is there any other way to identify the model; perhaps in the ZB payload?

Maybe the ZB payload also outlines how many channels and FX channels it has - then we don't need our own database of channel counts

featherbear commented 2 years ago

Tested in 9cee0f8d4fcf80118f1e4cd2e13b4e4b7a63ed69

featherbear commented 2 years ago

Implemented in 55e1593193c89cedd3b085aec1dbf646ffd8efe7

featherbear commented 2 years ago

Refactored in 3c5ffb210e34ddbfab5f4d89bad1634f61bd2181

featherbear commented 2 years ago

Stable in 1336438da36e5960eed5f246721a8dbdc5dc95ee

but we have to rely on waiting for the console to broadcast its discovery packet - adding connection delays Client waits for the first ZB packet before resolving its connect promise

featherbear commented 2 years ago

@featherbear I did encounter an issue where CK packets were being sent to the user instead of ZB packets, so the API was not resolving its promise, and was stalling