UPM

The UPM API is a high level sensor library for IoT devices using MRAA. See examples here. Back to index page.
SparkFun sensor images provided under CC BY-NC-SA-3.0.

DS2413 Class

Module: ds2413

The DS2413 is a dual-channel programmable I/O 1-Wire(r) chip. The PIO outputs are configured as open-drain and provide up to 20mA continuous sink capability and off-state operating voltage up to 28V. Control and sensing of the PIO pins is performed with a dedicated device-level command protocol.
This device requires the use of a UART to provide access to a Dallas 1-wire bus, via a new facility supported by MRAA (once the relevant PR is accepted), using the UartOW access class. It is important to realize that the UART is only being used to access and control a Dallas 1-wire compliant bus, it is not actually a UART device.
Multiple DS2413 devices can be connected to this bus. This module will identify all such devices connected, and allow you to access them using an index starting at 0.

Methods

DS2413

(
  • uart
)
Number

DS2413 object constructor

Parameters:

  • uart Number

    Default UART to use (0 or 1). Default is 0.

Returns:

Number:

init

()

This method will search the 1-wire bus and store information on each device detected on the bus. If no devices are found, an exception is thrown. Once this function completes successfully, you can use devicesFound() to determine how many devices were detected.

devicesFound

() Number

This method will return the number of DS2413 devices that were found on the bus.

Returns:

Number:

number of DS2413 's that were found on the bus

readGpios

(
  • index
)
Number

Read the GPIO latches and values for a given device. Only the lower 4 bits of the return value have any meaning. The bits are formatted as follows (from msb to lsb): <gpioB latch>=""> <gpioB value>=""> <gpioA latch>=""> <gpioA value>="">

Parameters:

  • index Number

    The device index to access (starts at 0). Default is the first device (index = 0)

Returns:

Number:

the 4 bit status of the 2 gpios

writeGpios

(
  • index
  • value
)

Write the given values to the gpio latches for a given device. Only the lower 2 bits of the value have any meaning. The lsb is gor gpioA and the next lsb is for gpioB: <gpioB latch>=""> <gpioA latch>="">

Parameters:

  • index Number

    The device index to access (starts at 0).

  • value Number

    the value to write to the gpio latches

getId

(
  • index
)
String

Return an 8 byte string representing the unique device ID for a given device index. If the index is invalid, an empty strig will be returned.

Parameters:

  • index Number

    The device index to access (starts at 0).

Returns:

String:

8 byte string representing the 1-wire device's unique rom code.

Properties

ACCESS_READ

Enum DS2413_CMD_T

ACCESS_WRITE

Enum DS2413_CMD_T

ACK_SUCCESS

Enum DS2413_ACK_T

ACK_FAILURE

Enum DS2413_ACK_T