ESP BLUFI Simulator (ARM64)
A Flutter plugin project that provides a simulation environment for the ESP BLUFI (Bluetooth-based Wi-Fi Provisioning) protocol, optimized for ARM64 architecture devices.
Note: This repository is currently a boilerplate/starter template for a Flutter plugin with platform-specific (Android/iOS) implementation code. It does not yet contain functional BLUFI logic but serves as the foundation for future development.
๐ฆ What is BLUFI?
BLUFI (Bluetooth-based Wi-Fi Provisioning) is a protocol developed by Espressif Systems that allows users to configure Wi-Fi credentials on an ESP32 or ESP32-S series device via Bluetooth Low Energy (BLE), without needing to connect to a network first.
This simulator aims to replicate BLUFI behavior on ARM64 mobile platforms (e.g., modern Android phones or iOS devices with Apple Silicon) for testing and development purposes.
๐ Features (Planned)
- Simulate BLE communication flow of ESP BLUFI
- Support Wi-Fi credential encoding/decoding as per Espressifโs BLUFI spec
- Cross-platform support via Flutter (Android & iOS)
- ARM64-optimized native bindings
๐ ๏ธ Getting Started
Prerequisites
- Flutter SDK (latest stable version)
- Dart SDK
- Android Studio / Xcode (for platform-specific builds)
- Basic understanding of BLE and ESP32 provisioning
Installation
Add this plugin to your Flutter project:
dependencies:
esp_blufi_simulator_arm6:
git:
url: https://github.com/pengyu0o0/esp_blufi_simulator_arm64.git
Then run:
flutter pub get
โ ๏ธ Warning: This package is currently a skeleton and does not provide usable APIs. Please check back for updates.
๐งช Development Setup
-
Clone the repo:
git clone https://github.com/pengyu0o0/esp_blufi_simulator_arm64.git cd esp_blufi_simulator_arm64 -
Open in your IDE (VS Code / Android Studio).
-
Implement platform-specific BLUFI logic in:
android/src/main/...(Kotlin/Java)ios/Classes/...(Swift/Objective-C)
-
Use
lib/esp_blufi_simulator_arm64.dartto expose Dart APIs.
๐ License
This project is licensed under the MIT License โ see the LICENSE file for details.
๐ Contributing
Contributions are welcome! Please fork the repository and submit a pull request with your enhancements, especially around:
- BLUFI frame parsing
- Security handshake simulation
- Real-device BLE integration
๐ฌ Contact
Maintainer: Peng Yu
GitHub: @pengyu0o0