Cascoda SDK
Cascoda SDK for building software to run with CA-821x transceivers
object_device.c File Reference
#include "liblwm2m.h"
#include "lwm2mclient.h"
#include <ctype.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <time.h>
#include "cascoda-bm/cascoda_interface.h"
#include "cascoda-util/cascoda_tasklet.h"
#include "openthread/instance.h"
#include "ca821x_api.h"
Include dependency graph for object_device.c:

Classes

struct  device_data_t
 

Macros

#define PRV_MANUFACTURER   "Cascoda"
 
#define PRV_MODEL_NUMBER   "Cascoda SDK"
 
#define PRV_FIRMWARE_VERSION   ca821x_get_version()
 
#define PRV_POWER_SOURCE_1   5
 
#define PRV_POWER_VOLTAGE_1   5000
 
#define PRV_POWER_CURRENT_1   100
 
#define PRV_BATTERY_LEVEL   100
 
#define PRV_MEMORY_FREE   15
 
#define PRV_ERROR_CODE   0
 
#define PRV_TIME_ZONE   "Europe/Berlin"
 
#define PRV_BINDING_MODE   "U"
 
#define PRV_OFFSET_MAXLEN   7
 
#define PRV_TLV_BUFFER_SIZE   128
 
#define RES_O_MANUFACTURER   0
 
#define RES_O_MODEL_NUMBER   1
 
#define RES_O_SERIAL_NUMBER   2
 
#define RES_O_FIRMWARE_VERSION   3
 
#define RES_M_REBOOT   4
 
#define RES_O_FACTORY_RESET   5
 
#define RES_O_AVL_POWER_SOURCES   6
 
#define RES_O_POWER_SOURCE_VOLTAGE   7
 
#define RES_O_POWER_SOURCE_CURRENT   8
 
#define RES_O_BATTERY_LEVEL   9
 
#define RES_O_MEMORY_FREE   10
 
#define RES_M_ERROR_CODE   11
 
#define RES_O_RESET_ERROR_CODE   12
 
#define RES_O_CURRENT_TIME   13
 
#define RES_O_UTC_OFFSET   14
 
#define RES_O_TIMEZONE   15
 
#define RES_M_BINDING_MODES   16
 
#define RES_O_DEVICE_TYPE   17
 
#define RES_O_HARDWARE_VERSION   18
 
#define RES_O_SOFTWARE_VERSION   19
 
#define RES_O_BATTERY_STATUS   20
 
#define RES_O_MEMORY_TOTAL   21
 

Functions

void display_device_object (lwm2m_object_t *object)
 
lwm2m_object_t * get_object_device ()
 
void free_object_device (lwm2m_object_t *objectP)
 
uint8_t device_change (lwm2m_data_t *dataArray, lwm2m_object_t *objectP)
 

Macro Definition Documentation

◆ PRV_BATTERY_LEVEL

#define PRV_BATTERY_LEVEL   100

◆ PRV_BINDING_MODE

#define PRV_BINDING_MODE   "U"

◆ PRV_ERROR_CODE

#define PRV_ERROR_CODE   0

◆ PRV_FIRMWARE_VERSION

#define PRV_FIRMWARE_VERSION   ca821x_get_version()

◆ PRV_MANUFACTURER

#define PRV_MANUFACTURER   "Cascoda"

◆ PRV_MEMORY_FREE

#define PRV_MEMORY_FREE   15

◆ PRV_MODEL_NUMBER

#define PRV_MODEL_NUMBER   "Cascoda SDK"

◆ PRV_OFFSET_MAXLEN

#define PRV_OFFSET_MAXLEN   7

◆ PRV_POWER_CURRENT_1

#define PRV_POWER_CURRENT_1   100

◆ PRV_POWER_SOURCE_1

#define PRV_POWER_SOURCE_1   5

◆ PRV_POWER_VOLTAGE_1

#define PRV_POWER_VOLTAGE_1   5000

◆ PRV_TIME_ZONE

#define PRV_TIME_ZONE   "Europe/Berlin"

◆ PRV_TLV_BUFFER_SIZE

#define PRV_TLV_BUFFER_SIZE   128

◆ RES_M_BINDING_MODES

#define RES_M_BINDING_MODES   16

◆ RES_M_ERROR_CODE

#define RES_M_ERROR_CODE   11

◆ RES_M_REBOOT

#define RES_M_REBOOT   4

◆ RES_O_AVL_POWER_SOURCES

#define RES_O_AVL_POWER_SOURCES   6

◆ RES_O_BATTERY_LEVEL

#define RES_O_BATTERY_LEVEL   9

◆ RES_O_BATTERY_STATUS

#define RES_O_BATTERY_STATUS   20

◆ RES_O_CURRENT_TIME

#define RES_O_CURRENT_TIME   13

◆ RES_O_DEVICE_TYPE

#define RES_O_DEVICE_TYPE   17

◆ RES_O_FACTORY_RESET

#define RES_O_FACTORY_RESET   5

◆ RES_O_FIRMWARE_VERSION

#define RES_O_FIRMWARE_VERSION   3

◆ RES_O_HARDWARE_VERSION

#define RES_O_HARDWARE_VERSION   18

◆ RES_O_MANUFACTURER

#define RES_O_MANUFACTURER   0

◆ RES_O_MEMORY_FREE

#define RES_O_MEMORY_FREE   10

◆ RES_O_MEMORY_TOTAL

#define RES_O_MEMORY_TOTAL   21

◆ RES_O_MODEL_NUMBER

#define RES_O_MODEL_NUMBER   1

◆ RES_O_POWER_SOURCE_CURRENT

#define RES_O_POWER_SOURCE_CURRENT   8

◆ RES_O_POWER_SOURCE_VOLTAGE

#define RES_O_POWER_SOURCE_VOLTAGE   7

◆ RES_O_RESET_ERROR_CODE

#define RES_O_RESET_ERROR_CODE   12

◆ RES_O_SERIAL_NUMBER

#define RES_O_SERIAL_NUMBER   2

◆ RES_O_SOFTWARE_VERSION

#define RES_O_SOFTWARE_VERSION   19

◆ RES_O_TIMEZONE

#define RES_O_TIMEZONE   15

◆ RES_O_UTC_OFFSET

#define RES_O_UTC_OFFSET   14

Function Documentation

◆ device_change()

uint8_t device_change ( lwm2m_data_t *  dataArray,
lwm2m_object_t *  objectP 
)

◆ display_device_object()

void display_device_object ( lwm2m_object_t *  object)

◆ free_object_device()

void free_object_device ( lwm2m_object_t *  objectP)

◆ get_object_device()

lwm2m_object_t* get_object_device ( void  )