본문으로 건너뛰기

· 약 2분
Lee Dongeun

IOSignal이 version 2.0.0로 업데이트 되었습니다.

V2.0.0 업그레이드

  • setClient() deprecated(제거됨)
  • begin() 로 대체됨
  • 구현 코드 간소화

V1.x.x

  • main()에 ESP WiFi 연결상태 검사후 재접속 코드 사용됨
  • main()에 server 연결직접 검사후 재접속 코드 사용됨

WiFiClient client;
IOSignal io;

void setup(){
...
io.setClient( &client );
...
}


void loop(){
...
// sever connection checker
if( !client.connected() ){
client.connect( host, port);
}

...
// WiFi connection checker
if( WiFi.status() != WL_CONNECTED ){
// Serial.println("WiFi disconnected.");
if( wifiMulti.run() == WL_CONNECTED ){
Serial.println("WiFi connected.");
}else{
delay(2000);
}
}
}

v2.x.x

서버 접속 관리 기능이 내장되어 사용자 구현이 불필요합니다. 더불어 ESP WiFi 는 자동 재접속 기능이 제공되므로 해당 코드도 생략되었습니다. 단, 구형 WiFi Shield 등 예외적인 경우 추가요함

  • ESP WiFi 접속은 setup에서 1회 실행
  • server 접속상태 확인 및 재접속 생략 가능
  • io.update() 리턴코드가 0일경우 서버 정상 소통 가능한 상태입니다.

WiFiClient client;
IOSignal io;

void setup(){
WiFi.begin(mac); // or WiFiMulti.run(...);
...
io.begin( &client, host, port );
}

void loop(){

uint8_t conditionCode = io.update();
if(conditionCode == 0 ){
// 통신 가능 상태
checkUserButton();
io.signal( tag, msg);
}else{
// 통신불가 상태
// 사유. WiFi끊김, Server 끊김, 패킷 오류, 오버플로우 등
// 일시적 오류인경우 자동으로 복구됩니다.
}
}

· 약 1분
Lee Dongeun

공식 웹사이트 개설과 함께 라이브러리 이름을 RemoteSigna 에서 IO시그널(IOSignal)로 변경하였습니다.

new library names

  • js library(npm): remote-signal => iosignal
  • js cli(npm) : remocon => iosignal-cli
  • arduino library: RemoteSignal => IOSignal

새로운 라이브러리 이름으로 사용 부탁드립니다.

IOSignal repositories.

  • Javascript: iosignal [ github | npm ]
    • Node.js server ( WS, CongSocket)
    • Node.js client ( WS, CongSocket)
    • Web Browser client( WebSocket)
  • Arduino client:
    • iosignal-arduino [ github ]
    • or use Arduino Library Manager: IOSignal
  • CLI program
    • iosignal-cli [ github | npm ]
    • install: npm i -g iosignal-cli
    • or sudo npm i -g iosignal-cli
    • support mac, linux and windows.
    • server and client