Siffox를 통해 데이터를 보내려는 Arduino Uno를 얻으려고합니다. Arduino (요리 해킹) 용 Libelium Xbee Shield 및 Sigfox 모듈 사용. Arduino 라이브러리에있는 예제를 사용하여 문자열을 보내려고했습니다. 아두 이노 스케치은 간단 Sigfox 모듈과 기판 사이Arduino shield에서 Sigfox UART를 켤 수 없습니다.
AT
Sigfox Switch ON -> FAILED
AT$SF=000102030405060708090A0B
Sigfox sending -> FAILED
연결 Sigfox.getID()가 작동하기 때문에, OK 보인다 :
#include <Wire.h>
// Cooking API libraries
#include <arduinoClasses.h>
#include <arduinoUART.h>
#include <arduinoUtils.h>
#include <arduinoSigfox.h>
// Pin definition for Sigfox module error LED:
const int error_led = 13;
//////////////////////////////////////////////
uint8_t socket = SOCKET0; //Asign to UART0
//////////////////////////////////////////////
uint8_t error;
void setup()
{
Serial.begin(9600);
pinMode(error_led, OUTPUT);
//////////////////////////////////////////////
// 1. switch on
//////////////////////////////////////////////
error = Sigfox.ON(socket);
// Check status
if(error == 0)
{
//"Switch ON OK"
digitalWrite(error_led, LOW);
Serial.println("Sigfox Switch ON -> SUCCES");
}
else
{
//"Switch ON ERROR"
digitalWrite(error_led, HIGH);
Serial.println("Switch Switch ON -> FAILED");
}
//////////////////////////////////////////////
// 2. send data
//////////////////////////////////////////////
// Send 12 bytes at most
error = Sigfox.send("000102030405060708090A0B");
// Check sending status
if(error == 0)
{
//"Sigfox sending -> SUCCES"
digitalWrite(error_led, LOW);
Serial.println("Sigfox sending -> FAILED");
}
else
{
//"Sigfox packet sent ERROR"
digitalWrite(error_led, LOW);
Serial.println("Sigfox packet sent ERROR");
}
}
void loop()
{
//////////////////////////////////////////////
// 3. sleep
//////////////////////////////////////////////
}
시리얼 포트에 출력 다음은 , 올바른 ID가 검색됩니다. 또한 Sigfox 플랫폼에서 장치를 구독해도 괜찮은 것 같습니다.
어떻게 디버깅 할 수 있습니까? 나는 진단을 시작하는 방법을 모른다 : 도서관에있는 무엇인가? 보내는 중 뭔가? 하드웨어에 뭔가 있는거야? 이것에 대한 모든 도움을 주시면 감사하겠습니다.
도움 주셔서 감사합니다. 아래의 내 솔루션을 참조하십시오. 귀하의 대답은 왜 원래 설정이 작동하지 않았는지 설명합니다 : Sigfox와 직렬 케이블이 직렬 포트에 대해 경쟁하고 있습니다. –