Softbank Airターミナル3 (B610s-77a)のブートメッセージをシリアルコンソールで見てみる

とあるリサイクルショップで、Softbank Airターミナル3を100円で買って来た。 Huawei Technologies Co., Ltd.製で、型番はB610s-77aと裏面に書いてある。

はるろいどの冒険日記 SoftBank Air ターミナル3で遊ぶ(準備編)によると、 底面のSIMカードスロットの隣にあるUSB micro B端子にUARTの端子が出ているらしい。

USB端子の接点 UART
GND GND
D+ RXD
D- TXD

と言うことで、micro BとUSB Type-Cを両端に持ったUSBケーブルを底面のUSB micro B端子に差し込み、 秋月電子のUSBtype-CコネクターDIP化キット(全ピン版)にUSB Type-C側の端子を接続した。 更に、USBtype-CコネクターDIP化キット(全ピン版)の10番のD-ピンはTXDなので、 秋月電子のFTDI USBシリアル変換ケーブル(3.3V)の黄色の線のRXDに接続し、 9番のD+ピンはRXDなので橙色の線のTXDに、 8番のGNDピンはUARTでもGNDなので黒色のGNDに接続した。

FTDI USBシリアル変換ケーブル(3.3V)のUSB A端子をNetBSDマシンに接続して、ucom1として認識された。 以下のように実行して、115200 bpsで接続すれば、ブートメッセージを見ることができた。

# cu -115200 -l /dev/ttyU1
Connected

onchip
NF id boot!
NF ID 0x2CAC9026 0x54000000
NF pagesz 0x00001000B,pagenm 0x00000040,oobsz 0x000000E0B,ecc 0x00000018,addrnum 0x00000005,chipsz 0x00000200MB
Nand save 0x748B0142
UnSec_boot!mddrc init ok
13
src_addr :0x00080000
dst_addr :0x4FD00000
img_size :0x00030E5C
4
sec disable
56
  Start mic now ...
/proc/power_on open failed
start_mode = 0
ifconfig: SIOCGIFFLAGS: No such device
ATP_FOM_RET_OTHER_ERR err1
ATP_FOM_RET_OTHER_ERR err1
GlobeMac Init OK
NV_Read: Para is Error

 mac num={1,4,0,0,0,4}

 ATP_MIC_UpgValueChange ulDbInit=0
Load db now ...
now lAccessSemID [0] will be set to -1

 ATP_MIC_UpgValueChange ulDbInit=1
already config sync cFlags:2

 mic web [/usr1/z00425786/z00216571/B610MR/vendor/hisi/modem/atpv2/vendor/atp/package/atp/libraries/private/ssp/mic/main/src/webmicadapt.c] [MicCheckPortInUse] [211] MicCheckPortInUse sscanf_s failed!


 mic web [/usr1/z00425786/z00216571/B610MR/vendor/hisi/modem/atpv2/vendor/atp/package/atp/libraries/private/ssp/mic/main/src/webmicadapt.c] [MicWebSocketInit] [249] MicWebSocketInit type is 0...

 mic web [/usr1/z00425786/z00216571/B610MR/vendor/hisi/modem/atpv2/vendor/atp/package/atp/libraries/private/ssp/mic/main/src/webmicadapt.c] [MicWebStartCreateSockTimer] [285] Start MicWebStartCreatSockTimer now ...

****ledservice wifi init.*****
******ledservice wps init.******n>>>>>>button_Create over&t;&t;&t;&t;&t;&t;&t;&t;&t;&t;
>>>>>>button_Create over&t;&t;&t;&t;&t;&t;&t;&t;&t;&t;
>>>>>>button_Create over&t;&t;&t;&t;&t;&t;&t;&t;&t;&t;
>>>>>>button_Create over&t;&t;&t;&t;&t;&t;&t;&t;&t;&t;
Info, init t_exit_cond. pid: 189
Init_sys_netlink completely!
mic enter message loop now.
Info, init t_exit_cond. pid: 238
Info, init t_exit_cond. pid: 236
Info, init t_exit_cond. pid: 235
Info, init t_exit_cond. pid: 245
Info, init t_exit_cond. pid: 239
Mode Switch:Mode=3
Mode Switch:Mode1_check_flag=0
get_antenna_enable 0
ready to load Wi-Fi ko...........
Wi-Fi driver used nvram file is B610s-77a.nvm
Info, init t_exit_cond. pid: 240
AT_Cnum excute fail!
##sendmsg return 16, errno 2.
************************Write db to flash now ...
done sync
enable iptv failed: Operation not supported on transport endpoint
========> macalgrithm_4RSVD failed, ulMacType = 80000335 ulConutIndex = 0 *ulMacTypes[4].pulMacnum = 0, ulLength = 32
EthGetCfgNum return 2
enable vport process status is 0
nvram file :/var/nvram/bcm43217_nvm.txt
enable iptv failed: Operation not supported on transport endpoint
ifconfig: SIOCGIFFLAGS: No such device
smuxctl: socket or ioctl error for rem: Invalid argument
Wanumtscms: func[    WUTR098IniDevice] line[520]Initial UMTS device
wl0.1: No such device
wl1.1: No such device
-l sh start /var/firewall_init.sh
ifconfig wl1 up

===========set tcpnodelay failed

===========set tcpnodelay failed

===========set tcpnodelay failed

  open led file err

===========set tcpnodelay failed
wl0.1: No such device
2
wl1.1: No such device
3
Sorry, rule does not exist.
Sorry, rule does not exist.
Wanumtscms: func[WUIniPrivateMobileDevice] line[ 99]E5 device initial
ChannelWanGuide...0..

deal with rules over...

Read ppp session flash area error.
  open led file errcms init ok.
set_sys_autosleep write data failed.
Wanumtscms: func[   WUAtserverMsgProc] line[172]Nofift dialup to start detecting signal
Wanumtscms: func[     WUDialupMsgProc] line[483]Wireless device service down srv=[1]

AT_Cnum excute fail!
AT_Cnum excute fail!
ip6tables: Bad rule (does a matching rule exist in that chain?).
Sorry, rule does not exist.
Sorry, rule does not exist.
Sorry, rule does not exist.
Sorry, rule does not exist.
wl0.1: No such device
wl1.1: No such device
Unable to chmod /var/atp_boot_track.log: No such file or directory
Start mic now ...
/proc/power_on open failed
start_mode = 0
iptables: Bad rule (does a matching rule exist in that chain?).
iptables: Bad rule (does a matching rule exist in that chain?).
ip6tables: Bad rule (does a matching rule exist in that chain?).
-l sh end /var/firewall_init.sh
ip6tables: Bad rule (does a matching rule exist in that chain?).
************************Write db to flash now ...
done sync
WPS: set msglevel to 0x0
Failed to open /var/devgpio

### wps_wfi_init(): <wl0_wfi_enable=0><wl1_wfi_enable=0><wl1.1_wfi_enable=(null)><wl0.1_wfi_enable=(null)>WFI is not enabled ###
--------------------------------------------------------------------
---------------------------Welcome To Cli---------------------------
--SBAir3, B610s-77aTCPU-V100R001B192D11SP00C643, 54:25:EA:24:60:99--
--------------------------------------------------------------------

Login: >>>>upnp Disalbed......
************************Write db to flash now ...
done sync
ifconfig wl0 up

  open led file err

Login incorrect!

Login:

.jm (ジャマイカ)のドメインを無料で取得してみた

ジャマイカの.jmドメインは、無料で取得でき、別にジャマイカに在住している必要はないと聞いた。 domain_name_form.txtに記載して電子メールで送付すれば良いらしい。 他のドメインのように登録は自動化はされていない。 と言うか、このファイルの末尾の記載は項目の番号がずれているような気がする。

返信はここには記載できないが、以下のような電子メールで、無事に取得できた。2025年5月30日に申請して、6月2日に登録された。

申請した電子メールアドレスから送信した電子メールでないと、例えばDNSサーバーの設定は変更できないようなので、永続的な電子メールで申請する必要があるようだ。

From: MYFIRST MYLAST <my@example.com>
Subject: XXXDOMAIN.XXX.jm domain registration
To: dmaster@ns.jm

Greetings,

My name MYFIRST MYLAST.
Please find the following .jm domain registration application.
Thanks in advance.

1.   Top-level domain................: .jm

2.   Complete Domain Name............: XXXDOMAIN.XXX.jm

3a.  Organization name...............: MYORG
3b.  Organization address............: MYADDRESS,
				       MYPREF, Japan

4.   Operational Date................: 2025-06-30 (or sooner)

Administrative Contact:
5a.  Name (Last, First)..............: LASTNAME, MYFIRST
5b.  Organization....................: MYORG
5c.  Postal Address..................: MYADDRESS,
				       MYPRES, Japan

5d.  Phone Number....................: +81-xx-xxxx-xxxx
5e.  Email Address...................: my@example.com

Technical/Zone Contact:
6a.  Name (Last, First)..............: LASTNAME, MYFIRST
6b.  Organization....................: MYORG
6c.  Postal Address..................:MYADDRESS,
				       MYPREF, Japan

