2018年6月13日水曜日

JumboSPOTのファームウェア・アップデート

Back


  DMR(勿論D-STARも含むMMDVMすべて)を始めようとするとノード・デバイス(ZumSPOT,MMDVM HS hat,JumboSPOTなど)のファームウェア・アップデートが必要となります。


=MEMO= OSを新規にインストールした場合は、GPIO をシリアル通信出来るように設定変更する必要が有ります。 また、Pi3/Pi Zero W 等は Pi1/2 とも異なります。下記をご参照ください。
Pi3/Pi Zero WのGPIOでPi-HATと送受信する

ファームウェアのダウンロードサイト

  いろいろなデベロッパーが自身のMMDVMボードを開発すると同時にファームウェアも提供していますが、私はボード開発にも関わりつつ、各種ボード向けにファームウェアを提供している Andy CA6JAU のサイトからダウンロードしました。



  1. 上図をクリックすると、Git Hub のダウンロード画面が表示されます。次の図のようにグリーンのボタンをクリックし、URLをクリックボードにコピーします。



  2. Raspbery Pi のターミナル上で、コマンドに続いてURLを貼り付けます。nano の場合はカーソル(マウスカーソルではありません)をコマンドの後にスペースを空けて置き、マウスの右クリックをするとカーソル位置に貼り付きます。

  3. $ git clone https://github.com/juribeparada/MMDVM_HS.git
    

    コマンドが無いと言われた場合は、インストールしてください。

    $ sudo apt install git
    

    =MEMO= 2023年3月現在、上記のように git clone する方法がユーザID・パスワードを要求されます。 従ってWEBページの右ペイン [latest] のリンクを開き、最下部の Source code をダウンロードして解凍してください。 (2023.3.15 FW Update確認済み)

  4. MMDVM_HS と言うフォルダが作成されますので、その中に入ります。ここではコンパイルの必要は有りません。
  5. 2023年現在確認したところ MMDVM_HS-1.5.2 と言う風にバージョン表示が追加されていました。

    $ cd MMDVM_HS
    $ ls
    ADF7021.cpp    DMRDefines.h     DStarRX.cpp    NXDNRX.cpp         SerialRB.h
    ADF7021.h      DMRDMORX.cpp     DStarRX.h      NXDNRX.h           SerialSTM.cpp
    bin            DMRDMORX.h       DStarTX.cpp    NXDNTX.cpp         STM32F10X_Lib
    BitRB.cpp      DMRDMOTX.cpp     DStarTX.h      NXDNTX.h           stm32f10x_link.ld
    BitRB.h        DMRDMOTX.h       GitVersion.h   obj_f1             stm32f4xx_link.ld
    bootloader.ld  DMRIdleRX.cpp    Globals.h      P25Defines.h       stm32f7xx_link.ld
    BUILD.md       DMRIdleRX.h      IOArduino.cpp  P25RX.cpp          Utils.cpp
    CalDMR.cpp     DMRRX.cpp        IO.cpp         P25RX.h            Utils.h
    CalDMR.h       DMRRX.h          IO.h           P25TX.cpp          version.h
    CalRSSI.cpp    DMRSlotRX.cpp    IOSTM.cpp      P25TX.h            YSFDefines.h
    CalRSSI.h      DMRSlotRX.h      LICENCE        README.md          YSFRX.cpp
    Config.h       DMRSlotType.cpp  Makefile       scripts            YSFRX.h
    configs        DMRSlotType.h    MMDVM_HS.cpp   SerialArduino.cpp  YSFTX.cpp
    CWIdTX.cpp     DMRTX.cpp        MMDVM_HS.ino   SerialPort.cpp     YSFTX.h
    CWIdTX.h       DMRTX.h          normal.ld      SerialPort.h
    Debug.h        DStarDefines.h   NXDNDefines.h  SerialRB.cpp
    
    

  6. さらに、その中に有る scripts と言うフォルダに入ります。

  7. $ cd scripts
    $ ls
    build_fw.sh                install_fw_gen_gpio.sh     install_fw_nanodv.sh
    install_buildtools.sh      install_fw_hsdualhat.sh    install_fw_nanohs.sh
    install_fw_custom.sh       install_fw_hshat-12mhz.sh  install_fw_rpi.sh
    install_fw_duplex_gpio.sh  install_fw_hshat.sh       install_fw_usb.sh
    install_fw_duplex.sh       install_fw_librekit.sh
    
    $ cd
    
    

      ここには、各種のボードに対応したファームウェア・インストーラが揃っていますが、今回使用するJumboSPOT用は、install_fw_hshat.sh です。確認が出来たら次のステップに移ります。

アップデートに必要なファームウェア書き込みソフトのインストール

  1. ファームウェアと同様のやり方で Git Hub から stm32flash をクローンします。

  2. $ git clone https://git.code.sf.net/p/stm32flash/code stm32flash
    

  3. フォルダの中に入り、コンパイルした上でインストールします。

  4. $ cd stm32flash/
    $ make
    $ sudo make install
    

      これで、インストール完了です。

最後の段階、アップデートを実行

  1. 最も大事なことは、MMDVMHost を前もって停止させておく事です。

  2. $ sudo systemctl stop mmdvmhost.service
    
    又は直接、
    $ sudo pkill MMDVMHost
    

  3. 先ほどのファームウェアアップデート用フォルダへ戻ります。コマンドの前に付いている[ドット][スラッシュ]はスクリプトを実行する時のおまじないです。

  4. $ cd MMDVM_HS/scripts
    $ ./install_fw_hshat.sh
      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
    100   609    0   609    0     0    670      0 --:--:-- --:--:-- --:--:--   670
    100 42152  100 42152    0     0  17542      0  0:00:02  0:00:02 --:--:-- 33453
    Raspberry Pi 2 or Pi Zero W detected
    stm32flash Arduino_STM32_0.9
    
    http://github.com/rogerclarkmelbourne/arduino_stm32
    
    Using Parser : Raw BINARY
    Interface serial_posix: 57600 8E1
    Version      : 0x22
    Option 1     : 0x00
    Option 2     : 0x00
    Device ID    : 0x0410 (Medium-density)
    - RAM        : 20KiB  (512b reserved by bootloader)
    - Flash      : 128KiB (sector size: 4x1024)
    - Option RAM : 16b
    - System RAM : 2KiB
    Write to memory
    Erasing memory
    Wrote and verified address 0x0800a4a8 (100.00%) Done.
    
    Starting execution at address 0x08000000... done.
    
    
    $ sudo reboot
    
    

      これでファームウェア・アップデートは完了です。

      ファームウェアのバージョンに関して表示する部分が無く、本当に最新か分からない(ソースの version.h では確認できるが)と思われるかも知れません。 スクリプトを nano で開くと、

      GNU nano 2.7.4                   File: install_fw_hshat.sh
    # Configure latest version
    FW_VERSION="v1.3.7"
    

    とあり、現時点での最新版をダウンロードしていることが分かると思います。


Back


73
J E 3 H C Z /XLX047 B

0 件のコメント:

コメントを投稿