1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Sigfox BRKLSM100で上り600bps通信ができるのか?

Posted at

2024年5月にUnabiz者がリリースしたUnaBiz upgrades Sigfox 0G Technology, reducing device energy consumption by up to 18Xに書かれているSigfoxのオープンソースライブラリとして提供しているSigfox End Point Libraryを実装すれば、通常上り100bpsが600bpsへ、リピート回数も3回固定から指定回数に変更することができ、バッテリーのライフサイクルが約18倍になりますよという内容が気になったので、(おそらく対応しているであろう)LSM100Aモジュールをベースに開発ボード化しているSigfox Breakout Board [BRKLSM100]を購入して、試してみました。
画像1.jpg

SigfoxとLoRaのモード切替

AT+MODE=XのXを0でSigfox、1でLoRaに切り替えられる。
AT+MODE=0でSigfoxに切り替えられるのだが、応答は”OK”だけなので、本当に切り替わったかは、`AT+MODE=?"で確認した方が良い。

-----------------------------
     SEONGJI INDUSTRIAL CO., LTD.    
-------------------------------------
>> Device : LSM100A					
>> Mode   : Sigfox                 
>> IAP_VERSION : V1.0.0              
-------------------------------------
>> APP_VERSION:        V1.0.3
>> MW_SIGFOX_VERSION:  V1.7.0
>> MW_RADIO_VERSION:   V1.2.0
>> TXPOWER MODE :   LOWPOWER 
>> SIGFOX SUPPORT RC TYPE: VD
>> SIGFOX sfx_rc : RC3C 
>> SIGFOX APPLICATION READY
-------------------------------------
-----------------------------
     SEONGJI INDUSTRIAL CO., LTD.    
-------------------------------------
>> Device : LSM100A					
>> Mode   : LoRa					
>> IAP_VERSION : V1.0.0              
-------------------------------------
>> APP_VERSION:        V1.0.3
>> MW_LORAWAN_VERSION: V2.4.0
>> MW_RADIO_VERSION:   V1.2.0
>> TXPOWER MODE :   LOWPOWER 
>> L2_SPEC_VERSION:     V1.0.4
>> RP_SPEC_VERSION:     V2-1.0.1
------ OTAA ------
>> AppKey:      
>> NwkKey:      
------ ABP  ------
>> AppSKey:     
>> NwkSKey:     
------ IDs  ------
>> DevEui:      
>> AppEui:      
>> DevAddr:     
-------------------------------------

Sigfox Radio Configurationの変更

デフォルトで設定されているRCは欧州を意味する1になっているため、日本向けRC3Cに変更する必要があります。
AT$RC=3CでRC3Cに変更できます。これも同じく、AT$RC=?で変更確認しましょう。

AT$TM=3C,0でRCZを切り替えるという記載を見ることがありますが、これをやっても、おそらく、コマンドを受け付けていないのでしょう。下記ATコマンドエラーが戻ってきます。
ERROR 0x50
AT_ERROR

600bpsのアップリンク通信はできるのか?

通常のメッセージ送信コマンドAT$SFコマンドでは、600bpsを指定するパラメターはありません。
ただ、Local test用として、AT$SL=freq,datarate,countというコマンドがあります。これをすると、例えばAT$SL=922400000,600,5というコマンドを叩けば、しばらくして下記応答が得られます。

AT$SL=922400000,600,5.
FREP[922400000] dataRate[600]
715s848:Wait For End of Tx
716s172:OnTxDone
716s172:End Of Tx
716s635:Wait For End of Tx
716s959:OnTxDone
716s959:End Of Tx
717s423:Wait For End of Tx
717s748:OnTxDone
717s748:End Of Tx
718s210:Wait For End of Tx
718s535:OnTxDone
718s535:End Of Tx
718s999:Wait For End of Tx
719s323:OnTxDone
719s323:End Of Tx
OK

よくわかないので、600bpsのところを100bpsにしてみました。

AT$SL=922400000,100,5.
FREP[922400000] dataRate[100]
802s037:Wait For End of Tx
803s454:OnTxDone
803s454:End Of Tx
803s916:Wait For End of Tx
805s333:OnTxDone
805s333:End Of Tx
805s796:Wait For End of Tx
807s213:OnTxDone
807s213:End Of Tx
807s676:Wait For End of Tx
809s093:OnTxDone
809s093:End Of Tx
809s556:Wait For End of Tx
810s973:OnTxDone
810s973:End Of Tx
OK

なんか、時刻のようなものが返ってくるので、比較をしてみたところ、600bpsの時は、3.475s、100bpsの時は、8.936sと約2.5倍の違いがありました。
なんとなく、600bpsになっているんじゃないかという気にさせる結果です。

正直、LSM100Aのユーザーマニュアルの記載が少ないこと、現場から離れて時が経っており、Sigfox End Point Libraryの実装内容がよくわからないということもあり、実際のところはわかりません。また、調べます。

最後に、ATコマンド一覧を載せておきます。

at.
AT+<CMD>?        : Help on <CMD>
AT+<CMD>         : Run <CMD>
AT+<CMD>=<value> : Set the value
AT+<CMD>=?       : Get the value
ATZ: Trig a MCU reset
AT$RFS: Restore EEPROM Factory Settings
AT+VER: Get the FW version
AT$ID: Get the ID
AT$PAC: Get the PAC
ATS410: 0:Private Key 1:Public Key
ATS411: Payload Encryption 0:Off 1:On
AT$SB=<Bit>,<Opt downlink>,<Opt TxRepeat><CR>. Send a bit to the sigfox network
AT$SF=<Payload>,<Opt downlink>,<Opt TxRepeat><CR>. Send a ASCII frame to the sigfox network
AT$SH=<PayloadLength>,<Payload>,<Opt downlink>,<Opt TxRepeat><CR>. Send a Hex frame to the sigfox network
AT$CW=<frequency><CR> frequency in Hz or in MHz. Run CW Test mode
AT$PN=<frequency>,<bitrate><CR> frequency in Hz or in MHz, bitrate=[100, 600]. Run PRBS9 BPBSK Test mode
AT$TM=<rc>,<mode><CR> mode=[0..12]. Run Sigfox Test mode
AT+BAT: Get the battery Level in mV 
ATS302=<power>,<CR>  power in dBm=[0..20]. Set Radio output power in dBm
ATS300: send an out of band message once.
ATS400=<param1><param2><param3>,<param4><CR>. Configure specific variables for standard.
AT$RC<param1><CR> param1=[1:7]. Set/Get the Regional Config zones.
AT$RSSICAL=<param1><CR> param1=rssi value in dB. Set/Get the rssi calibration value in dB.
ATE=<param1><CR> [0,1]. Set/Get the echo state.
AT+VL=<param1><CR> [0:3]. Set/Get the Verbose Level with integer from 0(VLEVEL_OFF) to 3(VLEVEL_H)
AT+MODE LoRa/SigFox Select 0:SigFox, 1:LoRa
AT$RL Starts listening for a local loop 
AT$SL Send Tx packet for a local loop 
AT$SSWVER Get SW Version 
1
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?