IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Raspberry Pi Discussion :

Librairie Pcap


Sujet :

Raspberry Pi

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Femme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Février 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2014
    Messages : 28
    Par défaut Librairie Pcap
    Bonjour,

    J'ai un problème d'utilisation de cette librairie sur Raspberry..

    Je suis effectivement obliger d'utiliser Pcap pour envoyer des trames complètement designé par mes soins, à une carte (made in china) qui ne fait que "boire" la data sur le réseau. Ce sont en faite des images que j'envois, et pas des grosses (48ko), à raison de 24 par secondes.

    Alors voilà, j'ai développé un petit programme de test sur Qt, qui utilisant Pcap envois les paquets via ethernet à cette fameuse carte, sur PC, que ce soit sous linux ou windows, pas de problème tout fonctionne, les paquets sont envoyé à la bonne vitesse, dans le bon ordre, bonne forme, etc.. Arrivé sur raspberry, un problème de taille survient, l'envois de la data se fait, à la bonne vitesse, mais aléatoirement, une partis des paquets est perdu. Certains paquets arrivent complet, tandis que d'autres non. Chaque images étant composé de 98 paquets, de 501 octets chacun. Et donc, selon les images, l'envois s'interrompt au paquet 56, ou bien 61, ou tout autres...

    Voilà, je suis vraiment coincé pour le coup la ! Toute aide serait la bienvenue !

    Je peux mettre le code à disposition si cela peut aider.

    Merci d'avance !

  2. #2
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 253
    Par défaut
    Salut,
    Si je résume, ton programme fonctionne bien entre un PC et ta carte chinoise mais ce même programme ne fonctionne plus bien entre un Raspberry et la carte chinoise.

    C'est bien ça ou j'ai rien compris ?

    Si oui, as tu le moyen de faire le test suivant :
    Sur le PC faire un petit soft pour voir les trames ethernet et connecter le Raspberry au PC. Le but étant de simuler la carte chinoise avec le PC et de voir si des paquets on été perdu.

    Si ça marche bien, aucun paquet n'est perdu entre le Raspberry et le PC (qui ne fait que émuler de manière basique la carte ma de in china) alors le soucis ne vient pas du Raspberry et il faut creuser dans la communication.

    Si le PC ne reçoit pas toutes les trames alors c'est que le soucis vient bien de Raspberry.

    Mais peut être as tu déjà fait ce simple test ?

  3. #3
    Membre averti
    Femme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Février 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2014
    Messages : 28
    Par défaut
    Bonjour !

    Oui c'est ca tu as parfaitement compris.

    J'ai déjà fait ce test en utilisant wireshark, qui me permet de visualiser en direct les paquets transmis, (wireshark fonctionne sur raspberry). Sur PC, tout les paquets sont transmis en totalité, alors qu'avec le raspberry, une partie d'entre eux, aléatoirement, ne sont pas transmis en entier.

    Je ne pense pas que le problème vienne de la puissance du raspberry, car j'ai mis un Delta temps très élevé entre l'envois des paquets pour être sur du problème, et un paquet met à peu près 30ms pour être envoyer, avec un delta de 100ms je suis largement au dessus. Et lorsque le paquets est coupé, le raspberry ne fait plus rien jusqu-au début de l'envois suivant.

    Le coude source ou les view wireshark sont dispo si besoin pour comprendre.

  4. #4
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 253
    Par défaut
    Sacrément bizarre comme problème.....
    Ton appareil chinois est alimenté comment ? Sur le secteur ? Y a t'il une terre dessus ou bien c'est un petit transfo secteur sans terre ?

    Tu as une longue distance entre le Raspberry et l'appareil en question ?

    Lorsque 2 appareils communiquent ensemble il faut une référence commune (masse commune) et si je ne m'abuse un câble réseau ne transporte pas de masse dans son câblage ?

  5. #5
    Membre averti
    Femme Profil pro
    Ingénieur développement matériel électronique
    Inscrit en
    Février 2014
    Messages
    28
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Âge : 33
    Localisation : France, Bouches du Rhône (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Ingénieur développement matériel électronique
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Février 2014
    Messages : 28
    Par défaut
    Le raspberry est destiné à être collé à cette carte, et c'est vrai que je n'avais pas pensé à la masse commune..
    Pour l'instant en "mode test", j'utilise un câble ethernet d'un mètre à peu prêt.

    La carte est alimentée par un transfo connecté à la terre.

    Mais je ne pense pas qu'il faille dans des communications ethernet une masse commune, sinon toute les communications faite avec ethernet deviendrait compliqué non ? :p

  6. #6
    Modérateur

    Avatar de Vincent PETIT
    Homme Profil pro
    Consultant en Systèmes Embarqués
    Inscrit en
    Avril 2002
    Messages
    3 253
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Consultant en Systèmes Embarqués
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Avril 2002
    Messages : 3 253
    Par défaut
    Ce qui me dérange dans cette histoire (c'est la même chose qui me dérangeait lorsque je développais des appareils électroniques sans masse) c'est justement que le Raspberry n'a pas la même référence que ton appareil sur le secteur. Bien que la couche physique Ethernet soit prévu pour palier à ce genre de soucis, le problème que tu décrits ressemble vachement fort à deux appareils n'ayant pas les mêmes références et ça déconne de temps en temps.

    Je ne pense pas que le soucis vienne du soft, on dirait un soucis du hard.

    Sur ton raspberry tu n'as pas de masse ni de terre alors que sur ton appareil chinois tu les as. Le rôle de la masse et de protéger des perturbations mais aussi de chemin de retour d'une perturbation vers sa source (je te confirme qu'il existe bel et bien des câbles réseau blindés). Le rôle de la terre est d'assurer la sécurité.

    Je suppose que tu n'as pas accès à l'intérieur de ton appareil ? Pas moyen d'avoir une réf commune ?

Discussions similaires

  1. aide pour telecharger librairie pcap.lib
    Par darkmen11 dans le forum Bibliothèques
    Réponses: 3
    Dernier message: 11/05/2009, 21h07
  2. inclure une librairie *.lib
    Par darkbm dans le forum C
    Réponses: 2
    Dernier message: 16/12/2002, 22h48
  3. Réponses: 5
    Dernier message: 09/12/2002, 22h23
  4. [GTK]PB Librairie GTK+ sous dev-c++
    Par wozzy dans le forum Dev-C++
    Réponses: 15
    Dernier message: 05/11/2002, 14h55
  5. compatibilité des librairies directX8
    Par Freakazoid dans le forum DirectX
    Réponses: 3
    Dernier message: 23/05/2002, 21h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo