無線電與生活 之 我要睇 RTHK31

 

rthk_31

 

城市生活,無線電早已充斥生活每一部份,由 4GLTE5G,藍芽,Wi-Fi,電視電台廣播以至無線充電等等。

用家也覺很老逢,打開電視收音機就應有聲有畫。電訊服務俾錢就有咁。然而固中傳送原理,少人探究。

近月收到一個 case,附近屋村有長者收不到 RTHK31,望能解決。 過程起用了 SDR,天線等知識。最終是成功解決,但真係有d靈異。

我這和電視絕緣多時的人,即時反應當然是解點唔上網睇,鐘意幾時睇都得。不過活到這年頭,不會傻到諗到就講出口。人慣了一種模式,年長後往往很難或不想改變。

rthk31_freq

 

先到 rthk 網頁看一點資料,RTHK31802MHz,頻道 62。然而其他頻道則集中在 586MHz。其網頁也有一個可接收屋苑 list 和覆蓋範圍。

http://rthk9.rthk.hk/about/dtt/intro.htm

有這個 list,咁即係佢既廣播唔多係廣播….. ,2020年都 o黎緊,有無搞錯。

est_list

街坊個 Home Base 榜上無名

 

rthk31_coverage

 

見到個 list,就想起數碼收音機廣播之死,當年也是有覆蓋範圍,地圖等等資料。

做了基本功課後,上門拜侯一下;原來唔係睇唔到,而係在 analog 睇有雪花既 31,32;畫面上面也已顯示了出年年尾analog 停播通知。今年年頭換過電視,情況依舊。

整個系統,是屋村公共天線接高清電視。

ptv

Picture from RTHK Web

 

auto scan 掃描一下,結果仍一樣,數碼得 7 個台,analog 4 個。掃描其間,會顯示當時頻率,802MHz 一掃而過。

心諗公共天線係收到咁多就咁多,電視支援該頻率又如何,我可以點。

徹退回家後,用回 ham 佬設置電台的思維;應是公共天線系統先於數碼 RTHK31,該系統不是 cover 唔到 8xxMHz,就是不支援該 channel。我對公共天線系統認識係 0,估計系統應有 program 支援 channels 供辦識。

解決方案也是 ham 模式,用一 21 出的天線 combiner ,一邊接回公共天線,一邊接一條 802MHz 天線咪搞掂囉。

話需如此,如真係 work 的話,又如何安置那條自製天線呢。有了公共天線後,魚骨天線基本上不允許安裝,我也不想咁覆雜,幫下街坊免費既,最緊要簡單快捷無翻單。

出鴨街一趟,通街都係 1n 出的天線 splitter,就係無 2 1 出的天線 combiner,有點失望。買了幾個天線頭走人。

回家翻箱到籠,找到一個一入三出的天線 splitter,打開不外 LC 線路,沒有極性的,那反接為二入一出也有希望。遂將輸出銲上頭,輸入接公頭。

splitter1

這個 splitter,廿年前觀塘得利購入,包裝跟足日本萬視寶,但全無萬視寶 logo,廿年後才知假貨是也。

 

splitter

 

combiner

 

802MHz 天線,一貫簡單可靠的 dipole 即成。半夜三更,單芯銅線用廢棄 Cat 5 網線開即有 8 條。所有東西皆是多年剩落的剩餘物資,難得減磅清掉。

rthk_31

Dipole 呎吋有牌既或還記得中學物理課的波長理論應識計,用唔著講也無謂。

 

整完條 dipole 後,才記起那堆 SDR 手指均送吸盤天線一條。用得著埋去。

sdr_ant

 

之後擇日再次到訪,先用 SDRSDR Touch + 吸盤天線到窗邊接收到 802MHz,係無野睇既,心裡一涼,個頻道表話慈雲山成千火o既,今次點收科。

唯有用自製 dipole,接收 802MHz 訊號強勁。外型簡陋 but really work

802

 

先吸盤天線後自製 dipole,純粹顧及外人觀感問題。我地這些 ham 友,自製器材很普通,也多比同類商品可靠耐用。唯一問題就是外型不夠美觀。一般人往往覺得不可靠。甚至會認為接上其器材會整爛佢部機。

個電視放在窗旁。我也決定如個方案 work 的話,將條 dipole 搵熱縮通包一下後用索帶紮在窗框支架就算。

之後接上那個自製的 combiner 和公共天線接頭,再 auto scan,結果如上次到訪一樣;那個 combiner 是失敗的作品。

反正都唔 work,唯一希望用 802 MHz Dipole 直接接上電視,咁好歹都應收到 RTHK31 掛,其他 channel 我暫唔理。

Auto scan 結果係 10 個數碼台,多了 RTHK31,32,33。代價是那四個 analog 嚴重雪花紛飛。

