Show Posts
Pages: [1] 2 3
1  International / Français / Re: Configuration XN-RV WiFly dans le setup du Sketch Arduino on: April 28, 2014, 03:59:49 am
Oui et non...
J'ai du pour reussir activer le DEBUG de la librairie WiFly au niveau 2 ou plus (surement un pb de Timming...)
Pour cela j'ai du commenter quelques lignes car il y a des pb de compilation dans cette libraiirei WiFly....

Mais j'ai pas ete plus loin car je voulais ajouter snmp sur du Wifi et il semble que cela ne soit pas possible!

Je suis passé sur Raspberry... c'est nickel, les briques HW et SW sont beaucoup mieu séparé!
2  International / Français / Re: Configuration XN-RV WiFly dans le setup du Sketch Arduino on: March 08, 2014, 03:10:15 pm
Petite précision :-)
J'ai :
- Arduino UNO
- Wireless Proto Shield
- Module Roving Networks RN-XV Wifi
3  International / Français / Configuration XN-RV WiFly dans le setup du Sketch Arduino on: March 08, 2014, 03:08:55 pm
Bonjour
J'ai essayé de suivre le tuto :
http://forum.snootlab.com/viewtopic.php?f=38&t=706

pour la partie config du RN-XV par ligne de commande j'ai fini par réussir a avoir la connexion
Le ping de mon adresse IP fonctionne

Par contre quand je charge un sketch :
par exemple celui la
Code:
#include <SPI.h>
#include <WiFly.h>

void setup() {
  Serial.begin(9600);
  WiFly.setUart(&Serial);
 
  WiFly.begin();
 
  Serial.print("IP: ");
  Serial.println(WiFly.ip());
}

void loop() {

}

J'ai comme reponse dans le terminal :

Code:
$$$

ver
5 fois de suite et aucune info de l'adresse IP "Serial.println(WiFly.ip());"

PS : j'ai essayé avec le sketch qui fait le join ssid passphrase et ca donne pareil ..

Une idee ?

Merci
4  International / Français / Re: Soudure sur carte prototype on: February 07, 2014, 05:12:59 am
Ok merci pour toutes ces reponses.
J'aime bien l'idee de Carolyne
surtout que sur la plaque que j'ai c'est des micro pastilles donc je ne pense pas qu'il soit possible de faire la liaison entre 2 pastille sans un peu de fils

PS : ils sont tres beau vos circuit mais je prefaire quand meme les plaques a bandes ;-)
5  International / Français / Soudure sur carte prototype on: February 07, 2014, 04:36:13 am
Bonjour

Jusqu'a maintenant je faisait moi même mes "carte" shield en utilisant des plaques troué avec bande en cuivre.
Cf photo.
image 1

Je viens d'acheter un shield Wifi avec de la place pour faire quelques soudure mais c'est des pastilles rondes
Cf photo
image 2

Avec les bandes c'est simple il sufit de souder sur la meme bande pour avoir le contact.

Comment fait on proprement avec les pastilles ?

Merci
6  International / Français / Re: Commande à distance arduino on: January 16, 2014, 04:20:44 pm
moi au debut j'ai fait ca en python sur le pc
qui attaquait la liaision serie (USB) de l'Arduino.

Mais depuis je suis passé par un shield ethernet et snmp c'est carrement mieux ;-)
7  International / Français / Re: I/O Pin utilisés par le shield Ethernet on: January 16, 2014, 03:38:53 pm
Bon après initialisation des pin a la fin setup ca marche pas mieux...
j'oublie la pin 53 ;-)
8  International / Français / Re: I/O Pin utilisés par le shield Ethernet on: January 15, 2014, 10:28:01 am
Merci pour toutes ces explication
Je vais tester pour voir, sinon j'en prendrait une autre
Mais c'est pas pratique cette double rangé d'I/O collé ;-)
Dur a utiliser avec une plaque a souder, les pin sont tres proche...
9  International / Français / Re: I/O Pin utilisés par le shield Ethernet on: January 15, 2014, 07:19:59 am
Ok je vais essayer.
Quand tu dis apres l'initialisation du shield tu veux dire par exemple a la fin du setup ?

