Blitz Society

Espace Client

Proposition commerciale Blitz Society × DGT

Mot de passe incorrect

Diagonall × Blitz Society
  • Contexte
  • Solution
  • Parcours
  • Architecture
  • Planning
  • Proposition

Proposition Commerciale

Projet Table Connectée

Table d'Échecs Blitz Society × DGT Inside

Application embarquée pour table d'échecs connectée. Enregistrez vos parties en un clic et récupérez le PGN instantanément via une expérience ultra simple.

Application Embarquée Complète

3 boutons, 1 expérience fluide : START → STOP → EXPORT
Détection coups automatique • Export PGN via QR code • Interface tactile intuitive
Livraison en 5 semaines

Voir le détail de la proposition

Contexte & Enjeux

Créer une expérience d'enregistrement de parties simple et mémorable

Le projet Blitz Society × DGT Inside

Blitz Society est un lieu parisien dédié aux échecs, pensé comme un réseau social physique autour du jeu. DGT (Digital Game Technology) est le leader mondial des échiquiers électroniques utilisés en compétition officielle.

L'objectif est de concevoir une table autonome permettant d'enregistrer simplement une partie jouée sur un échiquier DGT et de récupérer le PGN via une expérience volontairement simple et intuitive (START, STOP, EXPORT), sans logique tournoi.

Objectifs du projet

3
Boutons seulement
<2s
Temps de réaction
100%
Coups détectés
PGN
Export standard

1. Détection fiable des coups

Lecture en temps réel des mouvements sur l'échiquier DGT, gestion des cas spéciaux (roque, en passant, promotion), validation de la légalité des coups.

2. Interface grand public

L'utilisateur final n'est pas un arbitre FFE. L'interface doit être évidente, sans formation nécessaire. 3 boutons maximum.

3. Export PGN accessible

Le joueur doit pouvoir récupérer sa partie sur son téléphone en quelques secondes, sans compte utilisateur ni configuration.

4. Robustesse hardware

L'application tourne sur Raspberry Pi embarqué dans la table. Elle doit gérer les déconnexions, redémarrages, et fonctionner 24/7.

5. Intégration DGT

Utilisation des SDK et protocoles DGT avec le support technique direct de l'équipe DGT. Compatibilité e-Board USB et Bluetooth.

6. Équipe pluridisciplinaire

Coordination avec le spécialiste IoT (hardware), l'arbitre FFE (expertise métier), et le support DGT (protocoles).

La Solution Technique

4 modules pour une expérience fluide de bout en bout

1

Module Connexion DGT

Détection et connexion automatique à l'échiquier DGT via USB ou Bluetooth.

  • Auto-détection du port série (/dev/ttyACM*)
  • Support USB et Bluetooth DGT
  • Reconnexion automatique si déconnexion
  • Affichage statut connexion en temps réel
  • Logs techniques pour debug
2

Module Logique Échecs

Détection des coups, validation et génération du fichier PGN standard.

  • Détection coups en temps réel (event-driven)
  • Validation légalité des mouvements
  • Gestion du roque (O-O, O-O-O)
  • Gestion de la prise en passant
  • Gestion des promotions (Dame par défaut)
  • Horodatage de chaque coup
  • Génération PGN avec métadonnées
3

Module Interface Tactile