OK,咁放棄那個收唔哂公共廣播既所謂公共天線系統,用回 dipole 札窗框。那個 dipole 太簡陋,回家執靚仔再安裝吧。

插回公共天線系統,著電視,神奇的事情發生了,RTHK 31,32 ,33 仍在。我呆望數秒,鐘意既就係聖誕奇蹟,唔鐘意也可稱之為撞邪…。

Auto scan 再掃一次,仍是和接 dipole 時一樣收足 10 個數碼台。

為怕走了之後又唔得,熄電視,著電視,auto scan,動作重覆兩次結果仍是一樣。

好,將四個 analog 雪花台在電視設定 hidden 掉。任務完成,人家當我神咁拜,我聖誕老人上身話以後唔使再睇 CCTVB 啦,哈哈哈哈聖誕快樂走都走唔切 …

 

後記

屋村公共天線系統,成了屏敝資訊的樽頸,要點小秘技才能開通,怎說也不通。需廉租屋但有交租,唔係免費住。而家唔係要收 ham band ,係收廣播。

用一條 dipole 先掃一次,再接回公共天線,即可收到各本港廣播頻道,我認為

該系統是可覆蓋 802MHz 的,但可能較早設立關係或保養已失效,加設頻道要再收費又談不隴,甚至該公共天線公司可能已倒閉了。

然而,只要電視記住了該頻率後,就可無需公共天線系統的其他辦識配合,條 path 被動地打開了。

再看那個頻道表的發射站數量,位置之廣,功率之大等資料,只能斷言當年數碼收音機廣播之死,不在用家慣性收聽 FM,不購入數碼收音機等等理由,而是政府跟本消極推廣至陰乾為止。

農曆新年將至,ham 友拜年的親朋戚友如遇到這個問題,不妨表演一下。work 就當 bonus。 業餘無線電其實也很入世的。

仲有一日就 2020 年,廿幾日後就庚子年了。這裡拜個早年,祝出入平安。黑暗終必過去迎來光明。

Posted in Digital Radio, Research | Tagged , , , , | 6 Comments

9600 baud Kiss mode TNC 試製

 

9600_cover

 

本文的先導文章 “保持冷靜,提升速度。from-aprs-1200-to-9600 ” 是數年前的,請先參考閱讀,這裡不重覆。

 

前言

Blogaprs 為切入點介紹業餘無線電,雖 aprs 往往就是1200 baud 了。但也不斷尋找機會講高速 9600 baud (下文全稱 96)。

個人情感上,96 TNC 是本 Blogaprs 仍缺的一塊 puzzle,極希望補上一可行,價格合理,同好可仿造的方案。齋講 1200網上資料多的是,無需睇我。

這個 project 由年頭搞到年尾,除私務繁忙外,缺乏一個 96 on air 的平台也是一個難處。

為此我的最終方案是:

DirewolfSDR 手指,作為一 9600 Rx-only i-Gate 和作兼容性測試。

FTM-350 設為 96,作為驗証,對 talk 機。
TH-F7 設為 96,配 aprsis-32 ,接本文介紹的 96 TNC

最後以 96 速率,作簡單的短訊,email 通訊測試。

 

先講 96 tnc

首先,緊記兩件事:

Teensy 剛推出了 4.0 型號。我們用不著,選回 ver 3.6ok 了。至於原作提到也可用 ver 3.2 (size 較細和便宜),本文提到的 PCB 是支援的。

但由於大部份參考文章,圖片也是用 ver 3.6,也無謂為省一點錢也購入最終不合用的東西,所以購入的是 3.6

Arduino studio 最新版 1.8.10 暫不兼容 Teensyplugin (裝不到),所以用回 1.8.9ok 了。

 

Pi-Teensy / TNC-Pi9k6

硬件原是一開源方案,是 G8BPQ 設計,並開發出一種用在 HFprotocol,名為 ARDOP

網上也有 PCB gerber 檔供下載。無需自行花時用萬用板接駁,成功率高。本文也已此為基礎。

Link: (內附線路圖)

https://www.seeedstudio.com/Teensy-TNC-for-Raspberry-Pi-V4T-g-1097792

W2FS 據此硬件為藍本,軟件修改以支援 1200bps / 9600bps kiss mode。是一商品化 open source 套件。名為 TNC-Pi9K6

這應是暫時唯一網上找到可供自製的 9600 速率 tnc 方案。

所以兩者線路基本上是一樣的,但 PCB,我們就是用 G8BPQ 設計的原裝貨。

原裝貨的是好處是,接到 RpiRx/Tx pin 是用 jumper 分開的。我們只需將 Teensy 那邊接到一 TTL to USB  module,就可連到電腦了。

9600tnc

 

另也設一 jumper for 電源 5VGND。接到 TTL to USBmodule 就可 USB 取電。

 

 

線路對比

 

96_org_tnc

Pi Teensy TNC

 

