そーたとメイの工作 (sohtaMei)

技術情報・開発情報

ソースコードなどBitClockの技術情報や開発情報です。

リリース履歴

release date アプリ PIC WLAN memo
2018/11/11 A0920 0921 W0.921  ・表示設定が天気予報で電池抜き差し直後に88:88になってしまう不具合修正。
2018/10/14 A0920 0920 W0.921 ・アップロード機能不具合修正
2017/07/17A09200920W0.920 ・全国天気対応
・カメラ機能対応(要HW改造)
2016/11/17 A0914  0914 W0.914 ・POST機能対応
2016/09/20 A0913 0913 W0.913 ・発売日リリース

 

BitClockシステム構成

BitCkockは下記のシステム構成になっています。(tcpアプリについてはesp8266資料を参照)
BitClockはPC接続状態でも電池を消費します。必要のないときはUSBケーブルを抜いて下さい。

esp8266単体構成

BitClockは最初はPICなし、esp8266 (とUSB-UART変換) だけで作ろうとしました。

esp8266はdeep sleep とsleep のときRTCによるカウントとwakeが可能なのですが、deep sleep・sleepどちらも26MHz XTAL発振を止めCR発振でRTCを動かしているらしく、RTC精度が数%ととんでもない値になります(1日 数分ずれる)。RTCをXTAL精度にするためesp8266 ONしっぱなし (70mA) にすると単4電池の場合10時間程度しか持ちません。esp8266単体で使う場合は消費電力とRTC精度のどちらかを諦める必要があります。

モード 消費電力  発振  備考 
WAKE時peak 400mA, 1.3W XTAL+PLL 約40ms幅 
ON(定常) 70mA, 230mW XTAL+PLL  
sleep時  1mA RC  
deep sleep時 数10uA RC wake時にpeak電力発生

esp8266+外部PICマイコン構成

そのためBitClockではesp8266+外部PICマイコンの構成にしました。BitClockのステートマシンを下記に載せます。

esp8266は標準で外部マイコン用のUARTコマンドに対応しており、標準UARTコマンドではWLAN接続とTCP通信に対応しています。BitClockではNTPとHTTP対応のためいくつかUARTコマンドを追加しています。

BitClock固有の機能は主にPICマイコンと設定アプリで行っており、BitClockカスタマイズはPICマイコンのfirmware変更又は設定アプリのソース変更がメインになります。またPICマイコンや設定アプリからesp8266へのコマンドは全てTeraTermから送ることが出来るため、まずTeraTermで何ができるか確認することをお勧めします。

UARTコマンド

Teraterm (Windows) など、パソコン用のUART通信アプリを使うことで

  • 設定アプリなしで直接BitClock設定
  • esp8266 標準UARTコマンドやTIMEZON設定など設定アプリ非対応の全機能

を利用することができます。

TeraTermダウンロード

[ファイル] - [新しい接続] - [シリアル] - [ポート - COM ?]を選択して下さい。
シリアル(UART)を使うときふつうはボーレートなどの設定をする必要があるのですが、BitClockの場合は不要です。

主なUARTコマンドはTeraTermをBitClockに接続し、ATHELP と入力することで表示されます。

ATHELP

ATWPS         - connect to AP with WPS
ATCON=SSID PASSWORD - connect to AP with password
ATCON         - display registered AP
AT+CWLAP      - scan AP
AT+GMR        - SW version
AT+RST        - reboot (reconnect to AP and NTP server)
ATINIT        - factory reset
ATHTTP=..     - setup info/log server
   (info)      00 URL
   (info_ssl)  01 URL
   (SohtaMei)  02
   (ThingSpeak)03 apikey
   (twitter)   04 token mes
   (IFTTT)     05 key event
   (other)     06 URL
(ATPOST=BAT VAL) - internal command
ATMODE=DISP [POST]
   DISP - (normal) 0:hour/min,  1:month/day,  2:toggle,  3:year, 4:week, 5:sec
          (Eorzea)10:hour/min, 11:month/day, 12:toggle, 13:year, 14:week
          (analog)16:battery, 17:AD
          (http)  32:A/B, 33:A, 34:B
   POST - 0:off, 1:battery(daily), 2:AD(hourly), 3:GPIO(minutely)
ATZONE=ZONE   - timezone(-11 to 13)

上記以外にもesp8266の標準コマンドを使うことが出来ます。詳しくはesp8266のATコマンド資料を参照して下さい。

ESP8266 AT Command Examples
ESP8266 AT Instruction Set

※英語版です、残念ながら日本語版はありません。

ページのトップへ戻る
inserted by FC2 system