PIC16F88 TNC 試製

main

 

前言

跟著應是一系列的 hardware 文章,要渣棘雞喇。

Ham 欲進入數碼年代,一部 TNC 少不免。

PIC16F88 TNC 是網上最普及的 TNC 方案。當初放棄這個方案而用 TNC-X,主要是我有 MX-614 IC,並信硬解比軟解好;但對其他跟著做的有困難。

再者, 網上講到爛哂既野,我個 blog 就盡量少講,自己上網睇就 ok 啦,無需我獻醜翻譯。

但最近發現原來一位意大利的同好 IZ8EWD 長期默默為這個方案改進 firmware。他最近在九月釋出的 firmware ver 2.31 ,應是這個方案最 latest 的版本。

既然有人咁有心,咁就應幫佢煲一煲。

以下是版權聲明:

PIC16F88 TNC 原刋於 QEX 3/4 月, 2005An Inexpensive Terminal Node Controller for Packet Radio” 一文。原作者為 Bob Ball WB8WGA

意大利的同好 IZ8EWD 跟據其開源程式碼,多年來不斷改進。最近釋出的是 ver 2.31 版。

 

硬件說明

本文主要依據 IZ8EWD 的網頁資料編寫。其他版本,circuit一樣,只是 firmware 各施各法。不續一評頭品足。

PIC16F88 TNC 原作者開放了其 source code,好處是愆生了不同的版本。壞處則是資訊不夠集中,又英文,又德文;baud rate更各式其色。 IZ8EWD 的網頁更以意大利文編寫,一般搜尋不會排在首選位置。我也是搜尋其他東西時無意中發現。

clip_image002

Firmware 歷次更新表,open source 附予了這個 project 生命。(Countesy of PianetRadio.it)

線路方面,只一枚 MCU PIC16F88RS232 電平轉換如用Transistor 線路,更可省回一枚 Maxim 232 IC。請留意,官網的線路圖有 LM386 作為輸入前置放大部份。個人經驗如用手機是不需的。

clip_image004

Countesy of PianetRadio.it

感溫 IC 18B20 是在 data line 取電。所以 VCC 是落地的。另留意,18B20 價格較貴,降低成本唔用也沒影響。

rear

我一向認為,on broad temp sensor 作用不大。這個 sensor 放到後方,作為日後電池的 temp sensor

 

16F88 編程

沒有編程器,可用最簡單的 JDM 方法,請參考:

JDM programming for PIC

 

Why IZ8EWD ‘s version

他的版本提供四種模式:

  1. Standalone TNC mode
  2. Tracker mode
  3. aprs tnc mode
  4. KISS mode

各版本的 baud rate 統一為 4800bps

 

Google Translate 開的玩笑

話說原文是意大利文,唯有靠 Google Translate 翻譯成英文。Google Translate 一向也是這個網誌的伙伴,我有很多外文資料也是靠她幫忙翻譯,一直相安無事。直至在這個PROJECT 上就出事了。她將一些 CONFIG 指令搞亂了。

KISS mode 下,退出指令應為 0xc0 0xff 0xc0,他卻錯誤轉為 0xff Oxc0 0xc0

Tracker 模式下,UNPROTO GPSC 的指令錯誤譯成 UNPROTO JPIC

 

裝嵌與調試

線路是簡潔的。留意 J4tracker 模式下,接駁了 GPS 才需短路落地的。

為求效果良好,R1-R41% 電阻。

R9Yaesu 手機發射所需,Kenwood 制式則無需接上。

如上文述,LM386 一組連 R17 也省回。

一切順利的話,將已編程的 16F88 裝上就 ok 了。

今電腦沒有 com port了,需配備 USB to RS232 port cable

DSCN0725

 

circuit 接上電腦和發射機,還預備另一台接收機監聽。

Windows 7Terminal 程式可用 RealTerm。速率設為 48008N1

ReaTM

 

輸入指令 CAL,線路會發射 1200Hz2200Hz 交替的音頻訊號。在接收機監聽到後,調一下 R12,使訊號電平致合適水平。

 

指令和設定

輸入 help,可看到簡單說明

輸入 disp,可看到各現行設定

輸入 perm,儲存各現行設定

輸入 restartreboot TNC,更改設定後建議 restart 一次

 

各模式試用

注意,各模式的 config 不同,沒有萬能 config 的。而留意一點,部份模式的 config 會在轉 mode 自動更改原有的設定。所以請先抄下 config 供日後參考。

預設參數:

ECHO ON

TEMPerature C

TXDELAY 100

GPS $GPRMC

MONitor ALL

MYCALL VR2XKP-14  <==請用回你的 callsign

之後用perm save 設定

 

Standalone TNC mode

這個模式是一個獨立運作,無需上位機 (e.g.:電腦,RPi等) 指示 TNC;並可致能成為一台 digi-peater

我的config: (僅供參考)

UNPROTO ARPS v WIDE3-3

BTEXT !2229.90N/11421.5EzNewTNC Temp- \t

BEACON EVERY 1

MYALIAS WIDIE 1-1

DIGI ON

之後用perm save 設定

clip_image006

iGate 收到其 packet 後,顯示於 aprs.fi

 

Tracker mode

我的 config: (僅供參考)

UNPROTO GPSC03 v WIDE1-1,WIDE2-2 <== 初步實驗應只支援 Primary table

BTEXT > New TNC Temp- \t

之後用perm save 設定

連接 JP4,並接上 GPS