96-tnc

TNC-Pi9k6

 

原線路 cap c7,c6TNC-Pi9k6 砍掉了。不關鍵照跟即可。

c5 如用在已內置 DC blocking cap 的收發機接口上,無需接上電容,短路之即可。

 

 

組裝

開始前詳閱 TNC-Pi9k6 的說明書。
link:
http://www.tnc-x.com/TNCPi9K6.pdf

理論解說:
https://www.tapr.org/pdf/DCC2017-TNC-Pi9k-KD0QYN.pdf

零件很少,沒難度可言。唯一留意的是 PCB 電阻用了 1/8w size 的。一般 1/4w 電阻放不下,需斜傾。1/8w 電阻在麥氏有售。

留意五枚 LED 極性方向不一,右邊一枚是反向的。

LED 功能表示由右起分別是 PTT,Rx,IRS,ISS 和 最後的不知名。用得著的只是 PTTRX。其他當 reboot 時的走馬燈吧。

Rpi 連接的 40pin header,其實需用到的是 Rx Tx Gnd 5V GPIO18 幾針而已。最終不是用在 Rpi 的用飛線接 Rpi 即可。

Teensy 和二款 IC Digikey 購入。

留意電子 Volume IC MCP4261是有分不同內阻值的。我們用的是 50K ohm,即 part no. MCP4261-503E/P

接對講機的有三接頭可選,minidin,db9,pin header

Mini din 無可否認較美觀,但之後如要拆開超麻煩。

Pin header 簡單但易損壞,所以還是用 DB9

 

96tnc_complete

 

惱人的 hex file

TNC-Pi9k6 下載完整的 zip file

http://www.tnc-x.com/TeensyProjects.zip

爆開後,在folder  “TeensyProjects\SM_Teensy” 內有一個 hex file  “SM_Teensy.ino.TEENSY36.hex” ,心諗今次發達,做少好多。在 Teensy PJRC 網站下載其編程軟件,將 Teensymicro USB 接到電腦的 USB port,按序將 Hex file 下載到 Teensy 內。

Boot 機係無問題,LED 如走馬燈閃一遍。但就是不能和 Rpi 設定程式溝通。由於疑點是在 Rpi 那邊,所以浪費了相當長時間 trouble shoot

最後,還是自行 compile 的才 work。方法簡介如下:

首先確認 Arduino studiover 1.8.9 或以下。然後到 Teensy PJC 下載 plugin 並安裝之。

將上述 zip file 爆開後的 TeensyProjects ,抄到 arduinodefault location

留意內附的兩檔案,boards.txtplatform.txt 需抄到的地方與說明所述有異,跟內附的 readme 做。

打開 ino 檔, boardTeensy 3.6sketch Verify/Compile 並上載到 Teensy 內。

怕麻煩的,我將我的 hex file 上載到

完成後,將 Teensy 插到 pcb 上備用。

 

Rpi準備

Rpi 只是用來 config TNC 的設定,我最終的用途不是在 Rpi 上,所以簡單為主。

update 也不做了。在 X windows 環境下,作基本設置將 serial  打開,就下載設置 zip file

rpi_serial

解壓後,如放在 tmp folder,有可能 reboot 後不見了,所以抄回 download folder,按 open current folder in terminal

rpi_terminal

 

由於是 Linux 環境,我們需先設置兩檔案的權限。俾盡佢 777

rpi_777

查看是否可和 tnc 通聯,並讀入預設值

sudo ./pitnc_getparams /dev/serial0 0

 

rpi_config

 

一切順利應見到這個畫面。否則你將陷入苦戰,留意 Rpi 3Bserial port 給了 BT 使用,需轉回給系統使用。

四個 parameter 需更改。

on air speed 轉為 9600

sudo ./pitnc_setparams /dev/serial0 0 8 96

Tx delay 改為 100

sudo ./pitnc_setparams /dev/serial0 0 1 100

Tx 電平設為 96,即約 1V

sudo ./pitnc_setparams /dev/serial0 0 10 96

Rx 電平設為 0,即自動調較

sudo ./pitnc_setparams /dev/serial0 0 9 0

 

之後以 command reboot 一下,再讀入 parameter 確認讀數 ok

sudo ./pitnc_setparams /dev/serial0 0 15 2

無問題可 shutdown Rpi

拔掉兩接到 Rpi Rx Txjumper,接上一 TTL to USB modulemodule 需是可從 USB port 取電(5V) 供下位機那種。

一個 96 TNC 就完成了。

tnc usb

 

9600 iGate 的設立

承舊文,以 Direwolf + SDR 設立一個程序是相若的。

只是舊文是 ver1.3,現在的是 1.5

首先跟 Raspberry Pi APRS 文件內容安裝。

然後需按 Raspberry Pi SDR iGate 安裝 rtl-sdr library 。如不安裝,下文提到的調校會出現 error 訊息。

