.NET API Reference
Endpoint on .NET: standard System.Device.* and .NET IoT APIs, plus the libraries below for hardware features .NET does not cover.
Standard .NET
Endpoint's device libraries build on these standard Microsoft APIs. Code written against them on any platform ports to Endpoint unchanged.
| Microsoft .NET API | Description |
|---|---|
| System.Device.Gpio | Digital inputs and outputs: pin modes, read, write, interrupts. |
| System.Device.I2c | I2C bus master: read and write to devices by address. |
| System.Device.Spi | SPI bus master: full-duplex transfers with configurable clock and mode. |
| System.Device.Pwm | PWM channels: configurable frequency and duty cycle. |
| System.Device.Analog | Analog inputs (ADC): read voltages from analog pins. |
| System.IO.Ports | Serial ports (UART): the standard SerialPort class. |
Endpoint libraries
| Library | Description |
|---|---|
| GHIElectronics.Endpoint.Core | Core of the Endpoint libraries: board pin names and pin setup. |
| GHIElectronics.Endpoint.Devices.Adc | Endpoint's analog inputs for .NET's System.Device.Analog. |
| GHIElectronics.Endpoint.Devices.Camera | USB webcams, parallel-port cameras (DCMI), and shared camera settings and image conversion for Endpoint. |
| GHIElectronics.Endpoint.Devices.Can | CAN for Endpoint: .NET IoT's CanRaw (Iot.Device.SocketCan) on the board's CAN ports. CanController.Initialize sets a port up. |
| GHIElectronics.Endpoint.Devices.Dac | The DAC driver for Endpoint. |
| GHIElectronics.Endpoint.Devices.Display | The display driver for Endpoint. |
| GHIElectronics.Endpoint.Devices.Network | The network driver for Endpoint. |
| GHIElectronics.Endpoint.Devices.Rtc | The RTC driver for Endpoint. |
| GHIElectronics.Endpoint.Devices.Storage | Endpoint's SD cards and USB drives: insert and remove events, mounting (System.IO's DriveInfo). |
| GHIElectronics.Endpoint.Devices.Touch | Touchscreen support for Endpoint. The Touch class is abstract: subclass it for your panel's chip (I2C, SPI, custom). Ships one concrete subclass, InputTouch, that wraps a kernel /dev/input/eventN (used for USB touchscreens). |
| GHIElectronics.Endpoint.Devices.Usb | USB device types for Endpoint. |
| GHIElectronics.Endpoint.Devices.UsbHost | Endpoint's USB devices: connected and disconnected events, what each device is and its port or network interface. |
| GHIElectronics.Endpoint.Devices.Watchdog | The watchdog driver for Endpoint. |
| GHIElectronics.Endpoint.Drawing | Off-screen 2D drawing primitives: Canvas, Color, Font, Image, PixelFormat. Pure pixel drawing, independent of the LVGL-backed UI widget library. |
| GHIElectronics.Endpoint.Native | Power and device information for Endpoint. |
| GHIElectronics.Endpoint.UI | UI widgets for Endpoint: Button, Label, Container, Image, TextBox, Slider, CheckBox on top of the embedded LVGL in libendpoint. Pair with the GHI UI designer. |