# ESPCAL **Repository Path**: jamesshao8/ESPCAL ## Basic Information - **Project Name**: ESPCAL - **Description**: No description available - **Primary Language**: Unknown - **License**: MIT - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-04-24 - **Last Updated**: 2026-04-24 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # ESPCAL : ESP32 Collaborative Antenna Localization # [[ENGLISH]](./README_EN.md) **基于ESP32的WiFi CSI感知平台,实现信道状态信息采集、相位校准、阵列信号处理与角度估计,为室内定位、无线感知等研究提供轻量级开源验证平台。** --- ## 🌟 欢迎关注我们的研究工作 1. **WiCAL: Accurate Wi-Fi-based 3D localization enabled by collaborative antenna arrays** Fuhai Wang, Zhe Li, Rujing Xiong, Tiebin Mi, Robert Caiming Qiu *IEEE Journal on Selected Areas in Communications (JSAC)*, 2025, Vol.43, No.11, pp.3752-3765 --- > [!TIP] > 此分支为早期验证性实验,搭建了完整硬件平台与数据获取框架、应用实例。 ## 目录 - [展示](#展示) - [硬件](#硬件) - [软件](#软件) - [环境](#环境) - [快速开始](#快速开始) ## 展示 IMG_20260312_144305 IMG_20260413_145527 IMG_20260413_145511 ## 硬件 此项目硬件使用嘉立创EDA设计绘制,并在立创开源广场进行完全开源:[硬件开源](https://oshwhub.com/greentor/project_ytsbudsf/) 主控:ESP32-S3FH4R2 IMG_20251107_201829 IMG_20251107_201957 ## 软件 drivers文件夹为ESP32S3的源代码,其中CSI_SLAVE为各天线控制芯片的程序,CSI_MASTER为控制板上ESP32的程序 csi_system为上位机程序,用于接收硬件平台的数据并进行数据处理、算法应用。使用Python 3.11.4。 目录结构如下: ``` 📁 csi_system/ ├── 📁 algorithms/ 算法类实现目录 ├── 📁 core/ 核心框架类 ├── 📁 tabs/ 功能标签页类 ├── 📁 older/ 旧版本代码 └── 📄 main_XXX.py 主程序 ``` 使用到的库:tkinter、socket、threading、numpy、scipy、numba等等 ## 环境 image | 距离 | 信号强度 | 精度 | 信噪 | 描述 | |------|----------|--------|-------|----------------| | < 2m | 强 | 高 | 大 | 推荐 | | 2-5m | 中 | 中 | 中 | 推荐 | | > 5m | 弱 | 低 | 小 | 难以精确估计DOA | ## 快速开始 1. 使用USB或DC口给设备5V供电,阵列耗电量较大,需要注意满足电源电流足够,确保所有芯片同时上电 2. 为每一个芯片烧录固件,天线单元的ESP32需要使用串口工具进行烧录,控制板内置串口芯片,上面的的ESP32可以直接使用USB接入进行烧录 3. 使用网线连接控制板和上位机,默认地址为192.168.2.10:8000 4. 运行main_XXX.py程序,点击连接设备 767804e98fa9837348d18c5499821fa9 5. 连接成功后,点击校准模式,再点击开启校准WiFi。等待设备进行校准,当接收到30+个校准数据包后,关闭校准WiFi,点击应用校准 6. 校准完毕后,输入需要定位的信源MAC地址,点击普通模式,即可开始正常运行