VesiScan BASIC origin: Piezo + IMU firmware initial code

- nRF52840 + SoftDevice S140 BLE firmware
- Piezo ultrasound TX driver (2MHz, 8ch MUX)
- ICM42670P IMU 6-axis driver
- Echo AFE chain (ADA2200 + ADC121S051)
- BLE NUS command parser (mpa/mpc/mdc/mec/maa/msp)
- FDS flash config storage
- pc_firm parser and ADC driver included

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Charles Kwon
2026-03-11 10:40:20 +09:00
parent a8ba31871e
commit b3adfd42e6
49 changed files with 8459 additions and 2887 deletions

View File

@@ -0,0 +1,56 @@
/**
* @file ble_quick_security.h
* @brief Ultra-simple BLE Security Configuration
*
* ONE function call to control entire security behavior.
* Works with existing debug_print.h system.
*/
#ifndef BLE_QUICK_SECURITY_H
#define BLE_QUICK_SECURITY_H
#include <stdint.h>
#include <stdbool.h>
#include "peer_manager.h"
/**
* @brief Initialize BLE security with ONE simple parameter
*
* @param[in] development_mode true (1) = Fast development (no security)
* false (0) = Production (full security)
*
* Development mode (1):
* - No pairing/bonding required
* - Auto-deletes all bonds on startup
* - Instant connection
* - Fast iteration
*
* Production mode (0):
* - Full security with passkey
* - Bonding preserved
* - MITM protection
* - Secure deployment
*
* Usage in main.c:
* #define BLE_DEV_MODE 1 // or 0
* ble_security_quick_init(BLE_DEV_MODE);
*/
void ble_security_quick_init(bool development_mode);
/**
* @brief Get current mode
* @return true if in development mode, false if production
*/
bool ble_security_is_dev_mode(void);
/**
* @brief Peer Manager event handler
*
* Call this from your pm_evt_handler() function.
* It handles all security events automatically.
*
* @param[in] p_evt Peer Manager event
*/
void ble_security_quick_pm_handler(pm_evt_t const *p_evt);
#endif // BLE_QUICK_SECURITY_H