WaveBPS
All DocsProductsLearning CenterSupport
  • Introducing WaveBPS: Portable Low level analog serial data analysis
  • Getting Data into WaveBPS
    • WaveBPS Import Data Video
  • Live Capture with WaveBPS
  • Navigation
  • Advanced Analysis
  • Automated Test with WaveBPS
  • WaveBPS Basic Databases
  • Cursor Measurements
  • Event List Columns
  • Setting up Serial Decoding in WaveBPS
  • Loading custom data into WaveBPS
  • Exporting Waveforms from WaveBPS
  • Scalar Measurement List
  • Licensing WaveBPS
  • WBPS Binary File Format
    • Double Precision Format
    • Unsigned short Format
  • CAN / CAN FD Bus
    • CAN / CAN FD Bus Bit Stuffing
    • CAN / CAN FD Bus Data Frame
    • CAN / CAN FD Bus Errors
    • Extended Data Frames
    • CAN / CAN FD Bus Physical Layers
    • CAN / CAN FD Bus Remote Data Frame
    • Single Wire CAN / CAN FD
  • FlexRay
    • FlexRay Dynamic Frame
    • FlexRay Static Frame
    • FlexRay Startup
    • FlexRay Wakeup Symbol
    • FlexRay Physical Layer
  • Example Waveforms
    • FlexRay versus CAN / CAN FD BUS
    • CAN / CAN FD bus at 70 % utilization 120 megasamples
    • CAN / CAN FD Bus Waveform Decoding
    • FlexRay Frame Decode
    • FlexRay Dynamic Frame
    • LIN Bus Decode
    • Low Speed Fault Tolerant CAN / CAN FD Waveform
  • LIN Bus
    • LIN Errors
    • LIN Frame
    • LIN Header
    • LIN Slave Section
  • Other Buses
    • UART: K-Line, J1708, ISO9141, GM CGI, RS232
    • SPI bus
    • I2C or SMBus
    • J1850
  • Compare FlexRay, CAN / CAN FD bus and LIN Bus
  • WaveBPS Video Links
  • Specifications
Powered by GitBook
LogoLogo

Applications

  • Cybersecurity
  • Data Logging
  • Simulate ECU Functions
  • Diagnostics, Testing and Validation

Products

  • Vehicle Network Adapters
  • Data Loggers
  • Software
  • Automotive Ethernet Tools

Support

  • Support Resources
  • Contact Support
  • Class Schedule & Registration
  • Training Video Library

Company

  • About
  • News
  • Events
  • Contact Us

Copyright © 2025 | All Rights Reserved

On this page

WBPS Binary File Format

PreviousLicensing WaveBPSNextDouble Precision Format

Last updated 11 months ago

WaveBPS "wbps" binary file format

WaveBPS uses a binary file format to efficiently store its raw waveform files. This document describes the file format enough for third parties to read and write the files. These files have the extension "wbps". These formats are created in Intel big endian byte order.

Internally, the WaveBPS wbps file is actually two main formats. First is the floating point format and the other uses an unsigned short (16 bits). The unsigned short is considerably smaller and is used when possible. When not possible, such as when a waveform was originally loaded from a csv file, the floating point format is used. The parser for the wavebps file can determine which file type it is by reading the file header. The short format is always used when capturing from an oscilloscope.

The file header is always 16 bytes. The header will be one of the two following possibilities (Table 1):

Table 1 - Possible 16 byte headers

Type
Header

Double Precision Floating Point

char szverion5 [] = {'w','a','v','e','b','p','s','5','0','0',0,0,0,0,0,0};

Unsigned Short (16 bits)

char szverion6 [] = {'w','a','v','e','b','p','s','6','0','0',0,0,0,0,0,0};

Following the header is a 4 byte integer describing the number of channels (Table 2). This is the same for both formats.

Table 2 - Number of Channels

Type
Header

Unsigned int (32 bits)

m_iNumberOfChannels

After the number of channels, the file formats diverge and are described in separate topics.

Follow this link for the .

Follow this link for the .

double precision floating point topic
unsigned short topic