🌀 BaSIL — Badge Social Irisé Libre#
Other potential name : OSIriS : OpenSource Social Iridescent Socializer
A wearable, open-source social radar that tells you where your friends are — without screens, without cloud, without surveillance.
Un radar social portable et open-source qui vous indique où sont vos amis — sans écran, sans cloud, sans surveillance.
EN#
What is BaSIL?#
BaSIL is a screenless wearable badge that uses light and subtle feedback to indicate the direction and distance of nearby trusted contacts.
Think of it as a compass that always points toward your people.
Core principles:
- Zero-screen interface: Two concentric LED rings (16 + 8 WS2812B) provide directional and relational feedback through color, position, and animation patterns.
- Privacy by design: No GPS tracking. No cloud. No persistent identity. Encryption keys and contact data are automatically purged after 72 hours without contact or after a defined date and time (anti-stalking by design).
- Open hardware: KiCad schematics, PCB layout, 3D-printable enclosure files — everything needed to build your own.
- Heart + Shell philosophy: The PCB is a standardized electronic core. The enclosure is yours to design. Like a lightsaber, each badge should reflects its maker.
How does it work?#
| Range | Technology | Precision |
|---|---|---|
| 0.1m–100m | BLE 6.0 Channel Sounding (nRF54L15) | Sub-meter |
| 100m–3km+ | LoRa (SX1262, 868 MHz) | Approximate bearing |
The inner LED ring (8 LEDs) represents your circle of trust — lasting bonds built through recurring proximity. The outer ring (16 LEDs) acts as a directional radar, pointing toward detected contacts.
A companion app (React Native, planned) handles pairing, firmware updates, and circle management (including messaging via text and potnetially short audio). The badge operates fully standalone after setup.
Hardware (Badge V1)#
| Component | Role |
|---|---|
| Seeed XIAO nRF54L15 Sense | MCU, BLE 6.0, IMU, microphone |
| Wio-SX1262 | LoRa transceiver (868 MHz) |
| QMC5883L | Magnetometer (heading) |
| 2x WS2812B rings (16+8) | Zero-screen interface |
| TTP223 | Capacitive touch button |
| LiPo 504040 (800 mAh) | Swappable battery |
Enclosure: Teardrop shape, max 60×80×20mm. 3D-printable (FDM/SLA).
Software stack#
| Layer | Technology |
|---|---|
| RTOS | Zephyr (Nordic nRF Connect SDK) |
| Radio | BLE 6.0 + LoRa (SPI) |
| Sensors | IMU (LSM6DS3TR-C) + Magnetometer (I2C) + Microphone |
| Position engine | Trilateration, Kalman filter, TinyML environment classification |
| Companion app | React Native (planned) |
Project status#
| Milestone | Status |
|---|---|
| Electrical schematic (KiCad) | ✅ Complete |
| PCB layout | 🔴 Not started |
| 3D enclosure (reference design) | 🟡 Mockups done |
| Firmware — sensors (IMU, magnetometer) | 🟡 In progress |
| Firmware — LED driver | 🔴 Not started |
| Firmware — BLE stack | 🔴 Not started |
| Firmware — LoRa stack | 🔴 Not started |
| Companion app | 🔴 Not started |
Repository structure#
BaSIL/
├── README.md
├── hardware/
│ ├── BOM/
│ ├── PCB/
│ ├── 3D_files/ # Boitier 3D (STL, STEP)
│ └── Antennas/ # Docs antennes textiles V2
└── software/
└── firmware/
└── base_badge/ # Projet Zephyr principal
└── app/
Build your own#
⚠️ Badge V1 is still in active development. Assembly instructions will be published once the PCB layout is validated and a first batch tested.
Prerequisites:
- nRF Connect for VS Code (Nordic toolchain)
- KiCad 9.x or newer
- 3D printer (FDM or SLA) for enclosure and eventually FreeCAD 10.X
License#
Hardware: CERN-OHL-P v2 (permissive) Software: MIT Documentation: CC BY-SA 4.0
License choice is provisional and may evolve before first stable release.
Contact#
Project maintained by Hans BODART. Questions, ideas, contributions: open an issue.
FR#
Qu'est-ce que BaSIL ?#
BaSIL est un badge portable sans écran qui utilise la lumière pour indiquer la direction et la distance de vos contacts de confiance à proximité.
Un compas qui pointe toujours vers vos proches.
Principes fondamentaux :
- Interface zéro-écran : Deux anneaux LED concentriques (16 + 8 WS2812B) fournissent un retour directionnel et relationnel par la couleur, la position et les motifs d'animation.
- Vie privée par conception : Pas de GPS. Pas de cloud. Pas d'identité persistante. Les clés de chiffrement et les données de contact sont automatiquement purgées après 72 heures sans contact ou apèrs un date et une heure défini (anti-harcèlement par design).
- Matériel ouvert : Schémas KiCad, layout PCB, fichiers boîtier imprimables en 3D — tout le nécessaire pour construire le vôtre.
- Philosophie Cœur + Enveloppe : Le PCB est un cœur électronique standardisé. Le boîtier vous appartient. Comme un sabre laser, chaque badge reflète son créateur.
Comment ça fonctionne ?#
| Portée | Technologie | Précision |
|---|---|---|
| 0,1m–100m | BLE 6.0 Channel Sounding (nRF54L15) | cm |
| 100m–3km+ | LoRa (SX1262, 868 MHz) | Cap approximatif |
L'anneau intérieur (8 LEDs) représente votre cercle de confiance — des liens durables construits par la proximité récurrente. L'anneau extérieur (16 LEDs) agit comme un radar directionnel, pointant vers les contacts détectés.
Une application compagnon (React Native, prévue) gère l'appairage, les mises à jour firmware et la gestion du cercle (incluant la lecture de message texte ou audio court). Le badge fonctionne de manière autonome après la configuration initiale.
Matériel (Badge V1)#
| Composant | Rôle |
|---|---|
| Seeed XIAO nRF54L15 Sense | MCU, BLE 6.0, IMU, microphone |
| Wio-SX1262 | Émetteur-récepteur LoRa (868 MHz) |
| QMC5883L | Magnétomètre (cap) |
| 2x anneaux WS2812B (16+8) | Interface zéro-écran |
| TTP223 | Bouton tactile capacitif |
| LiPo 504040 (800 mAh) | Batterie interchangeable |
Boîtier : Forme goutte d'eau, max 60×80×20mm. Imprimable 3D (FDM/SLA).
Stack logicielle#
| Couche | Technologie |
|---|---|
| RTOS | Zephyr (Nordic nRF Connect SDK) |
| Radio | BLE 6.0 + LoRa (SPI) |
| Capteurs | IMU (LSM6DS3TR-C) + Magnétomètre (I2C) + Microphone |
| Moteur de position | Trilatération, filtre de Kalman, classification TinyML |
| App compagnon | React Native (prévue) |
État du projet#
| Jalon | Statut |
|---|---|
| Schéma électrique (KiCad) | ✅ Terminé |
| Layout PCB | 🔴 Non commencé |
| Boîtier 3D (design de référence) | 🟡 Mockups réalisés |
| Firmware — capteurs (IMU, magnétomètre) | 🟡 En cours |
| Firmware — driver LED | 🔴 Non commencé |
| Firmware — stack BLE | 🔴 Non commencé |
| Firmware — stack LoRa | 🔴 Non commencé |
| App compagnon | 🔴 Non commencé |
Structure du dépôt#
BaSIL/ ├── hardware/ │ ├── kicad/ # Schéma & fichiers PCB │ ├── bom/ # Nomenclature composants │ ├── enclosure/ # Modèles 3D (STL, STEP) │ └── antennas/ # R&D antennes textiles (V2) ├── software/ │ ├── firmware/ │ │ └── base_badge/ # Projet Zephyr │ └── app/ # App compagnon React Native ├── docs/ │ ├── tech_sheet.md # Spécification technique complète │ └── mockups/ # Visuels 2D/3D ├── LICENSE └── README.md
Construire le vôtre#
⚠️ Le Badge V1 est en développement actif. Les instructions d'assemblage seront publiées une fois le layout PCB validé et un premier lot testé.
Prérequis :
- nRF Connect for VS Code (toolchain Nordic)
- KiCad 9.x ou + récent
- Imprimante 3D (FDM ou SLA) pour le boîtier et éventuellment FreeCAD 10.x ou + récent.
Licence#
Matériel : CERN-OHL-P v2 (permissive) Logiciel : MIT Documentation : CC BY-SA 4.0
Le choix de licence est provisoire et pourra évoluer avant la première version stable.
Contact#
Projet maintenu par Hans. Questions, idées, contributions : ouvrir une issue.