/
EFS Sensor Clustor

EFS Sensor Clustor

Table of Contents

Introduction

The purpose of this project is to utilize an STM32L433RC MCU to fetch data from sensors on the PCB, convert it into CAN format, and communicate with the Pixhawk6x. This document will record the details and progress of each sensor.

Reference: Sensor Cluster

GitHub repo: https://github.com/UWARG/efs-can-sensor-clustor https://github.com/UWARG/efs-canard

Standard Data Types: List of standard data types - DroneCAN

 

download.png
Sensor Cluster Structure

 

nucleo_l433rc_p_pinout.jpg
L433RC Morpho Pinout Diagram

 

Sensors

MLX90393 Magnetometer @Henry Wu @Yutong Zhu

Data sheet:

Application note:

Reference libraries: https://github.com/adafruit https://github.com/tedyapo/arduino-MLX90393

Breakout board: 4022 Adafruit Industries LLC | Development Boards, Kits, Programmers | DigiKey

Progress

  • Setup basic I2C transceive function(in blocking mode)

  • Setup functions for each command(refer to data sheet 15.1)

  • Setup functions to manipulate register values and data conversion(refer to data sheet 16)

  • Debugged and verified measurement read by comparing with sample Arduino code under same register settings - Nov 10, 2024

  • Test functions to change register values and switch to unblocking transfer- Nov 28, 2024

    • Write register and read register function tested and verified. Readings change according to settings. - Nov 12, 2024

    • DMA transfer ready to test - Nov 12, 2024

    • I2C interrupt transfer tested - Nov 28, 2024

  • CAN integration - Ongoing

    • Setup CAN message function for MagneticFieldStrength2, able to see txdata with logic analyzer. Need to decode data for verification.- Nov 28, 2024

    • Tx and Rx working, Ardupilot acknowledging data transferred - Jan 26, 2025

 

 

 

Notes

  • Consideration of DMA Use interrupt

  • Register settings: Higher OSR and digital filter setting lead to higher accuracy and lower noise, but higher covnersion time(refer to datasheet 16.2.5). Current setting: OSR = 3, digital filter = 5, conversion time = 52.92ms. Standard deviation of noise: XY-axis = 5 mGauss, Z-axis = 7 mGauss.

 

 

  • Sensitivity setting: Gain and resolution need to be tested on breakout board(refer to datasheet 16.2.4) Current setting: Sens-XY = 1, Sens-Z = 0, Gain_Sel = 0

 

Barometer

 

Rangefinder

Datasheet: https://www.mouser.ca/datasheet/2/1126/XM125_datasheet-3133248.pdf

Reference libraries: https://github.com/UWARG/efs-can-sensor-clustor/tree/A121-rangefinder/Drivers

Breakout board: Acconeer XM125

Progress

 

 

 

Related content

Custom CAN Hub
Read with this
Last Spring General EFS Meeting 2023-07-31
Last Spring General EFS Meeting 2023-07-31
More like this
RPI Interface Rev C Software
RPI Interface Rev C Software
Read with this
CAN Sensor Interface Brainstorming
CAN Sensor Interface Brainstorming
More like this
2023-09-27 CAN Sensor Board Arch Meeting
2023-09-27 CAN Sensor Board Arch Meeting
More like this
Sensor Cluster
Sensor Cluster
More like this