Je vais me documenter sur ce que c'est que "slave select de l'Atmega" ;-)

Merci
10  International / Français / I/O Pin utilisés par le shield Ethernet on: January 15, 2014, 05:14:29 am
Bonjour a tous.
J'utilise une carte Mega 2560 et dans la docs officiel ils disent que les ports 4 (SD) 10, 50, 51, 52 (Ethernet) sont réservé pour le shield Ethernet.
Sans parler du fait que 4 I/O resevé juste pour l'Ethernet c'est beaucoup ;-)
J'ai l'impression que le 53 est egalement utilisé.
Si je deplace le fil branché sur ma Pin 53 (un capteur DHT22) sur une pin inferieur a 50 ca se met a marcher...
Est ce normal ?
Quelqu'un a t'inl deja vu ca?
Ou est ce un autre pb ?

Merci
11  International / Français / Re: Pb avec Agentuino [Resolu] on: January 15, 2014, 05:09:57 am
C'est tout bon ca marche nickel sur la carte
Merci
12  International / Français / Re: Pb avec Agentuino on: January 09, 2014, 03:05:08 pm
Nickel ca marche
ca fait bizare d'avoire static char cons xxx   :-)
Y a plus qu'a voir si ca reste fonctionnel
En tout ca ca compile

Merci bcp
13  International / Français / Re: Pb avec Agentuino on: January 09, 2014, 02:16:01 pm
Sur Windows c'est la meme version la 1.0.5

Ci dessous le code trouvé sur le net de la dernière version de agentuino

Merci de votre aide

L'exemple fournit avec la librairie
Code:

#include <Streaming.h>         // Include the Streaming library
#include <Ethernet.h>          // Include the Ethernet library
#include <SPI.h>
#include <MemoryFree.h>
#include <Agentuino.h>
#include <Flash.h>
//
#define DEBUG
//
static byte mac[] = { 0xDE, 0xAD, 0xBE, 0xEF, 0xFE, 0xED };
static byte ip[] = { 192, 168, 2, 64 };
static byte gateway[] = { 192, 168, 2, 1 };
static byte subnet[] = { 255, 255, 255, 0 };
//
// tkmib - linux mib browser
//
static char sysDescr[] PROGMEM      = "1.3.6.1.2.1.1.1.0";  // read-only  (DisplayString)
// .iso.org.dod.internet.mgmt.mib-2.system.sysObjectID (.1.3.6.1.2.1.1.2)
static char sysObjectID[] PROGMEM   = "1.3.6.1.2.1.1.2.0";  // read-only  (ObjectIdentifier)
// .iso.org.dod.internet.mgmt.mib-2.system.sysUpTime (.1.3.6.1.2.1.1.3)
static char sysUpTime[] PROGMEM     = "1.3.6.1.2.1.1.3.0";  // read-only  (TimeTicks)
// .iso.org.dod.internet.mgmt.mib-2.system.sysContact (.1.3.6.1.2.1.1.4)
static char sysContact[] PROGMEM    = "1.3.6.1.2.1.1.4.0";  // read-write (DisplayString)
// .iso.org.dod.internet.mgmt.mib-2.system.sysName (.1.3.6.1.2.1.1.5)
static char sysName[] PROGMEM       = "1.3.6.1.2.1.1.5.0";  // read-write (DisplayString)
// .iso.org.dod.internet.mgmt.mib-2.system.sysLocation (.1.3.6.1.2.1.1.6)
static char sysLocation[] PROGMEM   = "1.3.6.1.2.1.1.6.0";  // read-write (DisplayString)
// .iso.org.dod.internet.mgmt.mib-2.system.sysServices (.1.3.6.1.2.1.1.7)
static char sysServices[] PROGMEM   = "1.3.6.1.2.1.1.7.0";  // read-only  (Integer)
//
// RFC1213 local values
static char locDescr[]              = "Agentuino, a light-weight SNMP Agent.";  // read-only (static)
static char locObjectID[]           = "1.3.6.1.3.2009.0";                       // read-only (static)
static uint32_t locUpTime           = 0;                                        // read-only (static)
static char locContact[20]          = "Eric Gionet";                            // should be stored/read from EEPROM - read/write (not done for simplicity)
static char locName[20]             = "Agentuino";                              // should be stored/read from EEPROM - read/write (not done for simplicity)
static char locLocation[20]         = "Nova Scotia, CA";                        // should be stored/read from EEPROM - read/write (not done for simplicity)
static int32_t locServices          = 7;                                        // read-only (static)

