Démarrage rapide avec Scanus DIY
Construisez votre premier capteur de santé connecté open source en quelques étapes simples
🚀 Bootstrap de votre Scanus
Initialisez votre capteur DIY et configurez les notifications vibratoires
1. Installation et configuration initiale
Commencez par installer le SDK Scanus DIY et initialisez votre capteur. Cette étape configure les capteurs de base et calibre le moteur de vibration pour une détection optimale des signaux de santé.
# Installation des dépendances Scanus
pip install scanus-diy-sdk
from scanus import ScanusDevice, VibrationEngine
from scanus.notifications import NotificationPatterns
# Initialisation du capteur
device = ScanusDevice()
device.bootstrap()
# Configuration du moteur de vibration
vibration = VibrationEngine()
vibration.calibrate_sensitivity()
print("✅ Scanus prêt à scanner votre santé !")
2. Configuration des modes de notification
Définissez différents patterns de vibration selon le type d'alerte médicale. Chaque mode a son propre rythme et intensité pour vous permettre de distinguer rapidement les différents types de notifications de santé.
# Configuration des patterns de vibration
patterns = NotificationPatterns()
# Mode alerte cardiaque - vibration urgente
patterns.configure_alert(
name="CARDIAC_ALERT",
intensity="urgent",
rhythm="escalating",
duration=10,
pattern=[1, 0.5, 1, 0.5, 1, 0.5, 1, 0.5, 1, 0.5]
)
# Mode seuil de glucose - vibration subtile
patterns.configure_alert(
name="GLUCOSE_THRESHOLD",
intensity="subtle",
rhythm="steady",
duration=3,
pattern=[0.3, 0.2, 0.3, 0.2, 0.3]
)
# Mode rappel de médicament - vibration modérée
patterns.configure_alert(
name="MEDICATION_REMINDER",
intensity="moderate",
rhythm="pulsing",
duration=5,
pattern=[0.7, 0.3, 0.7, 0.3, 0.7, 0.3, 0.7, 0.3, 0.7]
)
# Mode synchronisation terminée - vibration de confirmation
patterns.configure_alert(
name="SYNC_COMPLETE",
intensity="subtle",
rhythm="steady",
duration=2,
pattern=[0.5, 0.5, 0.5]
)
3. Configuration multi-mode avancée
Personnalisez les seuils de détection pour différents paramètres de santé et créez des patterns de vibration sophistiqués. Cette configuration avancée permet une adaptation fine selon vos besoins médicaux spécifiques.
# Configuration des seuils et déclencheurs
device.configure_thresholds({
"heart_rate": {
"normal_min": 60,
"normal_max": 100,
"alert_threshold": 120,
"emergency_threshold": 150
},
"glucose": {
"normal_min": 70,
"normal_max": 140,
"alert_threshold": 180,
"emergency_threshold": 250
},
"blood_pressure": {
"normal_systolic": 120,
"normal_diastolic": 80,
"alert_systolic": 140,
"alert_diastolic": 90
}
})
# Configuration des patterns de vibration selon les niveaux
vibration.set_intensity_levels({
"subtle": 0.2,
"moderate": 0.5,
"urgent": 0.8,
"emergency": 1.0
})
# Patterns de rythme personnalisés
vibration.set_rhythm_patterns({
"steady": lambda t: 0.5,
"pulsing": lambda t: 0.5 + 0.3 * math.sin(t * 2 * math.pi),
"escalating": lambda t: min(1.0, 0.2 + t * 0.1),
"morse": lambda t: 1.0 if morse_pattern[int(t * 10) % len(morse_pattern)] else 0.0
})
4. Gestion des erreurs et appairage
Configurez la connexion avec votre application mobile et implémentez une gestion robuste des erreurs. Le système utilise des vibrations spécifiques pour signaler différents types de problèmes techniques.
# Appairage avec l'application mobile
try:
device.pair_with_mobile(
device_name="Mon-Scanus-DIY",
encryption_key="scanus_secure_2024",
auto_connect=True
)
vibration.trigger_pattern("SYNC_COMPLETE")
print("📱 Appairage réussi !")
except ConnectionError as e:
vibration.trigger_pattern("CONNECTION_ERROR")
print(f"❌ Erreur de connexion: {e}")
# Gestion des erreurs de capteur
def handle_sensor_error(error_type, sensor_data):
if error_type == "CALIBRATION_NEEDED":
vibration.trigger_pattern("CALIBRATION_REQUIRED")
device.recalibrate_sensors()
elif error_type == "BATTERY_LOW":
vibration.trigger_pattern("BATTERY_WARNING")
device.enable_power_save_mode()
elif error_type == "SENSOR_MALFUNCTION":
vibration.trigger_pattern("HARDWARE_ERROR")
device.diagnose_sensors()
# Configuration des notifications en temps réel
device.set_notification_callback(handle_sensor_error)
5. Exemple d'utilisation complète
Voici un script complet qui combine tous les éléments précédents pour créer un système de monitoring de santé en temps réel. Ce code peut être utilisé comme base pour votre propre implémentation Scanus DIY.
# Script principal de monitoring
import time
from datetime import datetime
def main():
# Initialisation
device = ScanusDevice()
vibration = VibrationEngine()
patterns = NotificationPatterns()
# Configuration
device.bootstrap()
vibration.calibrate_sensitivity()
patterns.load_default_configs()
print("🏥 Scanus DIY démarré - Monitoring de santé actif")
# Boucle de monitoring
while True:
try:
# Lecture des capteurs
health_data = device.read_sensors()
# Analyse des données
alerts = device.analyze_health_data(health_data)
# Déclenchement des notifications
for alert in alerts:
pattern_name = alert['type'] + "_" + alert['severity'].upper()
vibration.trigger_pattern(pattern_name)
# Log de l'alerte
timestamp = datetime.now().strftime("%Y-%m-%d %H:%M:%S")
print(f"[{timestamp}] {alert['message']} - Pattern: {pattern_name}")
# Synchronisation avec le cloud
if device.is_connected():
device.sync_to_cloud(health_data)
vibration.trigger_pattern("SYNC_COMPLETE")
time.sleep(1) # Lecture toutes les secondes
except KeyboardInterrupt:
print("🛑 Arrêt du monitoring...")
vibration.trigger_pattern("SHUTDOWN")
break
except Exception as e:
print(f"❌ Erreur: {e}")
vibration.trigger_pattern("SYSTEM_ERROR")
if __name__ == "__main__":
main()
Prêt à construire votre Scanus ?
Téléchargez les plans, le code source et rejoignez la communauté DIY