?>

Hard Copy World

HCW

Tip and Tech

Home > Info >

Tip and Tech

[와두이노] 스마트 워치 소스 업로드 후 블루투스 통신이 안되는 문제

페이지 정보

작성자 하드카피 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 작성일15-02-07 18:36 조회3,692회 댓글2건

본문

와두이노에 Adafruit 라이브러리를 사용하는 아래 소스를 올리고 블루투스 통신이 안되는 문제가 발생하는 분은 아래와 같이 조치해주세요.

  • RetroWatchArduino_no_button 소스를 올리고 시계화면까지 정상적으로 나오는 상태
  • 하지만 폰에서 BT 연결 후 데이터 송신을 눌러도 워치쪽 업데이트가 되지 않음
  • ==>
  • RetroWatchArduino_u8glib_no_button 소스를 이용하세요!!
  • u8glib를 사용한 소스에서는 정상적으로 BT 연결 후 업데이트가 됩니다.
  • 소스에서 SoftwareSerial(8, 7); 로 변경했는지도 꼭 확인하세요!!

 

아두이노 Uno, Nano, Pro mini 보드에서는 발생하지 않는 문제입니다. 와두이노 보드에서 발생하는데.. 아무래도 메모리쪽 관련한 문제가 아닐까 추정(?)하고 있습니다. Adafruit 라이브러리 사용시에는 Serial 함수로 디버깅이 안되서 문제 잡기가 좀 난감하네요.

와두이노 보드 제작하면 u8glib 라이브러리용 코드도 만들었뒀는데... u8glib 소스라도 동작해서 다행이네요.

 


하드카피 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물

모든 전통이 한 때는 오해를 면치 못했다. 마찬가지로 모든 아이디어는 한 때는 비웃음을 면치 못했다. -홀브룩 잭슨 ::::: 느닷없이 떠오르는 생각이 가장 귀중한 것이며, 보관해야할 가치가 있는 것이다. -베이컨 ::::: 미리 숙고하면 힘든 일도 그저 실행에 옮기는 순간 쉬워진다. - 로버트 M. 피어식

댓글목록

radi님의 댓글

radi 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 작성일

Adafruit 라이브러리 사용시 데이터동기화가 안됐던 문제를 찾은거같습니다.

RetroWatchArduino_spi_no_button.ino 소스의 핀설정 부분에서
#define OLED_RESET 8
이렇게 썼었습니다. 와두이노의 8번핀이 RESET핀이라서 그렇게 쓰면 될거라고 생각했는데 아니었습니다...
(u8glib와 소스코드를 비교해보니 RESET이 9번핀으로 할당되있더군요.)

제가 핀설정에 대한 지식이 없어서 격었던 고생인거같습니다...

결론:  Adafruit라이브러리 사용할때 RESET핀 설정부분을 다음과같이 9로 할당한다. (spi oled,,와두이노 rev.2에 해당)
//----- OLED instance
// If using software SPI (the default case):
#define OLED_MOSI  11  // D1
#define OLED_CLK  13    // D0
#define OLED_DC    3    // DC
#define OLED_CS    2    // CS
#define OLED_RESET 9    // RES
Adafruit_SSD1306 display(OLED_MOSI, OLED_CLK, OLED_DC, OLED_RESET, OLED_CS);

하드카피님의 댓글

하드카피 쪽지보내기 메일보내기 자기소개 아이디로 검색 전체게시물 댓글의 댓글 작성일

헛.. 의외로 문제는 간단한 곳에 있었네요.. 지금보니 Reset 핀이 블루투스 serial 통신용 핀과 겹치네요. 제가 주로 쓰는 I2C-4핀 OLED에는 reset 핀이 없어 생각도 못하고 있었습니다.
GitHub 에 올라간 소스를 업데이트 해두겠습니다. 조언 감사합니다~