Image Not Available

Create Custom Software Clients
weather applications water applications energy applications gas flux & turbulence applications infrastructure applications soil applications

Overview

Current Version: 4.5

BMP5 Direct Software Development Kit (SDK) is a programming interface available at no charge in the Downloads section. It enables you to create custom software clients that support communications with one PakBus datalogger using an RS-232 or IP Port connection.

Read More

Benefits and Features

  • Allows creation of custom software clients
  • Contains 20 commands

Detailed Description

BMP5 Direct SDK includes a simple call-level API (SimplePB.DLL) that acts as a wrapper for the included PakBus communications engine (coralib3d.dll).

Functions Supported by the SimplePB.DLL Wrapper

OpenPort, ClosePort, OpenIPPort, CloseIPPort, GetClock, SetClock, GetValue, SetValue, GetData, GetDataHeader, GetCommaData, File_Send, GetAddress, GetStatus, GetTableNames, GetDLLVersion, GetLastResults, FileControl, SetSecurity, and GetTableRecordsCount

Documentation and Examples Included in the Download

  • BMP5 Direct SDK Manual
  • Visual C++ MFC, VB.NET, and C#.NET examples

Requirements

1) The developer should be familiar with Campbell Scientific’s hardware and software. 2) SimplePB.DLL and coralib3d.dll must be installed in the same folder. 3) The datalogger must use the PakBus communications protocol. 4) Only one datalogger can be connected at a time.

Specifications

Current Version 4.5

Compatibility

Note: The following shows notable compatibility information. It is not a comprehensive list of all compatible or incompatible products.

Dataloggers

Product Compatible Note
21X (retired)
CR10 (retired)
CR1000
CR1000X
CR10X (retired)
CR200X (retired)
CR206X (retired)
CR211X (retired)
CR216X (retired)
CR23X (retired)
CR295X (retired)
CR300
CR3000
CR310
CR500 (retired)
CR5000 (retired)
CR510 (retired)
CR6
CR800
CR850
CR9000 (retired)
CR9000X

Downloads

BMP5 Direct SDK v.4.5 (8.58 MB) 10-09-2017

A software development kit that allows the creation of custom software clients for simple and direct communications with a single datalogger containing a PakBus operating system.

Frequently Asked Questions

Number of FAQs related to BMP5: 11

Expand AllCollapse All

  1. In general, no. The BMP5 Direct SDK only works with direct connections (IP or COM port connections) between the datalogger and the computer, or connections that appear to be direct (that is, modems that are transparent, like the SRM-5A Short Haul Modem).

  2. Yes. The BMP5 Direct SDK can communicate with the datalogger as long as two conditions are met:

    1. The communications link between the datalogger and the computer is transparent.
    2. There are no excessive delays.

  3. The simplepb.dll and coralib3d.dll libraries are 32-bit dlls, so it is really only possible to create a 32-bit application with them. These applications can often be accommodated by 64-bit operating systems via the use of emulators or similar techniques.
  4. Yes. This can be done using a block of unsafe (that is, .NET unmanaged) code. A C# sample program can be obtained by contacting Campbell Scientific’s technical support.

  5. Current dataloggers compatible with the BMP5 Direct SDK are the CR200X-series, CR1000, CR3000, CR800, and CR850.

    Retired compatible dataloggers include the CR10X-PB, CR23X-PB, and CR510-PB. These dataloggers must have the optional PakBus operating system installed, which is available on the Downloads page of our website.

  6. Using the FileControl() instruction, the .dat files can be retrieved directly from the memory card. When data is collected by the standard method (not as downloaded files, but as streamed data) with a GetData() or similar instruction, the memory card is automatically used as a source of records to be returned when the internal CPU table no longer contains the oldest data. These records can be retrieved simply by using their record numbers.

  7. This can only be done by sending a different program using the FileControl() or File_Send() instruction. Data tables in a datalogger cannot be added or deleted at datalogger runtime using any of our datalogger communication software, such as LoggerNet, PC400, PC200W, or any of the SDKs. Changes (additions, deletions, or modifications) to data tables within a datalogger have to be changed inside the actual datalogger program using a program editor such as CRBasic. After the data tables are modified within the program, the program must be resent to the datalogger. Compiling the new program on the datalogger will reset and create new tables as defined by the program.

    To clear a data table (zero out the data), the CoraScript control, found in either the LoggerNet-SDK or the LoggerNet Server SDK, would need to be used. This functionality does not exist in the BMP5 Direct SDK.

  8. After running the downloaded bmp5directsdk4.0.exe installation file, both the coralib3d.dll and simplepb.dll libraries should be in the C:\Campbellsci\BMP5DirectSDK\Controls directory unless a directory other than C:\Campbellsci\BMP5DirectSDK  was specified during installation.

  9. The BMP5 Direct SDK is a software development kit that allows the creation of custom software clients for simple and direct communication with a single datalogger containing a PakBus operating system.

  10. This is not supported in the BMP5 Direct SDK. The options available are to specify a starting record number, get the most recent record, or collect all available records. When specifying a starting record, all data from that record forward is then retrieved. The burden is on the programmer that uses the SDK to keep track of the last record number retrieved within the program and then to retrieve what is needed or desired in the future.

    The functionality to specify a date/time data collection range is available in the LoggerNet-SDK and the LoggerNet Server SDK. Both the LoggerNet-SDK and the LoggerNet Server SDK are available for purchase from Campbell Scientific.

Privacy Policy Update

We've updated our privacy policy.  Learn More