Quick look
One package, one client. Connect over USB/LAN or the BUSY Cloud proxy, drive the display, and read device status — all through typed C# records instead of hand-rolled JSON.
using Busy.Bar;
var bar = new BusyBar(new BusyBarOptions { Addr = "10.0.4.20" });
var status = await bar.SystemStatusGetAsync();
await bar.DisplayDrawAsync(new DisplayDrawParams
{
ApplicationName = "my_app",
Elements = new DisplayElement[]
{
new TextElement
{
Id = "0",
Text = "Hello!",
Font = TextFont.Normal,
Align = ElementAlign.Center,
}
}
});
Full API Coverage
Every namespace of the BUSY Bar HTTP API — Account, Assets, Audio, Ble, Busy timer, Display, Input, Settings, SmartHome, Storage, System, Time, Update, and Wifi.
Typed & Idiomatic
C# records, polymorphic JSON via System.Text.Json, and a documented exception contract — modelled on the official TypeScript client's naming.
Local & Cloud
Works against a device over USB/LAN or the BUSY Cloud proxy — the library builds the right request URLs for each transport automatically.
Validated on Real Hardware
Every namespace has been exercised against a physical BUSY Bar — display draw, brightness, LED notifications, and more — not just synthetic fixtures.