uint32_t prevMillis = millis();
char oid[SNMP_MAX_OID_LEN];
SNMP_API_STAT_CODES api_status;
SNMP_ERR_CODES status;

void pduReceived()
{
  SNMP_PDU pdu;
  //
  #ifdef DEBUG
    Serial << F("UDP Packet Received Start..") << F(" RAM:") << freeMemory() << endl;
  #endif
  //
  api_status = Agentuino.requestPdu(&pdu);
  //
  if ( pdu.type == SNMP_PDU_GET || pdu.type == SNMP_PDU_GET_NEXT || pdu.type == SNMP_PDU_SET
    && pdu.error == SNMP_ERR_NO_ERROR && api_status == SNMP_API_STAT_SUCCESS ) {
    //
    pdu.OID.toString(oid);
    //
    //Serial << "OID: " << oid << endl;
    //
    if ( strcmp_P(oid, sysDescr ) == 0 ) {
      // handle sysDescr (set/get) requests
      if ( pdu.type == SNMP_PDU_SET ) {
        // response packet from set-request - object is read-only
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = SNMP_ERR_READ_ONLY;
      } else {
        // response packet from get-request - locDescr
        status = pdu.VALUE.encode(SNMP_SYNTAX_OCTETS, locDescr);
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = status;
      }
      //
      #ifdef DEBUG
        Serial << F("sysDescr...") << locDescr << F(" ") << pdu.VALUE.size << endl;
      #endif
    } else if ( strcmp_P(oid, sysUpTime ) == 0 ) {
      // handle sysName (set/get) requests
      if ( pdu.type == SNMP_PDU_SET ) {
        // response packet from set-request - object is read-only
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = SNMP_ERR_READ_ONLY;
      } else {
        // response packet from get-request - locUpTime
        status = pdu.VALUE.encode(SNMP_SYNTAX_TIME_TICKS, locUpTime);
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = status;
      }
      //
      #ifdef DEBUG
        Serial << F("sysUpTime...") << locUpTime << F(" ") << pdu.VALUE.size << endl;
      #endif
    } else if ( strcmp_P(oid, sysName ) == 0 ) {
      // handle sysName (set/get) requests
      if ( pdu.type == SNMP_PDU_SET ) {
        // response packet from set-request - object is read/write
        status = pdu.VALUE.decode(locName, strlen(locName));
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = status;
      } else {
        // response packet from get-request - locName
        status = pdu.VALUE.encode(SNMP_SYNTAX_OCTETS, locName);
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = status;
      }
      //
      #ifdef DEBUG
        Serial << F("sysName...") << locName << F(" ") << pdu.VALUE.size << endl;
      #endif
    } else if ( strcmp_P(oid, sysContact ) == 0 ) {
      // handle sysContact (set/get) requests
      if ( pdu.type == SNMP_PDU_SET ) {
        // response packet from set-request - object is read/write
        status = pdu.VALUE.decode(locContact, strlen(locContact));
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = status;
      } else {
        // response packet from get-request - locContact
        status = pdu.VALUE.encode(SNMP_SYNTAX_OCTETS, locContact);
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = status;
      }
      //
      #ifdef DEBUG
        Serial << F("sysContact...") << locContact << F(" ") << pdu.VALUE.size << endl;
      #endif
    } else if ( strcmp_P(oid, sysLocation ) == 0 ) {
      // handle sysLocation (set/get) requests
      if ( pdu.type == SNMP_PDU_SET ) {
        // response packet from set-request - object is read/write
        status = pdu.VALUE.decode(locLocation, strlen(locLocation));
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = status;
      } else {
        // response packet from get-request - locLocation
        status = pdu.VALUE.encode(SNMP_SYNTAX_OCTETS, locLocation);
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = status;
      }
      //
      #ifdef DEBUG
        Serial << F("sysLocation...") << locLocation << F(" ") << pdu.VALUE.size << endl;
      #endif
    } else if ( strcmp_P(oid, sysServices) == 0 ) {
      // handle sysServices (set/get) requests
      if ( pdu.type == SNMP_PDU_SET ) {
        // response packet from set-request - object is read-only
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = SNMP_ERR_READ_ONLY;
      } else {
        // response packet from get-request - locServices
        status = pdu.VALUE.encode(SNMP_SYNTAX_INT, locServices);
        pdu.type = SNMP_PDU_RESPONSE;
        pdu.error = status;
      }
      //
      #ifdef DEBUG
        Serial << F("locServices...") << locServices << F(" ") << pdu.VALUE.size << endl;
      #endif
    } else {
      // oid does not exist
      //
      // response packet - object not found
      pdu.type = SNMP_PDU_RESPONSE;
      pdu.error = SNMP_ERR_NO_SUCH_NAME;
    }
    //
    Agentuino.responsePdu(&pdu);
  }
  //
  Agentuino.freePdu(&pdu);
  //
  //Serial << "UDP Packet Received End.." << " RAM:" << freeMemory() << endl;
}

