NetLink for GameBuino

By ddrmax, 1 year ago

Petit Teaser

  • Avec une vitesse de 250 kbits/s a 2Mbits/s on pourrait faire du realtime (check des buffers de réception a chaque frame)
  • Avec l'utilisation de maxi 6 canaux, on peut faire un Multi a 6 joueurs (tour par tour et "pseudo realtime") ou trois joueurs (realtime) via une vraie communication bi-directionnelle
  • si j'arrive a faire une communication sans overhead (par exemple garder quel joueur est sur quel canal), vous avez la possibilité d'utiliser 32 octets (avec un overhead on serait du genre entre 16 et 20 octets
  • Pas besoin de forcer le CPU a faire de gros checks de perte de packets (en configurant bien la puce NRF24 s'en occupe)
  • Mode de Téléchargement (DS et 3DS Like)?


But:

Une librairie de multijoueur pour les jeux Gamebuino pour un multijoueur sans fil.

Mon but final est de vous fournir:

  • Une librairie qui:
    • est rapide
    • impacte un minimum les performances
    • facile a utiliser
    • complète
    • supporter 2+ connexions entre gamebuino (3 voir 6 joueurs)
    • permettre aux apps et jeux de fonctionner même si le NRF24L01 n'est pas connecté
  • Un Hardware qui:
    • est peu onéreux
    • facile a dupliquer
    • plug and play (Sur le BackPack)

Mon materiel:

Plein d'arduino nano (10+)

Plein de NRF24L01(des versions + normalement)

Une Gamebuino (et prochainement une seconde pour tests en condition réelles)


Librairie:

Convention d'appel: Link.fonction();

exemples de fonctions:

Link.SetServer(nbPlayers); //Pour l'hôte Multijoueur
Link.SearchServer(timeout);//Pour les Clients
Link.Player{X}//classe joueur contenant les données spécifiques de chaque joueur
Link.SendData(Data);


Petites informations importantes

datasheet:https://www.sparkfun.com/datasheets/Components/SMD/nRF24L01Pluss_Preliminary_Product_Specification_v1_0.pdf

APERÇU branchement:







Voila pour le moment :)