- Aselsan 48xx
- Modifikasyon
Yıllar önce İvedik Hurdalığı’ndan bir ASELSAN 4822 VHF telsiz satın almıştım. Üzerinde Intel 80C31 işlemcisi olan ve programı EPROM üzerinden okuyan bir telsizdi. EPROM’una amatör frekansları programlayıp bir müddet kullandıktan sonra kaldırdım. Aklımda hep mevcut yazılımın bir şekilde değiştirmek vardı. EPROM’daki kodu decompile ederek ASM kodlarını okuyup ne yaptığını anlamaya çalıştım ama sonra vazgeçtim.
Bu yazıda bu telsizi yeniden hayata döndürmemin hikayesi ile birlikte ASELSAN 4800 serisi telsizin anlatabileceğim tüm teknik altyapısını anlatmaya çalışacağım. Bu teknik altyapıyı anlatırken, bir yandan da telsize nasıl bir modifikasyon yapabileceğinizi de anlatacağım. Yazının sonuna geldiğinizde;
- Frekans girişi tuş takımından yapılan,
- (99) hafıza kanalını ön panelinden girebildiğimiz/seçebildiğimiz,
- Tone, Squelch gibi ayarları yapabildiğimiz,
- Anten analizörü olarak kullanabildiğimiz,
- Neredeyse güncel telsizlerden fazlası olan, eksiği olmayan bir telsiz sahibi olmuş olacaksınız.
Bu yazının ilgilenen arkadaşlarımıza yol gösterici ve ilham verici olmasını diliyor, bu çalışmayı ve benzerlerini benim bıraktığım yerden alıp daha ileriye götürmelerini diliyorum.
Taa ki geçen yıl telsizi masanın altından çıkarıp, ne yapabilirim sorusuna tekrar takılana kadar. Önce sıfırdan EPROM’a telsizi çalıştıracak programı yazmaya çalıştım. Ekranına bir harf yazana kadar yaklaşık 1 (bir) ay uğraştım. Çünkü süreç çok uzundu; önce EPROM’u siliciye koyup (15-20) dakikada siliyordum, sonra yazdığım programı EPROM’a yazıp takıyordum ve genelde hep bir hata oluyordu. Başa dönüyordum. 27Cxxx serisi EPROM ile bu işin ilerlemeyeceğini anlayıp, FLASH 28xxx serisi FLASH lara geçmeye karar verip Çin’den (20) tane Flash siparişi verdim, şans bu ya flashlar bir kere programlanabilir olan (One Time Programmable-OTP) çıktı. Ümidim kırılmıştı, vazgeçmek üzereydim.
INTEL 80C31/32 işlemcisini programlama yerine (aslında biraz nostalji ve eski günleri hatırlamak için bunu çok arzu ediyordum ama başladığım iş de yarım kalmamalıydı), işlemciyi içinde FLASH olan ve hızlı programlanabilen bir işlemci ile değiştirmeye karar verdim. Önce PIC işlemci kullanmayı düşündüm, ama piyasada son dönemlerde oldukça taraftarı olan ve uygun fiyata bulunacak “ATMEL/Arduino” işlemcilerinden birini kullanmaya karar verdim.
Bu yazıda telsizin teknik detaylarına işimize yetecek kadar ve üst düzeyli olarak değineceğim. Çok daha detaylı bilgileri özenle hazırlanmış “ASELSAN MV4822/4826 Bakım Onarım Kitabı”nda bulabilirsiniz.
Önce ekrana bir şeyler yazdırma hedefi ile başladım. Ekran ve tuş takımının olduğu “KAFA” diyebileceğimiz bölüm aslında ayrık ve tek başına çalışabilen bir bölüm. Besleme voltajlarını verdikten sonra işlemci ile konuştuğu (2) tel I2C hattı üzerinden tuş takımı entegresi ile ve LCD entegresi ile haberleşebiliyorsunuz. Genel olarak “KAFA”nın şeması aşağıdaki gibidir.
İlk denemem, Arduino’da birkaç satır kod yazıp ekrana yazı göndermeye çalışmak oldu. Yazı direk yazılamıyordu çünkü ASELSAN’ın LCD’si kendi özel bağlantısına sahipti ve hangi uç nereye gidiyor kısmını çözmek oldukça vakit aldı. Ama sonunda ekrana istediğimi yazdırabilir ve tuş takımından girilenleri okuyabilir duruma gelmiştim. PCF serisi I2C’den Input/Output’a çeviren entegreler ASELSAN 4800 serisinde bu tür işlerin kalbini oluşturuyor.
Yukarıda görünen display’in toplamda (144) parçası olup, bunların hepsi I2C üzerinden kontrol edilen PCF8576 üzerinden kontrol edilmektedir.
Yukarıdaki display’i kontrole edecek basit bir Arduino kodu aşağıdaki gibi olacaktır. (Not: I2C yapısı cihazın en kompleks bölümü olup bunun bile birkaç satır Arduino kodu ile yapılabileceğini göstermek amacı ile bu bölüm için kod örneği verilmiştir, tüm yapının kodları ileride paylaşılacaktır.)
#include #define NEXTCMD 128 #define MODESET 64 #define MODE_NORMAL 0 #define MODE_POWERSAVING 16 #define DISPLAY_DISABLED 0 #define DISPLAY_ENABLED 8 #define BIAS_THIRD 0 #define BIAS_HALF 4 #define DRIVE_STATIC 1 #define DRIVE_2 2 #define DRIVE_3 3 #define DRIVE_4 0 byte set_modeset = MODESET | MODE_POWERSAVING | DISPLAY_ENABLED | BIAS_THIRD | DRIVE_4; // default init mode setup() { Wire.beginTransmission(0x038); //I2C Adresimiz 0x38 Wire.beginTransmission(PCF8576_LCD); Wire.write(NEXTCMD | set_modeset); Wire.write(NEXTCMD | set_deviceselect); Wire.write(NEXTCMD | set_blink); Wire.write(LASTCMD | set_datapointer); for (int i=0;i<20;i++) Wire.write(B11111111); Wire.endTransmission(); } loop() { }
LCD’ye birşeyler yazdırdıktan sonra çok benzer bir şekilde “0x20” adresindeki PCF8574 keyboard entegresinden veri okunabilir, ya da “0x21” adresinde yer alan PCF8574 keyboard ledleri yakılabilir. Bundan sonra yapılabilecek en kolay şey aynı hat üzerine bağlı olan EEPROM ile denemeler yapılabilir. Sisteme müdahalemizi genel olarak aşağıdaki gibi gösterebiliriz;
Yaptıklarımızı özetleyecek olursak;
- INTEL80C32 işlemcisini söküyoruz, 27C256 EPROM’unu söküyoruz,
- 8051 Port çoğullayıcıyı söküyoruz,
- Bu sökülen entegreler ile kontrol edilecek işleri artık Arduino Nano ile yöneteceğiz, bu nedenle bağlantıları Nano’ya bağlıyoruz,
- PLL kontrolü için SPI haberleşmesi yapacağız (sağ alt bölüm),
- Alıcı aktif olduğunda hoparlörü açmak için IO bağlantısı,
- Watchdog ile çalışma sürekliliğimizi sağlamak,
- Antene giden ve dönen sinyali “directional coupler” üzerinden okumak,
- Alma ve göndermeyi algılayarak PLL/VCO frekanslarını ayarlamak,
- CTCSS için mikrofona ton uygulamak,
- Çıkış gücünü seçmek, vb.
Yukarıdaki işlemleri için ASELSAN’ın iç blok şeması aşağıdaki gibidir;
Cihazın çalıştırılması ve teknik detayları çok çok uzun bir hikaye, ancak son geldiğimiz noktada tüm güncel cihaz özelliklerine sahip ve (500-600) dolarlık cihazlarla yarışabilecek bir cihazımız oldu. Üstelik bozmaktan hiç korkmayacağımız, (5-10) liraya tüm yedek malzemelerini sağlayabileceğimiz bir cihazımız olacak. Ben hayal edebildiğim kadar özellik için kod yazmaya çalıştım, devamında pek çok arkadaşımın bu çalışmayı devam ettireceğine eminim.
Çokça teknik detay ile ilgilenmek istemeyen arkadaşlarımızın da kendi cihazlarına bu modifikasyonu kolayca yapabilmelerini sağlamak amacı ile; öncelikle ARD/Platform’da yer alan arkadaşlarımız (başta Cem KARAGÖZ, TA2GY) olmak üzere bir çalışma grubu oluşturup çalışmaya başladık. Daha sonra bu grubumuzu TAMSAT’taki arkadaşlarla genişlettik. Sonuçta ortaya birkaç kablo ve soket ile uygulanabilir bir kart oluştu, üstelik oldukça uygun bir maliyetle.
Modifikasyon Nasıl Uygulanacak?
Bundan sonraki bölümde modifikasyonu uygulamak için yapacağınız işlemleri yazmaya ve resimlerle desteklemeye, bilahare yazıya paralel olarak bir de video serisi çekip paylaşmaya çalışacağım. Lütfen sırası ile aşağıdaki adımları uygulayınız;
1. Adım: Öncelikle hurdadan aldığınız cihazınıza elektrik vererek temel fonksiyonlarının çalışıp çalışmadığını kontrol ediniz. Modifikasyon sonrasında çalışmama problemlerini takip etmeniz daha kolaylaşacaktır. Cihazın;
- LCD
- Alma
- Gönderme
- Tuş takımı
gibi fonksiyonlarının tam ve eksiksiz çalışırlığından orijinal hali ile emin olunuz.
2. Adım: KAFA bölümünü sağ ve sol yanda bulunan vidaları sökerek çıkarınız,
3. Adım: Ana şasenin dış kısmını öne doğru çekerek çıkartınız.
4. Adım: En sağda yer alan 27C256 EPROM’u soketinden çıkartınız,
5. Adım: Çıkış katı ile bağlantıyı sağlayan “J5″ soketini ve “TE1“soketini yerinden çıkartınız.
6. Adım: Şekilde gösterilen (8) adet vidayı sökerek kartı çıkartılabilir duruma getiriniz,
7. Adım: Kartı nazikçe yerinden çıkartınız. Kartı çıkartırken altındaki soketlerle bir alt karta geçişi olduğunu göz önünde bulundurarak dikkatli olunuz.
8. Adım: Entegreleri havya ile sökmek oldukça ama oldukça zor olduğu için entegre ayaklarını keserek ısı yüzeyini azaltma yöntemi tercih edilmelidir. Bu amaçla “TD11” ve “TS12” entegreleri (en büyük iki entegre, 8155 ve 80C31) sökme işlemi için;
- Keski kullanarak bacakları gövdeye en yakın noktadan kesilebilir.
- Maket bıçağı ile ayakları kesilebilir.
- Dremel kullanarak bacaklar kesilebilir.
- Ya da uygun göreceğiniz bir yöntem ile bacaklar ayrılabilir.
- Her üç yöntem de denenmiş ve başarı elde edilmiştir. Entegreler tekrar kullanılamayacağı ve çöpe gideceği için rahatça sökme yapılabilir.
9. Adım: Açıkta kalan entegre bacaklarını havya ve cımbız yardımı ile söküp çıkartınız.
10. Adım: Entegre bacakları yerine header lehimleyeceğimiz için lehim pompası yardımı ile entegre bacakları deliklerinin içini temizleyiniz. Bu işlemi tüm bacaklara uygulamak yerine sadece header takacağımız “TD11″ sol bacak sırasının tamamı, sağ bacak sırasında (4) bacak için ve “TD12”nin sadece sol bacaklarına uygulamanız yeterli olacaktır.
11. Adım: “TD12” entegresinin sağ yanında bulunan mevcut header yüksekliklerinin problem yaratmaması için kart yüzeyinden yüksekliklerinin (2) cm’yi geçmeyecek şekilde kesilmesini öneririm.
12. Adım: Hazırlanan entegre bacağı deliklerine elimizdeki (2) adet (20)’li ve (1) adet (4)’lü header’ı lehimleyelim. Headerları kolayca takabilmeniz için entegre bacağı boşluklarının düzgün olmasının önem arz ettiğini göreceksiniz. (Not: 17’nci adım içindeki parantez içi notu okuyunuz.)
13. Adım: TAMSAT 4822 kartını yerine oturtarak her şeyin düzgün olduğunu kabaca kontrol ediniz ve kartı çıkartınız.
14. Adım: Söktüğümüz ana kartı tekrar telsiz içine geri yerleştiriniz, yerleştirme sırasında alt kartlara geçiş için kullanılan headerların eğilmemesine ve pinin doğru deliğe girmesine dikkat ediniz.
15. Adım: J5 ve TE1 soketlerini yerine takınız.
16. Adım: (8) Adet vidayı yerlerine geri vidalayınız, iyi ustaların vida arttırması gerektiğini unutmayınız (bende genelde eksik çıkıyor)
17. Adım: TD12 ile TD7 entegreleri arasındaki bölgede yer alan 74HC27 TD14 entegresini tespit ediniz. Bu entegrenin (3) ve (12) numaralı bacaklarını bir parça kablo yardımı ile kısa devre ediniz. (Bu işlemi neden kartı zaten sökmüşken alt yüzeyde yapmadık sorusuna verecek mantıklı bir cevabım yok, çünkü her seferinde unutuyorum, lütfen siz kartın altını açtığınız (12)’nci adım öncesi adımların biri sırasında entegremizin (3) ve (12)’nci bacaklarını kartın altından kısa devre edilir.)
18. Adım: Şimdi ise kart üzerinden (5) ayrı noktadan kartımıza kablo bağlamamız gerekiyor, bu bağlantıları detaylı görünümü aşağıdaki gibidir. Bu bağlantılardan PTT ve RST (Reset) dışındakileri opsiyoneldir ve bazı fonksiyonları istemiyorsanız bağlamayabilirsiniz;
- TON modunu kullanmak istemiyorsanız TON bağlantısını bağlamayınız.
- Anten analizörü ve SWR Metre özelliğini kullanmak istemiyor iseniz FWD ve RFL bağlantılarını bağlamayınız.
19. Adım: Ana kartın sol üst köşesinde yer alan ve antenin giden dönen sinyallerini güçlendiren LM358 TD3 entegresinin (3)’üncü bacağına RFL kablomuzu, (6)’ncı bacağına da FWD kablomuzu lehimleyelim.
20. Adım: PTT kablomuzu ana kartın orta bölümünde bulunan “J2” header sırasının (3) numaralı bacağına lehimleyelim.
21. Adım: Şekilde de görünen “R80“direncinin bacağına da TON kablomuzu lehimleyelim.
22. Adım: Son olarak RST kablomuzu da kartımızın hemen alt bölümüne denk gelen ve daha önce (3) ile (12) nolu bacaklarını kısa devre ettiğimiz LM358 TD3 entegresinin (8) numaralı bacağına lehimleyerek lehimleme işlemlerimizi tamamlayabiliriz.
23. Adım: TAMSAT kartları birbirinden fiziksel boyutlar olarak farklılık gösterebilen ASELSAN MV48XX serisi cihazlarının hepsine uygulanabilmesi için kart kenarında (1) mm’lik bir fazlalık bırakılmıştır. Kartınızı yerine yerleştirdiğinizde kenarda kalan yarım ya da bir milimetrelik fazlalığı; zımparalayarak ya da metal saç makası ile kesebilirsiniz. Bu işlem sonunda kartınız cihaz içine uygun şekilde yerleşecektir.
24. Adım: Kart üzerindeki TON ayar potunun orta konumda olduğuna emin olunuz.
25. Adım: Testlerimizi yapabilmek için cihazın “KAFA” bölümünü takıp vidalayınız.
26. Adım: Artık cihazımıza elektrik gücünü verip açabiliriz. Ekranda açılış mesajlarını gördükten sonra aşağıdakileri deneyerek cihazınızın hazır olduğundan emin olabilirsiniz;
- Tuş takımından frekans girmeyi deneyin.
- Hoparlör işaretine basarak SQUELCH kapama açma yapın. (Cihaz arkasında hoparlör takarsanız hışırtı sesi duyuyor olmalısınız.)
- Başka bir telsizden sinyal gönderip bu cihazla almayı deneyin.
- Bu cihazdan gönderme yapıp (anten veya Dummy Load bağlamayı, mikrofon bağlamayı unutmayınız) başka bir telsizden dinleyiniz,
- SHIFT ayarı yaparak role frekanslarında roleleri kullanabildiğinizi kontrol ediniz.
Cihazınız kullanıma hazırdır. Artık kapaklarını ve vidalarını olması gereken durumuna getirebilirsiniz. Güle güle kullanın.
UYARI : Bu dokümanda anlatılan modifikasyonlar sebebi ile cihazınızda oluşabilecek sorunlar için herhangi bir sorumluluk kabul edilmez. Lütfen kendi inisiyatif kapsamında deneyiniz.
HATA AYIKLAMA
Ekrana hiç görüntü gelmiyor!
- Cihaza enerji doğru şekilde verdiğinize emin olunuz.
- KAFA’nın yerine oturduğuna emin olunuz.
- Kart yerleşiminin ve header lehimlerinin doğru olduğunu kontrol ediniz.
- Arduino Nano üzerindeki ışığı kontrol ediniz.
Tuş takımından giriş yapamıyorum!
- KAFA’nın yerine oturduğuna emin olunuz.
SQUELCH’i açtığımda gürültü duyamıyorum!
- Hoparlör bağlantısını kontrol ediniz.
- PLL’in kilitlemiş olduğunu J2’nin (3) nolu bacağından denetleyiniz (<3V)
- Başka telsizin göndermesini duyamıyorum.
- Alma konumunda iken PLL’in kilitlemiş olduğunu J2’nin (3) nolu bacağından denetleyiniz (<3V)
Başka telsiz beni duyamıyor!
- Gönderme konumunda iken PLL’in kilitlemiş olduğunu J2’nin (3) nolu bacağından denetleyiniz (<3V)