調校

9600 要求較高,不調校的情況,盡管是用高精度的 SDR 手指,效果是相當不濟的。

調校需一個準確的訊號源,一般網上是介紹接收到電話基站的 GSM 訊號。

但以 SDR 手指自身震盪頻率去得出誤差值 ppm,這避免了接收和干擾問題。

留意所謂高精度手指,其誤差值 0.5ppm 是指線路使用基本頻率震盪器的誤差值。

乘大左後,誤差值也隨之增加。

以這個 command,每1分鐘取樣 ppm 值,等 10 鐘後再取平均值。

rtl_test -p60

以我的 SDR 手指為例,取 7ppm

igate_ppm

 

再輸入以下 command 踢著 9600 Rx iGate

rtl_fm -p 7 -f 144.64M -o 4 -s 48000 | direwolf -c sdr.conf -r 48000 -B 9600 –

 

igate96

有了這個 ppm 補償值後,短期測試接收成功率是 100%

 

實戰

首先將 96 tnc 接到 TH-F7。留意收發機必需支援 9600 baud 才可用在 9600 baud 方案上。

TH-F7 設為 9600 bps,連接方式設為 TNCTNC 模式支援 squelch,但這個 TNCsquelch 輸入。雖用回普通的 MIC/SP  也可,但就受機上的 volume 影響輸出值。用回 TNC 較易成事。

TNC 接到電腦一 USB Port,成功連接後到裝置管理員查看 com port 編號。

aprsis32 (vr2xkp-8) ,設一新 port。選該 com port 號,參數 19200,8n1

用已設好 9600FTM-350 (vr2xkp-6) 發射一個 beacon (dummy location)iGateaprsis32 均可解碼。

96_aprsis_rx

 

aprsis32 發射給 FTM-350SMS 訊息,也可成功解碼。

350_96_decode

 

 

aprsis-32 發出中文 SMS 訊息到 Android phone (VR2XKP-3),訊息支援中文

aprs_sms_ch

 

aprs_sms2

 

 

 
APRS to Email,sure no problem

Ham 友想為在地設立一 radio email system,作為 disaster 備用方案。這就是 Pi Gate 方案的目的。

到其官網,下載 Rpiimage,跟著 user guide 就可設立一個 gateway client 了。

Pi Gate 方案的好處是可於 email 內嵌入圖片。

覺得複雜限制多 (不是人人都喜用 Rpi )。其實唔介意純文字 email 的,更簡單用 aprsis32  也可。

aprsis-32email,就可發出簡單的純文字電郵訊息了。

 

aprs_email

 

aprs_email_ch

 

aprs_email_ch2

 

aprsis-32 發出電郵,約有幾分鐘時滯才收到。

最後提醒一下,不論任何形式的 on air to email /sms,總有一個接上 InternetGateway 去處理。可以是 aprs.finetwork,也可以是自行設立的 Pi gate 等方案。

 

總結

網上甚少介紹支援 9600 速率的 TNC,希望這文能帶給大家一些新點子。

這個開源的方案伸延性高:例

原方案是在 HF 下運作的 300 baud 系統,有設立 HF 電台的同好一試無妨。

Rx Tx 接到一 BT moduleHC-05 等,設定好速率是 19200Teensy 溝通即成為一個支援 9600 on airBluetoothTNC 了。

這是一美國同好的設計,起用在地的 Teensy 模塊,是有點貴之餘,也用不盡其功能。將其開源程式移植到其他 arduino 平台如上一文的 STM32L432 上,既省錢又較易入手。

Teensy 本就內置 micro USB port 了,但就需另置 TTL-to RS232 模塊去和電腦 talk,是有點無奈的。更改程式將之用回 usb 也是一個好課題。

參數設定兩程序是在 RPi 運作的,唔用 Rpi 方案就會覺得搵搞。而這些 arduino 模塊剩餘的 GPIO 眾多,將之用來設定一些參數(如1200/9600) 也是可行的

線路上的電子 volume icMCP4261 是難尋的。但想通了也不外是兩個 vr 而已。 用兩個 50k VR 取代並以人手調校也是一個降低成本的辦法

open source 方案就是留有空間給想像。

 

 

剩餘物資免費贈有緣人

 

9600_pcb

pcb 做了十塊回來,用唔哂也不值錢。本地同好想進入 9600 的世界裡,可 FB 私訊或電郵給我,先到先得,郵寄送遞,送完即止。

沒有條件,但為免浪費,來函的同好需証明你已有關鍵的兩零件,即 Teensy 3.6 和電子 volume ic  MCP4261-50k

証明可以是照片,或網上商店的訂單。總之証明到就 ok 了。所有通訊資料寄出後銷毀不留檔。

Posted in APRS, Research | Tagged , , , , | 1 Comment