Data memory

The data logger includes three types of memory: SRAM, Flash, and Serial Flash. A memory card slot is also available for an optional microSD card. Note that the data logger USB port does not support USB flash or thumb drives (see Communications ports for more information).

  • Total onboard: 128 MB of flash + 4 MB battery-backed SRAM
    • Data storage: 4 MB SRAM + 72 MB flash (extended data storage automatically used for auto-allocated Data Tables not being written to a card)
    • CPU drive: 30 MB flash
    • OS load: 8 MB flash
    • Settings: 1 MB flash
    • Reserved (not accessible): 10 MB flash
  • Data storage expansion: Removable microSD flash memory, up to 16 GB

Data tables

Measurement data is primarily stored in data tables within ClosedSRAM Static Random-Access Memory. Data is usually erased from this area when a program is sent to the data logger.

During data table initialization, memory sectors are assigned to each data table according to the parameters set in the program. Program options that affect the allocation of memory include the Size parameter of the DataTable() instruction, the Interval and Units parameters of the DataInterval() instruction. The data logger uses those parameters to assign sectors in a way that maximizes the life of its memory. See the CRBasic Editor help for detailed instruction information and program examples: https://help.campbellsci.com/crbasic/cr6/ .

By default, data memory sectors are organized as ring memory. When the ring is full, oldest data is overwritten by newest data. Using the FillStop statement sets a program to stop writing to the data table when it is full, and no more data is stored until the table is reset. To see the total number of records that can be stored before the oldest data is overwritten, or to reset tables, go to Station Status > Table Fill Times in your data logger support software.

Data concerning the data logger memory are posted in the Status and DataTableInfo tables. For additional information on these tables, see Information tables and settings (advanced).

For additional information on data logger memory, visit the Campbell Scientific blog article, How to Know when Your Datalogger Memory is Getting Full .

Memory allocation

Data table SRAM and the ClosedCPU Central processing unit. The brains of the data logger. drive are automatically partitioned by the data logger. The ClosedUSR drive A portion of memory dedicated to the storage of image or other files. can be partitioned as needed. The CRD drive is automatically partitioned when a memory card is installed.

The CPU and ClosedUSR drives A portion of memory dedicated to the storage of image or other files. use the ClosedFAT File Allocation Table - a computer file system architecture and a family of industry-standard file systems utilizing it. file system. There is no limit, beyond practicality and available memory, to the number of files that can be stored. While a FAT file system is subject to fragmentation, performance degradation is not likely to be noticed since the drive has a relatively small amount of solid state RAM and is accessed very quickly.

SRAM

SRAM holds program variables, communications buffers, final-data memory, and, if allocated, the USR drive. An internal lithium battery retains this memory when primary power is removed.

The structure of the data logger SRAM memory is as follows:

  • Static Memory: This is memory used by the operating system, regardless of the running program. This sector is rebuilt at power-up, program recompile, and watchdog events.

  • Operating Settings and Properties: Also known as the "Keep" memory, this memory is used to store settings such as PakBus address, station name, beacon intervals, and allowed neighbor lists. This memory also stores dynamic properties such as known routes and communications timeouts.

  • CRBasic Program Operating Memory: This memory stores the currently compiled and running user program. This sector is rebuilt on power-up, recompile, and watchdog events.

  • Variables & Constants: This memory stores constants and public variables used by the CRBasic program. Variables may persist through power-up, recompile, and watchdog events if the PreserveVariables instruction is in the running program.

  • Final-Data Memory: This memory stores data. Auto-allocated tables fill whatever memory remains after all other demands are satisfied. A compile error occurs if insufficient memory is available for user-allocated data tables. This memory is given lowest priority in SRAM memory allocation.

  • Communication Memory 1: Memory used for construction and temporary storage of PakBus packets.

  • Communication Memory 2: Memory used to store the list of known nodes and routes to nodes. Routers use more memory than leaf nodes because routes store information about other routers in the network. You can increase the Communication Allocation field in Device Configuration Utility to increase this memory allocation.


