Firmware version 1.1

@fenrir-naru fenrir-naru released this Apr 11, 2016 · 95 commits to master since this release

Change log from Firmware version 1.0

  • Add support for running telemeter setup script before starting up.
    • For UART1 device connected to the CON3 connector(see BOM and schematics), setup procedure such as AT command communication is supported by inserting a Micro-SD having a file named "tlm.exp".
    • An example "tlm.exp" for esp8266 is in the repository. It is noted that the esp8266 baudrate differs from the default baudrate of NinjaScan-Light, therefore the configuration must be changed before running this script according to v1.0+Firmware release note. The hint is using renew_cfg_gen.rb with replacing 9600 to 115200.
    • The format of "tlm.exp" are the followings. It is line oriented.
      • A line starting with '@' followed by digits is a command to wait for the specified milliseconds. Spaces after '@' are ignored.
      • A line starting with '$' followed by characters is a command to send the characters to the UART1 device. Spaces after '$' are ignored. Some '' escape characters are recognized; '\' (backslash itself), '\n' (newline, LF), '\r' (carriage return, CR), and '\xHH' (any byte specified by two hexadecimal(H) characters).
      • A line starting with '>' followed by nothing or any characters is a command to wait until receiving everything or the specified characters followed by endline character(s) (CR or LF or CRLF) from the UART1 device. Spaces after '>' are ignored. The size of the characters to be matched is limited to seven due to the internal buffer size. The timeout for reception is 1000 ms, therefore to combine the '@' line is considerable when it is assumed that the UART1 device requires longer time. If the match is successfully performed, the script will be continued according to the next lines; otherwise, the script is stopped immediately with the error flag of the UART1 device, which prevent further telemetry.
      • A line starting with a character except for the above three '@', '$', and '>' is ignored.
  • Some minor bug fixes.

Firmware version 1.0 からの変更点

  • テレメータ設定スクリプトをサポートするようになりました。
    • CON3(BOMや回路図参照のこと)の先につなげたUART1デバイスに対して、"tlm.exp"というファイルをMicroSDに用意することで起動前のセットアップスクリプト(例えばATコマンド)を実行できるようになりました。
    • 例としてesp8266用の"tlm.exp"を置いておきます。なおesp8266のボーレートは初期設定と異なるので、v1.0+Firmwareのリリースノートを参考に設定を変えてください。このときrenew_cfg_gen.rbは9600が115200になります。
    • "tlm.exp"のフォーマットは以下のとおりです。行単位で意味を構成します。
      • @とそれに続く数字の行は、数字で指定したミリセカンド時間待つ命令です。@と数字の間の空白は無視されます。
      • $とそれに続く文字列の行は、UART1デバイスにその文字列を送信します。 $の後の空白は無視されます。エスケープ文字として'\' (バックスラッシュ)、'\n' (LF), '\r' (CR), '\xHH' (2つの16進文字であらわされる任意の1バイト)を文字列では使うことができます。
      • のみの行、または、>とそれに続く文字列の行は、UART1デバイスから行末(CR、LF、またはCRLF)まで全て、または、指定の文字列を受信するまで待ちます。>の後の空白は無視されます。指定の文字列は(内部のバッファの制限があるため)最大7文字まで一致が試みられます。UART1デバイスからの受信タイムアウトは1000msで固定されているため、応答に時間がかかると予期される場合は@の行と組み合わせて使うことを検討してください。一致した場合は次の行へと実行が進みます。それ以外(一致しなかった場合や受信タイムアウトの場合)はUART1デバイスがエラーと認識しスクリプトの実行を中断、以降のテレメトリ送信を断念します。

      • @、$、>以外ではじまる行は無視されます。
  • その他、軽微なバグフィクスをしています。