mirror of
https://github.com/sunnypilot/sunnypilot.git
synced 2026-02-18 22:23:56 +08:00
* change LSM6DS3TR(-c) gyroscope and accelerometer to interrupt
* add pthread for linking
* add interrupt collector thread to fetch in parallel to non interrupt based sensors
* change get_event interface to return true on successful read
* fetch sensor interrupts via gpiochip
* avoid sending empty messages (interrupt only, non interupt magn can leave a gap in the orphan block)
* add verifier script to sensor interrupts (sensor_data_to_hist.py)
* add/update sensord testsweet (test_sensord.py)
* add poll timed out check
* unexport interrupt gpio pins
* gpiochip on both edges, but skip falling edge if rising edge is detected, this is handled in the sensor as the status flag is checked if new data is availble
* add test to sensord to verify 100Hz interrupt frequency
* add sensor shutdown/low power mode functionality on sensord exit
* relax test, will be readded in the splitup PR
Co-authored-by: Kurt Nistelberger <kurt.nistelberger@gmail.com>
old-commit-hash: 84a3c355e5
34 lines
986 B
C
34 lines
986 B
C
#pragma once
|
|
|
|
// Pin definitions
|
|
#ifdef QCOM2
|
|
#define GPIO_HUB_RST_N 30
|
|
#define GPIO_UBLOX_RST_N 32
|
|
#define GPIO_UBLOX_SAFEBOOT_N 33
|
|
#define GPIO_UBLOX_PWR_EN 34
|
|
#define GPIO_STM_RST_N 124
|
|
#define GPIO_STM_BOOT0 134
|
|
#define GPIO_BMX_ACCEL_INT 21
|
|
#define GPIO_BMX_GYRO_INT 23
|
|
#define GPIO_BMX_MAGN_INT 87
|
|
#define GPIO_LSM_INT 84
|
|
#define GPIOCHIP_INT 0
|
|
#else
|
|
#define GPIO_HUB_RST_N 0
|
|
#define GPIO_UBLOX_RST_N 0
|
|
#define GPIO_UBLOX_SAFEBOOT_N 0
|
|
#define GPIO_UBLOX_PWR_EN 0
|
|
#define GPIO_STM_RST_N 0
|
|
#define GPIO_STM_BOOT0 0
|
|
#define GPIO_BMX_ACCEL_INT 0
|
|
#define GPIO_BMX_GYRO_INT 0
|
|
#define GPIO_BMX_MAGN_INT 0
|
|
#define GPIO_LSM_INT 0
|
|
#define GPIOCHIP_INT 0
|
|
#endif
|
|
|
|
int gpio_init(int pin_nr, bool output);
|
|
int gpio_set(int pin_nr, bool high);
|
|
|
|
int gpiochip_get_ro_value_fd(const char* consumer_label, int gpiochiop_id, int pin_nr);
|