(Click image to expand/collapse display)

  • USR drive: Optionally allocated. Holds image files. Holds a copy of final-data memory when TableFile() instruction used. Provides memory for FileRead() and FileWrite() operations. Managed in File Control. Status reported in Status table fields USRDriveSize and USRDriveFree.

USR drive

Battery-backed SRAM can be partitioned to create a ClosedFAT File Allocation Table - a computer file system architecture and a family of industry-standard file systems utilizing it. USR drive, analogous to partitioning a second drive on a computer hard disk. Certain types of files are stored to USR to reserve limited CPU drive memory for data logger programs and calibration files. Partitioning also helps prevent interference from data table SRAM. The USR drive holds any file type within the constraints of the size of the drive and the limitations on filenames. Files typically stored include image files from cameras, certain configuration files, files written for FTP retrieval, HTML files for viewing with web access, and files created with the TableFile() instruction. Measurement data can also be stored on USR as discrete files by using the TableFile() instruction. Files on USR can be collected using Closeddata logger support software LoggerNet, RTDAQ, and PC400 - these Campbell Scientific software applications include at least the following functions: data logger communications, downloading programs, clock setting, and retrieval of measurement data. Retrieve command in ClosedFile Control File Control is a feature of LoggerNet, PC400, Device Configuration Utility, and RTDAQ data logger support software. It provides a view of the data logger file system and a menu of file management commands., or automatically using the LoggerNet Setup > File Retrieval tab functions.

USR is not affected by program recompilation or formatting of other drives. It will only be reset if the USR drive is formatted, a new operating system is loaded, or the size of USR is changed. USR size is set manually by accessing it in the ClosedSettings Editor An editor for observing and adjusting settings. Settings Editor is a feature of LoggerNet>Connect, PakBus Graph, and Device Configuration Utility., or programmatically by loading a CRBasic program with a USR drive size entered in a SetSetting() instruction. Partition the USR drive to at least 11264 bytes in 512-byte increments. If the value entered is not a multiple of 512 bytes, the size is rounded up. Maximum size of USR 2990080 bytes.

WARNING:

Partitioning or changing the size of the USR drive will delete stored data from tables. Collect data first.

NOTE:

Placing an optional USR size setting in the CRBasic program overrides manual changes to USR size. When USR size is changed manually, the CRBasic program restarts and the programmed size for USR takes immediate effect.

Files in the USR drive can be managed through Closeddata logger support software LoggerNet, RTDAQ, and PC400 - these Campbell Scientific software applications include at least the following functions: data logger communications, downloading programs, clock setting, and retrieval of measurement data. File Control or through the FileManage() instruction in ClosedCRBasic Campbell Scientific's BASIC-like programming language that supports analog and digital measurements, data processing and analysis routines, hardware control, and many communications protocols. program.

Flash memory

The data logger operating system is stored in a separate section of flash memory. To update the operating system, see Updating the operating system.

Serial flash memory holds the CPU drive, web page, and data logger settings. Because flash memory has a limited number of write/erase cycles, care must be taken to avoid continuously writing to files on the CPU drive.

CPU drive

The serial flash memory CPU drive contains data logger programs and other files. This memory is managed in ClosedFile Control File Control is a feature of LoggerNet, PC400, Device Configuration Utility, and RTDAQ data logger support software. It provides a view of the data logger file system and a menu of file management commands..

NOTE:

When writing to files under program control, take care to write infrequently to prevent premature failure of serial flash memory. Internal chip manufacturers specify the flash technology used in Campbell Scientific CPU: drives at about 100,000 write/erase cycles. While Campbell Scientific's in-house testing has found the manufacturers' specifications to be very conservative, it is prudent to note the risk associated with repeated file writes via program control.

Also, see System specifications for information on data logger memory.