6d.  Phone Number....................: +81-xx-xxxx-xxxx
6e.  Email Address...................: my@example.com

7a.  Primary DNS Server Hostname.....: ns1.XXXDOMAIN.XXX.jm
7b.  Primary DNS Server IP Address...: xxx.xxx.xxx.xxx
				       xxxx:xxxx:x:x:xxxx:xx:xxxx:xxxx
8a.  Secondary DNS Server Hostname...: ns2.XXXDOMAIN.XXX.jm
8b.  Secondary DNS Server IP address.: xxx.xxx.xxx.xxx
				       xxxx:xxxx:xxxx:xxxx:xxx:xx:xxx:xxx

9.   Domain/Org Purpose/Desc.: MYORG runs some services for communication
via the Internet. MYORG will use this domain for the services.

Notes: In Sections 3b, 5d, & 6d use multiple lines for addresses.
       If contacts are registered, only 5a and 6a are needed.
       If servers are registered, only 7a&b and 8a&b are needed.
       If there is more than one secondary server, just copy Section 8.

The party requesting registration of this name certifies that, to her/his
knowledge, 
the use of this name does not violate trademark or other statues.

Registering a domain name does not confer any legal rights to that name and
any disputes 
between parties over the rights to use a particular name are to be settled
between the 
contending parties using normal legal methods.
(See RFC 1591)

----------------------------------------------------------------
DOMAIN MASTER                         E-mail: dmaster@ns.jm

-- 
MYSIGNATURE

Arvel USBシリアルケーブルSRC06-USBをWindows 11 x86_64で使う

Arvel USBシリアルケーブルSRC06-USBをWindows 10 x86_64で使うで、Arvel (現バッファロー) のSRC06-USBというFTDIのチップを使ったUSB to Rs-232CアダプターをWindows 10で使う話を書いたが、同じSRC06-USBをWindows 11 x86_64でも使うことができた。

Windows 11 24H2の場合には、Windows Update経由でデバイスドライバーが配られているようで、特にデバイスドライバーをダウンロードしてインストールするといった作業は不溶で、接続するだけで利用できた。 認識されたデバイスのプロパティーのスクリーンショットを含めておく。

NetBSDからneocities.orgにウェブサイトを展開してみる

この記事は、NetBSD Advent Calendar 2024の25日目の記事です。

はじめに

NeoCitiesというウェブサイトのホスティングサービスがあります。 クラシックな感じな静的なファイルをホスティングしてくれるサービスですが、さすがにこの時代にftpでファイルを転送するというようなことはできません。 もちろん、ウェブサイトから操作できますが、使い勝手は良くありません。 ただし、APIがあるので、用意されている専用クライアントを使って、ファイルのアップロード等をすることができます。

これも、タイミングが悪くてpkgsrcにインポートできていないのですが、7月にはコミットしたいと思いますので、 使い方を書いておきたいと思います。

インストール

専用クライアントは、The Neocities CLIで公開されています。Rubyで書かれたクライアントです。 以下のようにインストールすれば良いでしょう。

# cd /usr/pkgsrc/www/ruby-neocities
# make install

私はpkgsrc/lang/ruby34からインストールしているRuby 3.4を使っていますので、 これで/usr/pkg/bin/neocities34コマンドがインストールできました。neocities34と実行すれば使い方は分かるでしょう。

おわりに

非常に遅れた最終日にふさわしい話題だったかどうかは不安ですが…。

NetBSDでEPUB形式の電子書籍を読んでみる

この記事は、NetBSD Advent Calendar 2024の24日目の記事です。

はじめに

EPUB形式の電子ファイルで、縦書きなものを読みたいと思います。 ですが、とりあえず既にインストールされていたpkgsrc/print/mupdfは、縦書きのEPUBファイルを正しく扱えないようです。 また、ルビ(よみがな)の扱いもうまく行かないようです。 pkgsrc/print/foliateであれば、縦書きも縦書きの時のよみがなの表示も正しいようです。 一部、扉ページの表示は正しくないようですが、本文を読むには支障はありません。

インストールと利用方法

以下のようにインストールをしたいと思います。

# cd /usr/pkgsrc/print/foliate
# make install

起動は、以下のようにします。 今回は、アジア諸国の現代文芸作品の日本語翻訳出版「アジアの現代文芸」シリーズからダウンロードできる 「ラオス現代文学選集」(ファイル名: rao_gendai.epub)を読んでみることにします。

$ foliate &

トラブル対処方法

私の環境も問題ですが、foliateがクラッシュして、再度起動させるとエラーが発生して再度正常に起動できないことがありました。 その原因が~/.config/glib-2.0/settings/keyfileというファイルが壊れている場合がありました。 常にこの原因とは限らないと思いますが…。

