Skip to content
This repository has been archived by the owner on Jul 19, 2019. It is now read-only.

iCOMOX Firmware Source Code

sgm6733 edited this page Jun 21, 2019 · 9 revisions

The iCOMOX Evaluation Kit firmware is a CrossCore Embedded Studio (CCES) 2.8.3 project, written using ADI drivers, with no operation system (bare metal).

  1. Download and unzip the iCOMOX_FW_source_Rev_XXXX.zip (where XXX is the revision number) from https://www.shiratech-solutions.com/products/iCOMOX/.
  2. Import the project in the CCES (File->Import->General->Existing Project into Workspace)
  3. The description of the files and the functionalities are listed in Table 1.
  4. After compilation, the hex files (either debug or release) can be uploaded to the ADuCM4050 either using the JTAG or using the flash programmer (section‎ Updating Firmware).

Elements of the code of the FW:

File name Task Description
Main.c Initialization and control The main is responsible to the following tasks:
1. Initialization of the drivers of the clocks, sensors and the communication elements (UART & SMIP)
2. State machine which responds to timer and to the instruction from the user, acquires data from the sensors and forwards the data to the communication.
UART.c
UART.h
Interface to the UART communication with the PC Bidirectional wired communication from the ADuCM4050 to the PC.
SMIP.c
SMIP.h
Interface to the SmartMesh IP communication with the PC Bidirectional wireless communication from the ADuCM4050 to the PC (Mesh mode).
ADXL356B.c
ADXL356B.h
Interface to the analog output accelerometer Contains the driver of four ADCs which samples the data from the three axes of the accelerometer, and the temperature of the ADXL365 IC.
BMM150.c
BMM150.h
Interface to the magnetometer Contains an I2C driver to configure the magnetometer and the extract the three axes of the magnetic flux.
IM69.c
IM69.h
Interface to the microphone Contains an I2S over SPORT driver to receive samples from the microphone.
ADT7410.c
ADT7410.h
Interface to the temperature sensor Contains an I2C driver to read the temperature from the thermal sensor.
ADXL362.c
ADXL362.h
Interface to the digital output accelerometer Contains an SPI driver to receive samples from the microphone.