SBOU285A April   2023  – July 2025 INA700 , INA701

 

  1.   1
  2.   Description
  3.   Get Started
  4.   Features
  5.   5
  6. 1Evaluation Module Overview
    1. 1.1 Introduction
    2. 1.2 Kit Contents
    3. 1.3 Specification
    4. 1.4 Device Information
  7. 2Hardware
    1. 2.1 Quick Start Setup
    2. 2.2 EVM Operation
      1. 2.2.1 Current Sensing Operation
        1. 2.2.1.1 Detailed Setup
    3. 2.3 Circuitry
      1. 2.3.1 Current Sensing IC
      2. 2.3.2 Input Signal Path
      3. 2.3.3 Digital Circuitry
    4. 2.4 PAMB Compatibility
  8. 3Software
    1. 3.1 Setup
      1. 3.1.1 Driver Installation
      2. 3.1.2 Firmware
        1. 3.1.2.1 Firmware Debug
      3. 3.1.3 GUI Setup and Connection
        1. 3.1.3.1 Initial Setup
        2. 3.1.3.2 GUI to EVM Connection
    2. 3.2 GUI Operation
      1. 3.2.1 Homepage Tab
      2. 3.2.2 Registers Tab
      3. 3.2.3 Results Data Tab
    3. 3.3 Direct EVM USB Communication
      1. 3.3.1 Standard USB Read and Write Operations
      2. 3.3.2 Collect Data Through the USB BULK Channel
  9. 4Hardware Design Files
    1. 4.1 Schematics
    2. 4.2 PCB Layout
    3. 4.3 Bill of Materials
  10. 5Additional Information
    1. 5.1 Trademarks
  11. 6Related Documentation
  12. 7Revision History

Collect Data Through the USB BULK Channel

The Collect Data function reads the desired result registers and sends the data based on the specified settings. This function works best with continuous conversion mode and does not configure the EVM or associated register settings. Collect mode starts and stops via the serial COM port, however the results are sent over the USB BULK channel. To use this mode, use the following format:

  • Start collecting data format: collect timerPeriod collectFlags channelAddressIDs numDevices
    • Where collect is always lower case, and each parameter is the decimal representation of the value in the following format:
      • timerPeriod
        • The timer delay used in the MCU to allow data collection sample sets (in µs, unsigned 32-bit value).
      • collectFlags
        • a byte of data that has a 1 to collect and a 0 to not collect each register value type, according to the following definitions:
          • VBUS = 0b0100000
          • DIETEMP = 0b0010000
          • CURRENT = 0b0001000
          • POWER = 0b0000100
          • ENERGY = 0b0000010
          • CHARGE = 0b0000001
      • channelAddressIDs
        • This is the 4 least significant bits of each I2C address chained together, starting with bits 3-0.
          • For example, if EVM 1 is on channel 0x44 and EVM 2 is on ox46, the value here is 0b01100100.
      • NumDevices
        • The number of EVMs chained together (1-4).
    • For example, to start data collection for VBUS, and DIETEMP every 3.156ms, for two INA700s with EVM 1 address = 0x44 and EVM 2 address = 0x46, you send: collect 3156 48 100 2.
      • For this example, the EVM returns the acknowledgment and state in JSON format:
        • {"acknowledge":"collect 3156 48 100 2"}
        • {"evm_state":"collecting"}
    • The USB BULK channel receives data in the format: frameID deviceNumID address registerSize data.
      • Where each parameter is the decimal representation of the value in the following format:
        • frameID (1 byte)
          • Always reads 0. Used to verify that data is aligned.
        • deviceNumID (1 byte)
          • An ID number corresponding to the EVM number.
            • From the above example, this is 1 if reading from EVM 1 which had address set to 0x44, and 2 if reading from EVM 2 which had an address set to 0x46.
        • address (1 byte)
          • The register address that is read from the device.
        • registerSize (1 byte)
          • The number of bytes that the following data has.
        • data (1 byte at a time)
          • The register data value, given in bytes with the most significant byte (MSB) first.
  • Stop collecting data format: stop
    • Where stop is always lower case.
    • The EVM returns the acknowledgment and state in JSON format:
      • {"acknowledge":"stop"}
      • {"evm_state":"idle"}