おわりに

NetBSDでも無事にEPUB形式の電子書籍ファイルを読むことができました。

NetBSDでClojure言語に入門してみる

この記事は、NetBSD Advent Calendar 2024の23日目の記事です。

はじめに

Java Virtual Machineで動く言語を使いたかったのですが、JavaもKotlinも何となく気が進まなかったので、Clojureを試そうとしてみました。

環境を設定する

もたもたしていて今日時点でpkgsrc/lang/clojure-leiningenはインポートできていませんが、LeiningenはClojureで開発する場合には必要なようです。 ですが、まずは、pkgsrc/lang/clojure-leiningenをインストールします。

# cd /usr/pkgsrc/lang/clojure-leiningen
# make install

以下のように実行してみましょう。 https://dev.classmethod.jp/articles/instaparse/を参考にしてみます。

$ mkdir ~/tmp
$ cd ~/tmp
$ lein new pj1
$ cd pj1
$ cat project.clj
(defproject insta "HEAD"
  :dependencies [[org.clojure/clojure "1.11.1"]
                 [instaparse "1.5.0"]]
  :main pj1.core)

$ cat src/pj1/core.clj
(ns pj1.core
  (:require [instaparse.core :as insta]))

(def as-and-bs
  (insta/parser
    "S = AB*
     AB = A B
     A = 'a'+
     B = 'b'+"))

(defn -main [& args]
  (print (as-and-bs "aaabbaabbb")))
$ lein run
[:S [:AB [:A a a a] [:B b b]] [:AB [:A a a] [:B b b b]]]

おわりに

NetBSD上のClojureで有用なプログラムを書くことができそうです。

Mozilla Thunderbird (pkgsrc/mail/thunderbird)でNetBSDからMatrix chatに参加してみる

この記事は、NetBSD Advent Calendar 2024の22日目の記事です。

はじめに

pkgsrc/mail/thunderbirdは現状では138.0.1です。 手元では139.0.2にしてあるので、以下のスクリーンショットは139.0.2のものになってしまいます。

私は、thunderbird-128.2.3から、Matrixチャットに参加するのに、pkgsrc/mail/thunderbirdを使っています。 WebRTCサポートが必要だったのかなという気がしているのですが、確認できてはいません。

参加するMatrixチャットを探す

NetBSD WikiにあるMatrixについてのページを見ると、 matrix.orgにあるNetBSDとpkgsrcの2つのチャネルが紹介されています。 これらに参加することにしたいと思います。

設定方法

Thunderbirdのメニューバーより、Editを選んで、その中のAccount Settingsを選択して開きます。+New Accountという青色のボタンをクリックします。 その中に、Chat accountを選択する、Chat Account Wizardのポップアップが開きます。 IRC、Matrix、Odnoklassniki、XMPPがchat networkの選択肢にあります。 今回はmatrix.orgに参加するので、Matrixを選びます。

次にユーザーとサーバー情報をを入力します。 もし、mnatrix.orgに一度もログインしたことがなければ、ユーザーIDもないと思います。 私自身がどうやってアカウントを作ったのか、以前のことなので覚えていませんが、今回は既に存在するものを使います。 アカウントがない場合には、https://account.matrix.org/registerから作ることができそうです。

次にパスワードを入力します。

Advanced Settingsの内容は、とりあえず使うには設定変更しないで構わないでしょう。 今回はそのままで次に進めます。

次に、Summaryが表示されたら、Connect this account now.のチェックボックスをオンにしてFiにボタンで完了させます。

Account Settingsで下図のように設定されていれば、問題ありません。

使ってみる

Thunderbirdのウィンドウに戻り、左端のチャットマークのアイコンをクリックすると、Chatタブを開くことができます。 私の場合にはIRCの設定さ既にされていますが、無視してください。

画面丈夫のJoin Chatボタンをクリックして、参加するroomを指定できます。 下図はNetBSD roomへの参加時の入力状況(#netbsd:netbsd.org)ですが、pkgsrc roomの場合は#pkgsrc:netbsd.orgになるだけで同様です。

以下のように表示されれば正しく設定できました。

おわりに

一番手軽かは分かりませんが、MatrixチャットにNetBSDから参加することができました。

Softbank Airターミナル3 (B610s-77a)のブートメッセージをシリアルコンソールで見てみる

とあるリサイクルショップで、Softbank Airターミナル3を100円で買って来た。 Huawei Technologies Co., Ltd.製で、型番はB610s-77aと裏面に書いてある。 はるろいどの冒険日記 SoftBank Air ターミナル3で...