GPS 定位後,tracker 會發出 aprs 制式的訊息,iGate 會將之轉發到 aprs.fi。唯發射周期需先設好,沒有手動 PTT

trackermode

 

KISS mode

我的 config: (僅供參考)

KISS ON

之後用perm save 設定

restart

 

KISS MODE 需上位機及其所用軟件支援方可。簡單來說,上位機砌好所需格式的 STRING,發向 KISS mode TNCTNCSTRING 加上 crc 後即發出,不會做任何轉譯。

進入 KISS mode 後,儲存後必需 RESTART 才會正式進入 KISS 模式。如需退出模式,則請輸入 C0 FF C0,自會再進入 cmd 模式,然後輸入以下指令關掉。

KISS OFF

PERM

RESTART

實驗發現,RPi DIXPRSKISS mode 不兼容 (儘管接收 LED 會著),但不會將收到的 Tracker 訊號轉到 aprs.fiRPiaprs4R OK。初步估計和上下位機的 KISS mode 指令不完全兼容有關。

 

APRS TNC

輸入指令 CONV 後 ,他只會處理 packet 中的 UI frame。官網上將之配上 UI View 上使用。並附上 UI view 用的指令檔。由於我早已放棄了 UI view。所以暫不理這個 mode了。

日後在系統整合時看可否用得上。

在各模式下,BTEXT 的温度參數也不能用” \t ” (\前有space )顯示出來。由於我只有一枚18B20,而且還是從舊機拆下,所以暫當是硬件問題。

 

總結

PIC16F88 TNC 雖功能比不上一些商品級的 TNC,但勝在模式多。而這也是一個簡單,彷製容易的方案。初學者如未有 TNC,可考慮一試。

Posted in APRS, AVR / ARM | Tagged , , , , , | 6 Comments

突稿 : 來自星星的訊號 – 中國繞月飛行器 4M-LXS

lunar AP photo
上周五發射的中國繞月飛行器 4M-LXS (Photo from  AP Photo)

這是一篇突稿,綜合英國 Practical Wireless 11月號和網上的資料。

於上周五發射的中國繞月飛行器,己於國際協調時間 (UTC) 10 2317:59 成功發射。實驗數據在 VHF ham bandEME 用到的 JT65B 制式回傳。首個回傳 beacon19:18
成功接收。

無線電訊號技術規格:

  • 飛行器名稱:4M-LXS
  • 電台呼號: LX0OHB-4M
  • 頻率:145.980MHzSSB (Practical Wireless 11月號指頻率為 145.990MHz估計是前期資料)
  • 數據制式: JT65B
  • 發射功率: 1W – 1.5W
  • Doppler shift: 預計正負達 2.2kHz
  • 行程:八天,往返程各四日 (回程較去程容易接收,越近地球當然越容易接收)

payload

4M-LXS 的訊號發射器 (courtesy of AMSAT UK)

 

訊號發射器部份由盧森堡一間公司設計。不知是否頻率在 Ham band 和使用了 EME 常用的 JT65 關係,外國 ham 界很多這次實驗訊號的資料,並鼓勵同好接收和回傳報告到盧森堡的數據處理中心。

接收方面,需一台 VHF SSB 的接收機, 高增益指向Yagi ,附訊號前置放大器更好。

 

cross_yagi

Cross Yagi  (Photo from 盧森堡公司 official website)

 

yagi9

9 element Yagi (Courtesy of Practical Wireless Nov-2014 issue)

 

留意接收用的 Yagipolarisation,如用cross yagi (十字形)勝算較高,普通的如表現較差,則需人手擰 90 度去比較測試效果。

詳解
http://sv1bsx.50webs.com/antenna-pol/polarization.html

 

JT65

JT65B 是用於 VHF 頻段的,而 JT65A 則是 HF 頻段。

JT65B 設計善於低速傳輸,是配有 ECC ( Reed-Solomon error control code)65-FSK 調制方式。每一字符需約4秒時間接收。

JT65B 數據解碼當然需一台附有soundcard 輸入的電腦,軟件使用 EME 通訊專用的 WSJT。安裝後,需到 setup => option 設定呼號和 locatorWSJT 可跟據你的位置而標出月球的方位,仰角等資料,所以 locator 需按接收位置 set好。

cap2

 

4M-LXS 發出的 beacon 內容如下:

 

表一 (每一分鐘的發射訊息內容)

開始時間(秒)為期 (秒)訊息
01發射機開,有獨特的 tone 音頻表示
1.246.8 JT65B 訊息(見表二)
4810一串音頻 audio tone
582發射機關

 

表二  (JT65B 每分鐘發射訊息)

時間(分鐘) 內容
0呼號與任務已執行時間
1電文
2JT65B Global Message (共13個字符)
3JT65B 飛行器實驗回傳數據
4JT65B Global Message (共13個字符)

 

有用連結

http://www.southgatearc.org/news/2014/october/lunar_ham_radio_payload_launched.htm#.VExebpSSzhc

http://moon.luxspace.lu/receiving-4m/

https://ukamsat.files.wordpress.com/2014/09/lxs-4m-eme2014-a4-v3.pdf

http://amsat-uk.org/2014/10/15/4m-lunar-payload-integrated-keps-released/

 

總結:

正如 ISS Shall We Talk 的最終章提到,EME 入門門檻較高。而現有一訊號可被監聽,如現成設備許可,實一試無妨。

Posted in 衛星通訊 | Tagged , , , , , , | Leave a comment