스마트워치 DIY 하기
스마트워치가 인기를 끈건 페블이 첫번째 제품을 출시했을 때 부터라고 볼 수 있습니다. 지금은 추억속으로 사라졌지만 이후 많은 기업이 스마트워치를 출시하고 있는데요.
애플와치처럼 비싸고 고급진 스마트워치도 있지만, 개발자라면 자신이 직접 DIY해서 스마트워치를 만든다면 이 또한 충분히 가치가 있을 것 입니다.(물론 본인 스스로에게만?) 이렇게 DIY 한 워치에 스스로 기능을 추가해 나가는것 또한 또다른 재미를 느낄 수 있을 것 입니다.
그래서 오늘은 초저가형 스마트워치를 만드는 방법을 소개해 드리려고 합니다. (원문 출처 : instructables)
이 프로젝트는 ESP8266 칩은 ESP-12E를 사용해 스마트워치를 만드는 방법에 대한 것입니다. 이 Smartwatch의 주요 기능은 시간, 날씨를 확인할 수 있고, 집안의 다른 기기들을 컨트롤 하는 것 입니다.
원리는 다음과 같습니다.
1. 시간 : 시계는 가장 가까운 NTP 서버에 연결하여 시간과 날짜를 가져옵니다.
2. 날씨 : 온도 데이터는 Yahoo Weather API에서 가져온 것입니다.
3. 원격으로 다른 기기 제어 : 시계는 Blynk 서버에 연결하고 브리지 기능을 사용하여 이전 프로젝트에서 만든 다른 ESP8266 릴레이 모듈을 직접 제어합니다.
부품구하기
아마존이나 국내 쇼핑몰에서 구입할 수 있습니다.
ESP-12e : 1개
OLED display : 1개
SMD buttons : 3개
3.3V Voltage Regulator: You can get from an arduino uno or pro mini : 1개
Small SMD buttons(buttons present on the NodeMCU) Assorted buttons kit : 2개
0603 LED : 2개(TP4056 보드에 포함)
0603 Resistor : 2개(TP4056 보드에 포함)
0603 112 Resistor : 1개(TP4056 보드에 포함)
SMD Slide Switch : 1개
0805 10K Resistors : 8개
0805 10uF Capacitor : 2개
PCB 주문하기
스마트워치가 투박하게 보이는 것을 방지하는 방법은 PCB를 직접 설계하는 법입니다.
EasyEDA (https://easyeda.com)를 사용하여 회로도 및 인쇄 회로 기판을 설계 한 다음 JLCPCB에서 PCB를 주문합니다.
JLCPCB에 이 거버 파일을 업로드해서 PCB를 주문합니다.
조립하기
이제 부품을 PCB기반에 납땜합니다. (조립법은 아래 유튜브 영상을 참고)
프로그래밍하기
코드를 업로드하기 전에 Yahoo Weather API의 Weather API가 필요합니다. YQL 쿼리 아래의 페이지를 방문하여 녹색 텍스트를 클릭하고 "nome, ak"라는 텍스트를 찾을 때까지 끝까지 스크롤합니다. 여기에 도시의 이름과 국가 코드를 추가하면 됩니다.
그런 다음 아래 "테스트"버튼을 클릭하고 "EndPoint"아래에있는 링크를 "/ v1"에서 링크 끝까지 복사하십시오.
그런 다음 여기에서 arduino 코드를 다운로드하십시오 : https : //github.com/theTechnowright/DIY-Smartwatch-...
코드에서 Blynk 인증 코드를 입력합니다. 이 코드는 새로운 Blynk 프로젝트를 작성하면 이메일로 전송됩니다. 이후 다음 WiFi SSID와 암호를 입력하십시오.
'const String url = ""'BLYNK_CONNECTED 아래에 릴레이를 제어하는 다른 ESP8266의 인증 코드를 입력합니다. 마지막으로 아래로 스크롤해서 "TimeChangeRule"을 찾습니다. 여기에 시간대에 따라 UTC에서 분을 더하거나 뺍니다.
이제 아두이노 라이브러리를 설치합니다.
Time.h & TimeLib.h: https://github.com/PaulStoffregen/Time
Timezone.h: https://github.com/JChristensen/Timezone
SSD1306.h & SSD1306Wire.h: https://github.com/JChristensen/Timezone
NTPClient.h: https://github.com/JChristensen/Timezone
ESP8266WiFi.h & WifiUDP.h: https://github.com/JChristensen/Timezone
Download latest Blynk library here: https://github.com/blynkkk/blynk-library/releases/tag/v0.5.4
Now wire the 4 pin serial communicator to the USB-TTL convertor accordingly;
ESP-12eUSB-TTL Convertor
GND - GND
RST - RTS
RX - TXD
TX - RXD
Arduino IDE에서 장치를 NodeMCU 1.0으로 선택하고 올바른 COM 포트를 선택하고 코드를 업로드하십시오. 코드를 업로드하는 동안 플래시를 누르고 있어야합니다.
시계줄 만들기
안전 고글의 밴드와 같이 신축성 있는 밴드를 이용해 시계줄을 만듭니다. 시계 배터리는 시계 아래쪽에 부착하려 했지만 시계를 얇게만들기 위해 밴드사이에 끼워줍니다.
완성
이제 스위치를 밀어서 시계를 켭니다. "WiFi에 연결됨"이라는 메시지가 표시되면 성공입니다.
가운데 단추를 누르면 시계에 온도, 시간 및 날짜가 표시됩니다. 다른 두 개의 버튼은 WiFi Relay 모듈의 두 개의 릴레이를 제어합니다. 릴레이를 전기 제품에 연결하면 시계로 제어 할 수 있습니다. 가장 좋은 방법은 연장 된 전원 콘센트에 연결하는 것입니다. 릴레이 스위치는 중성선이 아닌 라이브 선에 연결해야합니다.
아래는 위 과정을 설명한 유튜브 영상 입니다.