# Faketec
先說 Meshtastic 是什麼?
Meshtastic 是一種基於 LoRa 技術的開源離網通信平台,主要用於在無網路或網路中斷的情況下進行長距離、低功耗的無線通訊
* 利用 LoRa(Long Range)無線電技術建立 Mesh 網狀網路,讓多個設備彼此連接並中繼訊息。
* 完全開源,由社群驅動,適合個人愛好者、戶外探險者、救援人員及技術開發者使用。
* 支援多種硬體模組,例如 Heltec、TTGO、RAK 等 LoRa 裝置。
而可以用 Meshtastic 做什麼?
* 離網通訊(強化網路強韌性):在無手機訊號或 Wi-Fi 的地方,仍可透過 Meshtastic 裝置互相傳送文字訊息與位置資訊。
* 戶外探險:登山、露營、徒步旅行者可用來分享位置、天氣、緊急訊號,保障安全
而 FakeTec 是一個由社群推動的開源 DIY 專案,目的是打造一款低成本、低功耗、兼容 Heltec V3 的 LoRa 通訊設備,專為 Meshtastic 網狀網路系統設計。
Faketec 有以下幾點優點:
* 低功耗設計:使用 Nordic 的 nRF52 處理器,功耗遠低於 Heltec V3 所用的 ESP32,續航可提升
* 高相容性:FakeTec 的尺寸與 Heltec V3 幾乎一致,可直接使用原有外殼與配件,無需重新設計
* 完全開源:所有 PCB 設計、元件清單、固件與 3D 外殼設計都在 GitHub 上公開,方便修改與擴充
* 價格親民:整套設備成本約為 400 元新台幣,比 Heltec V3 便宜一半以上
如果你對 Meshtastic 或 LoRa 通訊有興趣,FakeTec 是一項高CP值的投資項目
## Hardware
主要由NiceNano + LoRa module組成,在V5版PCB上多支援IO控制OLED及Charger
([電路](https://github.com/gargomoma/fakeTec_pcb/tree/main/design_files))
### nRF52840 + [HT-RA62](https://docs.heltec.org/zh_CN/node/ht-ra62/index.html) / [RA-01SH](https://en.ai-thinker.com/Uploads/file/20240927/20240927114430_30249.pdf)
Meshtastic的主要元件,基本上你把這二組銲在PCB上,插上USB就可以簡單動作了
nRF52840透過SPI和LoRa module通訊

#### HT-RA62 pinout(TOP view)
HT-RA62 雖然功率較低,但價位低且設定較簡單合入門

#### RA-01SH-P pinout(Bottom view)

使用 RA-01SH 有2個pin (RXEN(RF_EN)/DIO2)腳需用綠漆絕緣起來
* V5 版本線路中pin5,7是對接的,但這在RA-01SH上剛好是 VCCPA 與 DIO2 ,如果買的是 3.3v (29dbm) 版本的 RA-01-SH-P 模組的 VCCPA 內是沒有接任何東西的,所以其實可以不用絕緣 DIO2;但如果買到 5v 版本就需要拉 5v 供電到 VCCPA,所以建議可以先絕緣 DIO2 或 VCCPA避免買到特殊 31dbm 版本 (模組內 VCCPA 未懸空) 的模組而造成異常。
* V5 版本線路中pin8 (RXEN) 對應RA-01-SH-P 是PF_EN(High active),避免接了反而 因為 RXEN 低電位會被關掉放大器 (PA)
### 電壓偵測分壓
如果電壓偵測一直為0%來檢查這塊
若電池電壓%偵測有問題,參考[ADC倍率(ADC Multiplier)調整](https://meshcn.net/meshtastic-ADC-Multiplier-Override/)

### 鋰電池充電保護電路
專為單節電池設計,可提供過充、過放、過電流和負載短路等保護功能

根據參考電路JP1 1-2pin要短路起來

### 外接OLED

### RST及預留Button

### 預留外接輸出

---
### 如何自己送洗PCB
#### 取得gerber(PCB送洗的底片檔)
到GIT 的 [Fake tec pcb](https://github.com/gargomoma/fakeTec_pcb) 下載所需的gerber (v5)

#### 選擇送洗PCB的服務
這邊可以己可接受的店家,這邊用我常用的2家做說明
##### JLCPCB
進入[JLCPCB](https://jlcpcb.com) 將gerber files上傳後開始報價

##### 嘉立創
可自己到淘寶搜尋嘉立創,找到嘉立創的服務店家,,訊息給客服,他會提供估價網頁給你,在上傳gerber及選定好你要的製程後及寄送的地址後,會再提供下單網址。

### 開始自己銲接
在PCB及元件寄到了後可以開始銲接作業了 (元件可參考下方[BOM list](https://hackmd.io/Ousa8f2FR5en0A__dBwdDw?both#BOM-list)))

### 銲接後檢查
收到PCB後,記得為避免更新失敗,請先[更新NiceNano]再銲上去!
在銲接NiceNano時,可以選恆溫烙鐵較好作業,先將NiceNano兩邊hole對準PCB的pad,先下烙鐵預熱再下銲鍚,讓銲鍚流下至pad (鍚要下多一些,否則流不下去)
如下圖示,最好從側面看進去鍚是有上下連通的

接著上Lora module 也是先將module兩邊hole對準PCB的pad,讓module可以和pad銲在一起即可
其實上完這2個主要元件 + RST button 就可以先開始測試了

## Frimware
### bootloader update
將NiceNano透過USB連接PC,在0.5秒內連按2次RST button ,會出現NICENANO的裝置 (DFU 模式)

檢視INFO_UF2.txt內容,可查詢版本

到GIT下載[nRF52 Bootloader](https://github.com/adafruit/Adafruit_nRF52_Bootloader/releases?ref=adrelien.com) 更新版本
下載適合的nice_nano_bootloader-X.X.X.HEX和文件nice_nano_bootloader-X.X.X.UF2

首先將.HEX文件拖到NICENANO裝置上,然後將.UF2文件拖進來(拖進NICENANO上傳完後會將斷開連接並重新啟動)
再重新連接NICENANO裝置,檢查INFO_UF2內的版本是否更新

### Meshtastic firmware update
取得fw的方法(擇一即可):
1. [Meshstatic官方網站](https://flasher.meshtastic.org/)取得
2. 到 [mrekin.duckdns.org/flasher](https://mrekin.duckdns.org/flasher/) 選擇 下載Meshtastic firmware
從清單中選擇“NRF52 Pro-micro DIY,再挑選所需的版本號,最後下載UF2文件

再次將NICENANO 裝置於 DFU 模式
將下載的 UF2 檔案拖曳到NICENANO 裝置上
等待設備重啟(這可能需要一兩分鐘)
---
## 連結Meshtastic APP
燒錄後的Faketec 藍芽預設配對密碼為 `123456`
配對後即可在Meshtastic APP 找到裝置
確認裝置可以進行設備設定 (點擊 `頻道` `LoRa` 進入設定頁面,若一直卡在0% 表示LoRa裝置連線可能有問題,回到硬體確認 ,若是`電源`一直顯示0% 則去檢查分壓電路)

[新增台灣頻道](https://hackmd.io/@BASHCAT/HJjnhN9YA?utm_source=preview-mode&utm_medium=rec#%E8%BB%9F%E9%AB%94%E7%AF%87)
目前頻道頻率大家都移到medium-fast (920.125MHz)

> 注意! 在上電前需把天線安裝好,否則有可能損壞到LoRa模組內的晶片
搜尋附近是否有同頻道的裝罝,發送訊息測試,如果頻道(頻率)設定相同,理論上就要可以收到訊息及ACK

---
## 在MechMap上建立自己的站點
MeshMap 是 Meshtastic 社群開發的地圖視覺化工具,顯示所有公開節點位置
要讓你的 FakeTek 裝置出現在 MeshMap 上,設定如下:
點擊右上設定`...` -> `設備設定`進入設定頁面
### 設備設定`用戶`
設定在地圖上顯示的用戶名稱

### 設備設定`電源`
Faketec如果照公版BOM上件,adc乘數修正比例可設為`2.0`

### 設備設定`LoRa`
* 設定 Modem Preset `medium-fast`
* Region `Taiwan`
* Frequency slot `1`
(LoRa 的頻率會是920.125MHz)

* 啓用 `將消息轉發至MQTT`

### 設備設定`頻道`
為了隠私安全,精確度在1.5km上才會顯示在mesh map上

### 設備設定`位置`
設定在meshmap上的位置座標,若有沒接上GPS的可以選固定位置

### 模組設定 `MQTT`
* 啓用 `啓用MQTT服務器`
* 設定 根話題 `msh/TW`
* 啓用 `對客戶端的代理`
客戶端代理是指透過你正在用的客戶端(連線至Faketec的裝置)做proxy連線到網路 所以客戶端斷線後網路就會一起斷
如果使用裝置是ESP32具上WiFi功能的(nfr52是只有藍芽),並打算透過WiFi連線傳送MQTT資料,這項就可以關閉
* 啓用 `地圖報告`

設定map report的精度 (為了隠私安全,精確度在1.5km上才會顯示在mesh map上)

放一陣子看是否能在mesh map上看到自己的站點出現,大家一起來衝一波吧!
* Meshtastic Map
https://meshmap.net/
https://meshtastic.liamcottle.net/
* 第三方地圖
https://meshsight.nfs.tw/#/index/setting
下圖是我在家設置的節點Faketec可透過具備WiFi功能的ESP32 node上傳至MQTT Host

## 建立自己自足的太陽能節站點
雖說Faketec的耗電量低,但節點要一直充電總是麻煩,如果要放在頂樓或陽台上沒有電力提供也是個問題。這邊提我個人建置太陽能的方法給大家參考
### 太陽能板
以5V 6W的太陽能板來充電2顆18650的電池(單顆容量約在3000mAH)
```
I=PV=6W/5V=1.2A
以 1A 電流充 6000mAh 電池,理論時間為:
時間 = 6000mAh ÷ 1000mA ÷ 0.85 ≈ 7 小時
```
在晴朗天氣下,5V 6W 的太陽能板可以在一天內充滿兩顆 18650 電池,尤其是有 5~6 小時以上的有效日照時(要特別注意太陽能板的角度和位置,日照強度和陽光入射角度會直接影響發電量)。
* 方位建議:在台灣,太陽能板應朝向正南方,以獲得全天最多的日照
* 傾斜角度:最佳角度通常與所在地的緯度相近(台灣約在20°至30°之間,因此太陽能板的傾斜角度也建議設定在這個範圍)
### 充電電池
這邊可選用容易入手的充電電池模組,唯一要注意的是電池電壓要和太陽能充電模組的輸出電壓一致。
這邊選用2顆18650的電池(單顆容量約在3000mAH)
### CN3791 MPPT太陽能充電模組
最大功率點追蹤(Maximum power point tracking,簡稱MPPT)是常用在風力發電機及光伏太陽能系統的技術,目的是在各種情形下都可以得到最大的功率輸出。
這邊選用常見且便宜的CN3791模組,該模組支援4.5~28V,但因為模組上的電阻會配合MPPT,切記買的模組規格要和你的太陽能板輸出電壓一致
CN3791 使用「定電壓法」來追蹤太陽能板的最大功率,太陽能板的電壓在最大功率點附近,在相同溫度下會相對穩定,即使光照強度不同。
設定VMPPT:
VMPPT = 1.205 × (1 + R3 / R4)

要特別注意附贈的JST線(PH2.0),正負極是否正確,我就遇過附送的線是反接的...
也可以選用較便宜的CN3065(不具MPPT,支援輸入電壓4.5~6V),但充電效率較差,且CN3065 ,是線性充電IC,沒有內建防止電池反向放電的機制,建議和太陽能板間串顆diode防止沒充電時逆流至太陽能板。

### 防水盒
好的防水盒帶你上天堂,不好的防水盒帶你節點上天堂
### INA219 電流與功率監測模組
INA219 是TI推出的一款高精度電流與功率監測晶片,雖不是太陽能站點必備模組,但在組裝初期可以幫助你釐清許多充電問題,尤其 Meshstatic 又支援 [telemetry](https://meshtastic.org/docs/configuration/module/telemetry/) ,可直接透過MQTT上報目前站點的電壓電流值
(下圖 CH3 是將 INA219串接至電池,電流正值為放電,負值表示對電池充電)
下圖為Heltec tracker 的充放電圖,看的出ESP32 base 在WiFi connected時的耗電約在250mA上下,這個太陽能站點用了4顆18650電池才有法子在早上9~15時日照充足時充飽並支撑到隔天

---
## BOM list:
FakeTec v5 board PCB([PCB製造商](https://detail.tmall.com/item.htm?_u=m2cbbqob2747&id=624715483405&pisk=gEiUGD6YaHKUgEf6AfEPgPU76ZELPuRXZ0N7EYDudWVHyJtl4Yk0FpdJpVyoNfpJpkMuabl_6gwWJQIr_XMmRyGSR72usfDCA7tLzbkjMbsWv2wl4fM8rbiregyoEbpLNpLspvE8qIOjanMKppXZfZmFxAXiB-yhtFah8hkBCIOXc38hIuReGbiiyRGg3-quKz4lSdy7LajoZzVgS5e8E62lxdkg652uZgV3SG2YH7quEz2Gs8wVq_V3ZAjg68qlKJcoIdy7s7quqbDiNpHnEGyb-dvqWzQ2MLqYivVNqiWTLyvZCasADoy380fasg2sbJzUivmdUoAaIcialP6W9lDx5X2a03SgYroK0PmH6glq_qqaOxWVVAks9mrn0BSQCzPESD4NEgDLfVlSzXRFJW0I_regST-YCjNipD0we1DnGWr3IPtD3A4o5DUxACjUmqHQA4cMbMlc4q58I2Hx225lzy2TQS9wQGKl9v8swztFyaUgDRPXdJ_Ryy2TQS9wQaQ8S5eaGpwC.&spm=a1z09.2.0.0.22a42e8dpxJxPQ)) (65RMB/30Pics)
1x [Nice!Nano (nRF52 版)](https://item.taobao.com/item.htm?_u=m2cbbqobc879&id=924361799570&pisk=gY84GINdQq34Ly2SlLQaLgI1ekQAPNkIIF61sCAGGtXmXsgg7CRh1jHtM35MCLhtMZOGQdJ5eP1sDAUwUKOHci96cOfGELAblOgAbdRBpdaskn1g7LOOjdTw6P5MsdhACjnWMIQOSvMBQ2OvMjVyPkY4ozXkw620i0s004RjNvMIRVo0ZNkqddTkDxJlT6bGiGjgqb51gl4MIGjuZTCOs-fgobRleTfGIPXcqzfd9ObgmGflE65anSqci8Ale1bGstvMZb51EObGSdAoNFRDsz5Cmbce2GEU6W_5KIXzSyPRgiDwalaU8o1cm9jlDPfWzsSVKIYY_wDPZUTPAgNsHaApVKfP8VzluM8v8gYmePJeUHbPhBPU5QRWHe7D8xzfNGW2qEjzsPAAP3J6bKk4DtxXUMClq5udNp6kMExr68ADdt7cZggnTQjMVEIplY4V-HdflhvozrJh4RyOZndpWnygbifRa9Graz3gHIoWBGg4XlIlJ_WIGsZTXifRa9GralEOqTCPdj1f.&spm=a1z09.2.0.0.22a42e8dpxJxPQ) (13RMB)
1x [Lora module HT-RA62](https://item.taobao.com/item.htm?_u=m2cbbqobf7ae&id=687692791680&pisk=g3AgTJNNtdW_KyF_IqfsCWbYO4kpf11XgnFADsIqLMSIlRet5t72onAvBESAinxDmGBqf1dDxUTx5I31_jb22HfvWGIvxqx9lSnsh1F4mhTrfFIx5IjVxh-chVsA0ixvud3KwbL65s1Vi0h-w0Ja04Kg3ZWqu97Ru2QZRdl2Us1q2m2LgOGlGh-elS44LwSCoZ7Vun5ETabPgZSNg2jFoaw4bn5q-2bcuoPN3N7UYZsU3oPNuXWFzNba3S5q-eSCusS20OuH8M_VgilVLSSkgBOEm8J-flOukL_GIg8NbELvTlWUCeInTXAHKMsrwMV4gBbMRTc3t7DA4LsOeixE95fD8ZxlrhqEJMJH8C6RZYyM4hOcnB6nNzjesEAhCpEaQafGjTRNCzgf1tJHt1dZc8Tp-GWl9pHIXtCMjLs5QviBmej90CXUjDIveedNK3oLtn6DQhbFag8TL88pvS_EkBybhO7C-gpDJ7oi5FHx-203FA6NRNn--22bhO7C-g3n-8ZfQw_t2&spm=a1z09.2.0.0.22a42e8dpxJxPQ) (21.9RMB)
1x [XB8089D0](https://item.taobao.com/item.htm?_u=m2cbbqob8596&id=894872794753&pisk=gtCuGpGyiTJ7r8GSEyA7FjYKGPyxVQOCTMhpvBKU3n-bRYH8Pp8F-Mfdew-ptMjhx3pUVQChmN_LP6UWaWYFXiAdy3KdmyjRRXE7dQhExg_aVaKLP6xemgSHdztpYHjd8TUY65Q5PBOetlFT6lWrYPIo43kz8n8p-rLzlTPFQBOUXkDxTLNMOgSVAZFr3E-X-e8e8MR4gFYwTeJeLrx2-FME4MRUorYH8DlyLU8q0etqY4-ETmJ27UcE4U-zoZ-X-0ReTMR4oet2YBRENOhej65fgkDNBuiWK71MrLxNz37dJsoBUY_Jm61dgUbDJakITX5DrLfdZY-ejLBF5d1R7WcXwNX2gUjU_uJfUZfHC6izuBJFNZ5De2z6lTSlgpfYR8_ct3vNaK0ttQbX8MJhhlc9rQBDI_X7Rm7PX3XwNw3g2ZvGndT232DywOQOOd5zZctvCejMSgml4VHqQZIxOEzdgvMBUETDX9bx_u45yJU0orD_FL8XylU0ovMBUETDXr4mCD9ylUEO.&spm=a1z09.2.0.0.22a42e8dpxJxPQ) (0.55RMB)
3x [SI2312](https://item.taobao.com/item.htm?_u=m2cbbqobbf39&id=583846208155&pisk=gZK_TBZrC5V_77TR5ikUVpbAausffvorD-6vEKEaHGIOlopwNtrVuVXbc69-I1umSITBMBbN6s7VctOPtdrqIdkjcKpR6i8N_tdeGB4w_n52Tm9kNNrwHnyM-QJ8bhuG0osGmihra0orIdjcDD3EtTFgJOW-0PCOBGjLa1wZy0oyIpwNBYJK4nPSxuWUkodAWwQdF6BTBtCxdwBfUiEOklUL96XADiQADJCdhTZY6idYvJBABoUAkiedvTW5DsdYWv9dttsAMIIxdph5286j51vsFM9n8JDIjB1QDoKCpffJCoqcph6sJ_91ObHMAub1wdCQDbJLvR1ft3hERpAvWCWHG0GCvLLCX1-Kwo12rt9AFg34bdIF1IjwvxUOwFRNvhL7HopCf6bcpCVsO_KMp3jd80HWpHAwIH94HmBea6pMXii-EGsO6M6H0XqOGeLvbNj06fsvdtIzru57Sczbdaqfd_kIdr40eZEeMw8GDpQOKO_EdvN9oNBhd_kIdr4cW9X1UvMQ6Ef..&spm=a1z09.2.0.0.22a42e8dpxJxPQ) (0.91RMB)
2x 3x4x2.5mm SMD buttons
1x 1206 1k resistor
5x 1206 10k resistors
2x 1206 10M resistors
4x 1206 100nF, 10V capacitors
1x [JST 1,25 connector](https://item.taobao.com/item.htm?_u=m2cbbqobc4c0&id=865275073304&pisk=gr8zTWNOL43rYR2jPKQUQiICHlQRPwksKe6CtBAhNTXov_g38BRGObHKwn5HdKhKwaOhLpJfHy1I2vUe3LOMVg9BV9fhnKA7P9gRYpR6BpaIy3138KOdxpTe9y5HtphRdbnXwQQd-AM6LVOJwbV2llYPtoqDM1zuxmsu4qRSGAMs52ouiwkrCpTD2kKc_1bhZMj3mj5Cak4HKMjcitCdt8f3rjRcHtfhKyXlmrfO69b3-64cm1fNK8XlEIfcH6bhKpbngZXAtwXHKwcSXQA3u1soif-AvlubiaXMZtz37SCPqrR7AyULR_jlIif8-sTVagWMZUFFSx5DlES1cWMRoCKXEs7Z8rbPbULNmUDY8dJ2jZWW_5zBgI9J7aYZUz1fYT-DriP3-QQX0pteUYrRE39VXsj0TVCXCtAJrnlLnQv1UafccVcwiMxXyGLSnz7MXQ_WxK04zdjz3JCD2CLp4JqFqsCVCjl4k22Jam9dA4rLvibOgOG5NkEdqsCVCjl4vkIcHsWsN_1..&spm=a1z09.2.0.0.22a42e8dpxJxPQ) (optional)
---
---
## Ref:
Meshtastic Taiwan 快速入門指南
https://hackmd.io/@fL8pq60EQsG3RplVzWfGWA/S1m_x-AOA/%2FKtImBLBJSK2hFSJv8k6-eA
https://adrelien.com/diy-meshtastic-how-to-build-your-own-meshtastic-device-with-faketec-pcb-nrf52840/
https://meshcn.net/what-is-fakeTec-opensource-diy-meshtastic-project/
如何讓節點出現在地圖中
https://www.facebook.com/groups/meshtastictw/permalink/415687787507086/
官方meshtastic
https://meshtastic.org/
線上版(Web Client)
https://client.meshtastic.org/
官方刷fw
https://flasher.meshtastic.org/
https://github.com/meshtastic/firmware
Meshtastic Map
https://meshmap.net/
https://meshtastic.liamcottle.net/
第三方地圖
https://meshsight.nfs.tw/#/index/setting
nrf52840介紹
https://kriscables.com/supermini-nrf52840/
https://nicekeyboards.com/docs/nice-nano/
使用RA-01SH-P(帶功率放大器)的Faketec介紹
https://becoder.org/DIY-Meshtastic-Faketec-v5-and-Ra-01SH-P/
meshplanner.mpatrick.dev 根据地理位置和设备参数预测信号覆盖范围,帮助你优化网络规划。
---
# MQTT 確認封包發送
MQTT Explorer https://mqtt-explorer.com/
輸入Meshtastic官方public broker的位址以及帳密
Host:mqtt.meshtastic.org
Port:1883
Username:meshdev
Password:large4cats

(Advanced,新增 topic : msh/TW/#)

訂閱TOPIC後 Node發訊息可在這看到MQTT封包 (亂碼是因為訊息加密)

要解碼的話就要用其他工具, 可以參考:
https://github.com/pdxlocations/Meshtastic-MQTT-Connect
---
## Home Assistant 的 MQTT 設定範例
### 電池電壓感測器
```
sensor:
- name: "Meshtastic Node Battery Voltage"
unique_id: "meshtastic_node_voltage"
state_topic: "msh/US/2/json/LongFast/!67ea9400"
value_template: "{{ value_json.payload.voltage | float | round(2) }}"
unit_of_measurement: "V"
device_class: voltage
```
### 溫度感測器(假設節點有溫度模組)
```
sensor:
- name: "Meshtastic Node Temperature"
unique_id: "meshtastic_node_temperature"
state_topic: "msh/US/2/json/LongFast/!67ea9400"
value_template: "{{ value_json.payload.temperature | float | round(1) }}"
unit_of_measurement: "°C"
device_class: temperature
```
### 訊號強度(RSSI)
```
sensor:
- name: "Meshtastic RSSI"
unique_id: "meshtastic_rssi"
state_topic: "msh/US/2/json/LongFast/!67ea9400"
value_template: "{{ value_json.payload.rssi | int }}"
unit_of_measurement: "dBm"
device_class: signal_strength
```
### GPS 位置(需搭配 device_tracker)
```
device_tracker:
- platform: mqtt
name: "Meshtastic GPS Tracker"
state_topic: "msh/US/2/json/LongFast/!67ea9400"
value_template: "home"
json_attributes_topic: "msh/US/2/json/LongFast/!67ea9400"
json_attributes_template: >
{
"latitude": {{ value_json.payload.position.latitude }},
"longitude": {{ value_json.payload.position.longitude }}
}
```
---
## Question:
nrf52的ap212k發燙
-> 有一定比例的nrf52上的3.3v LDO(ap212k)發燙(檢查3.3V對地沒有short,也斷開後端LoRa module),,原本正常的約在0.003A,目前異常都會上昇到0.1~2A
-> 在置換 ap212k 後,電流恢復正常
太陽能站點在電池過放後(低於3V),重新充電後faketec有機率會無法正常開啓,且有機率造成flash內部資料被reset
->
https://docs.nordicsemi.com/bundle/nRF52832_PS_v1.9/resource/nRF52832_PS_v1.9.pdf