Interface utilisateur minimaliste sur écran tactile embarqué.

  • Écran d'accueil avec statut connexion
  • Bouton START (initialise la partie)
  • Affichage position en temps réel
  • Bouton STOP (finalise l'enregistrement)
  • Animations et feedback visuels
  • Design adapté écran 7-10 pouces
  • Zones tactiles larges et confortables
4

Module Export PGN

Récupération de la partie via QR code scannable sur mobile.

  • Génération QR code instantanée
  • PGN encodé dans le QR (parties courtes)
  • Lien vers fichier PGN (parties longues)
  • Compatible iOS et Android
  • Export USB optionnel (clé USB)
  • Bouton "Nouvelle partie" pour recommencer

Parcours Utilisateur

Du début de partie à l'export PGN, un parcours fluide en 6 étapes

Les 6 étapes du parcours joueur

1
Les joueurs s'installent

Ils placent les pièces sur l'échiquier DGT intégré à la table

2
Appui sur START

L'écran tactile confirme la position initiale et démarre l'enregistrement

3
Partie en cours

Chaque coup est détecté et affiché en temps réel sur l'écran

4
Appui sur STOP

Fin de partie (victoire, nulle, abandon...). Le PGN est généré

5
QR Code affiché

Un QR code apparaît pour scanner et récupérer le PGN sur mobile

6
Nouvelle partie

Un bouton permet de remettre l'écran en état initial pour la prochaine partie

User Stories détaillées

Joueur Blitz Society

Démarrer une partie enregistrée

En tant que joueur, je veux pouvoir appuyer sur START après avoir placé mes pièces, afin de commencer une partie dont tous les coups seront enregistrés automatiquement.

Joueur Blitz Society

Voir mes coups en temps réel

En tant que joueur, je veux voir sur l'écran la liste des coups joués pendant la partie, afin de vérifier que l'enregistrement fonctionne correctement.

Joueur Blitz Society

Récupérer ma partie sur mon téléphone

En tant que joueur, je veux scanner un QR code à la fin de la partie, afin de récupérer le fichier PGN sur mon téléphone sans créer de compte.

Staff Blitz Society

Redémarrer la table facilement

En tant que staff, je veux pouvoir redémarrer l'application sans intervention technique, afin de résoudre un problème éventuel rapidement.

Staff Blitz Society

Voir le statut de connexion

En tant que staff, je veux voir clairement si l'échiquier DGT est bien connecté, afin de savoir si la table est opérationnelle.

Équipe Technique

Accéder aux logs de debug

En tant que technicien, je veux pouvoir accéder aux logs système, afin de diagnostiquer un problème de connexion ou de détection.

Architecture Technique

Une solution embarquée robuste et évolutive

Schéma fonctionnel

┌─────────────────────────────────────────────────────────────────────────────┐ │ TABLE BLITZ SOCIETY │ ├─────────────────────────────────────────────────────────────────────────────┤ │ │ │ ┌───────────────┐ │ │ │ │ │ │ │ ÉCHIQUIER │───── USB/Bluetooth ─────┐ │ │ │ DGT e-Board │ │ │ │ │ │ ▼ │ │ └───────────────┘ ┌─────────────────────┐ │ │ │ │ │ │ │ RASPBERRY PI 4 │ │ │ │ ───────────── │ │ │ │ • Python 3.10+ │ │ │ │ • asyncdgt SDK │ │ │ │ • python-chess │ │ │ ┌───────────────┐ │ • PyQt6/Kivy │ │ │ │ │ │ │ │ │ │ ÉCRAN │◀─── HDMI ────│ Application │ │ │ │ TACTILE │ │ Embarquée │ │ │ │ 7-10" │──── Touch ──▶│ │ │ │ │ │ └──────────┬──────────┘ │ │ └───────────────┘ │ │ │ ▼ │ │ ┌─────────────────────┐ │ │ │ EXPORT PGN │ │ │ │ ───────── │ │ │ │ • QR Code │ │ │ │ • USB (optionnel) │ │ │ └─────────────────────┘ │ │ │ └─────────────────────────────────────────────────────────────────────────────┘

Stack Technique

Langage & Runtime

  • Python 3.10+
  • asyncio (programmation asynchrone)
  • pyee (event handling)
  • systemd (service auto-start)

SDK & Librairies DGT

  • python-asyncdgt (connexion échiquier)
  • python-chess (logique échecs)
  • pyserial (communication série)
  • Support technique DGT

Interface Utilisateur

  • PyQt6 ou Kivy (UI tactile)
  • Design responsive 7-10"
  • Animations fluides
  • Mode plein écran

Export & QR

  • qrcode (génération QR)
  • PGN standard avec métadonnées
  • Horodatage des coups
  • Export USB optionnel

Flux de données détaillé

┌────────────┐ Position ┌────────────────┐ Coup validé ┌───────────────┐ │ │ détectée │ │ + horodatage │ │ │ DGT SDK │ ─────────────▶ │ Moteur Chess │ ────────────────▶ │ Liste Coups │ │ asyncdgt │ │ python-chess │ │ + PGN │ │ │ │ │ │ │ └────────────┘ └────────────────┘ └───────┬───────┘ │ ┌────────────────┐ │ │ │ │ │ Interface UI │ ◀────────────────────────┘ │ PyQt6/Kivy │ │ │ Affichage temps réel └────────┬───────┘ │ │ Bouton STOP ▼ ┌────────────────┐ Scan mobile ┌───────────────┐ │ │ │ │ │ QR Generator │ ────────────────▶ │ Fichier PGN │ │ qrcode lib │ │ sur mobile │ │ │ │ │ └────────────────┘ └───────────────┘

États de l'application

┌─────────────┐ │ │ ┌───────────▶│ IDLE │◀──────────────────┐ │ │ (Attente) │ │ │ └──────┬──────┘ │ │ │ │ │ │ Bouton START │ │ ▼ │ │ ┌─────────────┐ │ │ │ │ │ │ │ PLAYING │ │ Bouton │ │ (En cours) │ │ "Nouvelle partie" │ │ │ │ │ └──────┬──────┘ │ │ │ │ │ │ Bouton STOP │ │ ▼ │ │ ┌─────────────┐ │ │ │ │ │ │ │ ENDED │───────────────────┘ │ │ (Terminé) │ │ │ │ │ └──────┬──────┘ │ │ │ │ QR Code affiché │ ▼ │ ┌─────────────┐ │ │ │ └────────────│ EXPORT │ │ (Export) │ │ │ └─────────────┘

Format PGN généré

[Event "Blitz Society - Table 1"] [Site "Paris, France"] [Date "2026.01.28"] [Round "-"] [White "Joueur Blanc"] [Black "Joueur Noir"] [Result "*"] [TimeControl "-"] 1. e4 {0:00:02} e5 {0:00:03} 2. Nf3 {0:00:01} Nc6 {0:00:04} 3. Bb5 {0:00:02} a6 {0:00:05} 4. Ba4 {0:00:01} Nf6 {0:00:02} 5. O-O {0:00:03} *

Planning du Projet

Livraison complète en 5 semaines

Semaine 1

Setup & Prototype

Configuration environnement Raspberry Pi, installation des librairies DGT, premiers tests de connexion échiquier, prototype d'interface basique.

Semaine 2

Logique Métier Échecs

Détection des coups en temps réel, validation de légalité, gestion du roque (O-O, O-O-O), prise en passant, promotions. Génération PGN avec horodatage.

Semaine 3

Interface Tactile

Développement de l'UI complète : écran d'accueil, affichage partie en cours, écran fin de partie. Animations, feedback visuels, design grand public.

Semaine 4

Export PGN & QR Code

Génération de QR codes, tests de scan sur iOS et Android, export USB optionnel. Optimisation de la taille du QR selon la longueur de partie.

Semaine 5

Tests & Livraison

Tests de robustesse (déconnexions, redémarrages), tests de parties complètes, gestion des erreurs. Documentation technique et guide utilisateur. Passation avec l'équipe.

Proposition Commerciale

Un forfait complet pour votre table d'échecs connectée

Forfait Application Embarquée

Développement Complet

8 500 €

10 200 € TTC

Application Python complète • Interface tactile • Connexion DGT • Export QR
Documentation • Formation • 5 semaines de développement

Détail par phase

Phase Description Jours Montant
Phase 1 Setup & Prototype (config Pi, connexion DGT) 2.5 j 1 287 €
Phase 2 Logique Métier (détection coups, cas spéciaux, PGN) 4.5 j 2 318 €
Phase 3 Interface Utilisateur (UI tactile, animations) 4 j 2 060 €
Phase 4 Export PGN (QR code, tests mobile) 2 j 1 030 €
Phase 5 Robustesse & Tests (gestion erreurs, edge cases) 2.5 j 1 288 €
Phase 6 Documentation & Livraison 1 j 515 €
TOTAL 16.5 j 8 500 € HT

Ce qui est inclus

Application Code source Python complet, testé et documenté Inclus
Connexion DGT Support USB et Bluetooth, reconnexion auto Inclus
Logique échecs Tous les cas spéciaux (roque, en passant, promotion) Inclus
Interface tactile UI complète Start/Stop/Export avec animations Inclus
Export PGN QR code scannable sur iOS/Android Inclus
Documentation Guide technique + guide utilisateur + déploiement Inclus
Formation Session de passation avec l'équipe (1h) Inclus
Garantie 30 jours de support et corrections bugs Inclus

Modalités de paiement

40%

3 400 €

4 080 € TTC

À la signature

30%

2 550 €

3 060 € TTC

À mi-projet (S3)

30%

2 550 €

3 060 € TTC

À la livraison

Hors périmètre (exclusions)

❌ Achat matériel (Raspberry Pi, écran) Fourni par le client
❌ Design hardware de la table Pris en charge par l'équipe IoT

Garantie et propriété intellectuelle

  • Garantie 30 jours : corrections de bugs bloquants après livraison
  • Code source : propriété exclusive de Blitz Society à la livraison
  • Librairies tierces : restent sous leurs licences respectives (MIT/GPL)
  • Support email : 2 semaines après livraison

Prérequis Matériel (à fournir par le client)

Équipement Spécification Responsable
Raspberry Pi Pi 4 ou Pi 5, 4GB RAM minimum Équipe IoT
Écran tactile 7-10 pouces, compatible Raspberry Pi Équipe IoT
Échiquier DGT e-Board USB ou Bluetooth Blitz Society
Carte SD 32GB+ classe 10 Équipe IoT
Alimentation USB-C 5V/3A pour Raspberry Pi Équipe IoT

Dan Lellouche

Email : dan@diagonall.fr

Site : www.diagonall.fr

Proposition valide 30 jours • Janvier 2026
© 2026 DIAGONALL - Votre partenaire innovation tech