void setup()
{
  Serial.begin(9600);
  Ethernet.begin(mac, ip);
  //
  api_status = Agentuino.begin();
  //
  if ( api_status == SNMP_API_STAT_SUCCESS ) {
    //
    Agentuino.onPduReceive(pduReceived);
    //
    delay(10);
    //
    Serial << F("SNMP Agent Initalized...") << endl;
    //
    return;
  }
  //
  delay(10);
  //
  Serial << F("SNMP Agent Initalization Problem...") << status << endl;
}

void loop()
{
  // listen/handle for incoming SNMP requests
  Agentuino.listen();
  //
  // sysUpTime - The time (in hundredths of a second) since
  // the network management portion of the system was last
  // re-initialized.
  if ( millis() - prevMillis > 1000 ) {
    // increment previous milliseconds
    prevMillis += 1000;
    //
    // increment up-time counter
    locUpTime += 100;
  }
}
14  International / Français / Re: Pb avec Agentuino on: January 09, 2014, 01:55:04 am
Oui j'utilise la 1.0.5
mais c'est la derniere librairie uptodate que j'ai prise

Je ne sais pas si c'est lié mais sur un pc windows ca passait sans pb (je suis sur linux...)
15  International / Français / Pb avec Agentuino [Resolu] on: January 08, 2014, 04:45:51 pm
Bonjour

Je souhaite utiliser la librairie agentuino pour le snmp.
Mais apres instalation de celle ci quand je tente de compiler l'exemple j'ai :
Quote
Agent.pde:32:24: error: variable ‘sysDescr’ must be const in order to be put into read-only section by means of ‘__attribute__((progmem))’
Agent.pde:34:27: error: variable ‘sysObjectID’ must be const in order to be put into read-only section by means of ‘__attribute__((progmem))’
Agent.pde:36:25: error: variable ‘sysUpTime’ must be const in order to be put into read-only section by means of ‘__attribute__((progmem))’
Agent.pde:38:26: error: variable ‘sysContact’ must be const in order to be put into read-only section by means of ‘__attribute__((progmem))’
Agent.pde:40:23: error: variable ‘sysName’ must be const in order to be put into read-only section by means of ‘__attribute__((progmem))’
Agent.pde:42:27: error: variable ‘sysLocation’ must be const in order to be put into read-only section by means of ‘__attribute__((progmem))’
Agent.pde:44:27: error: variable ‘sysServices’ must be const in order to be put into read-only section by means of ‘__attribute__((progmem))’

Si quelqu'un a une idee?

Merci
Pages: [1] 2 3