Jump to content

Contributions:FnirsiUSBLogger

From BCI2000 Wiki
Revision as of 16:04, 13 May 2026 by Mellinger (talk | contribs) (States)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
FNIRSI FNB58 USB Power Meter

Synopsis

A logger that stores voltage, current, and temperature readings from an FNIRSI FNB58 USB Power Meter into BCI2000 states. The FNB58 is able to measure voltage and current for USB-A, USB-C and Micro USB outlets in real time. For this, it hooks into a USB connection between host and any USB device for which to measure current draw and power consumption.

Location

http://www.bci2000.org/svn/trunk/src/contrib/Extensions/FnirsiUSBLogger

Versioning

Authors

mellinger@neurotechcenter.org

Version History

  • 2026/02/02: Initial public release

Source Code Revisions

  • Initial development: 9245
  • Known to compile under: 9247
  • Broken since: --

Functional Description

The FNB58 is an USB power meter and hooks into the USB connection between the host and a target USB device. To the host, it appears as a HID USB device and can be read out without a dedicated driver, using the Windows HID library.

The logger reads out the data provided and stores them in BCI2000 event states.

Parameters

LogFnirsiUSB

This is the enabler parameter. Set it to 1 from the command line when starting the source module, or enable it in enabler list in BCI2000Launcher.

States

FnirsiUSB_Voltage

The USB bus voltage, with an offset of 2^31, and a scale of 1e-5 V.

FnirsiUSB_Current

The USB bus current, with an offset of 2^31, and in units of 1e-5 A.

FnirsiUSB_Power

The USB bus power, with an offset of 2^31, and in units of 1e-5 W.

FnirsiUSB_DataPlus, FnirsiUSB_DataMinus

Voltages on the USB transmission lines, with an offset of 2^15, and in units of 1e-3V.

FnirsiUSB_Temperature

Temperature as measured by the FNB58 device, with zero offset, in units of 0.1°C.