ERASynth+ firmware güncelleme

taydin

Timur Aydın
Staff member
Katılım
24 Şubat 2018
Mesajlar
21,796
ERASynth+ sinyal jeneratörünü seri port üzerinden kontrol ederken 2200 MHz in üzerindeki değerleri girince frekansın değişmediğini farkettim. Üzerindeki firmware de muhtemelen baya eski. ERA nın github adresinde bulunan son kaynak kodlarını derleyip güncellemesini yapacağım. Problem devam ederse de problemi debug edeceğiz.

ERASynth+ içerisinde gömülü bir arduino due sistemi var. Dolayısıyla ilk denediğim şey, cihazı USB üzerinden linux'a bağlayıp Arduino IDE ye tanıtmak.
 
Cihaza besleme micro USB üzerinden enerji veriyorum ve seri arabirim USB si üzerinden de linux'a bağlıyorum. /dev/ACM1 olarak algılanıyor.

Arduino DUE nin Arduino IDE ile kullanılabilmesi için board manager üzerinde SAM desteği eklenmesi gerekiyor

1665777148420.png
 
Sonra firmware kaynak kodlarını indirdim ve Arduino IDE ile ERASynth.ino dosyasını açtım. Derlemede hata verdi, header dosyalardan birisinin ismi yanlış idi. Düzeltip tekrar derledim, sorunsuz derledi. Sonrasında programı yükledim. Yükleme dakikalarca sürdü. Artık ben bir problem oldu diye düşünmeye başladım, gidip bir kahve yapıp geldim yükleme tamamlanmış.

Seri terminal ile bağlanınca da program birşeyler yazdı.

Bash:
[ta@bonsai ~]$ picocom --imap lfcrlf -b 115200 /dev/ttyACM1
picocom v3.1

port is        : /dev/ttyACM1
flowcontrol    : none
baudrate is    : 115200
parity is      : none
databits are   : 8
stopbits are   : 1
escape is      : C-a
local echo is  : no
noinit is      : no
noreset is     : no
hangup is      : no
nolock is      : no
send_cmd is    : sz -vv
receive_cmd is : rz -vv -E
imap is        : lfcrlf,
omap is        :
emap is        : crcrlf,delbs,
logfile is     : none
initstring     : none
exit_after is  : not set
exit is        : no

Type [C-a] [C-h] to see available commands
Terminal ready
FRAM Firmware FRAM Firmware Version = 0000000000000000000000000v1.0.18
Current Firmware Version = v1.0.18
Upload code mode is: 0

---------------------------------------------------------------------
Embedded Version: v1.0.18
ERASynth Model: ERASynth++
Serial Number: 0004
Ultra Low Phase Noise mode is inactive
Frequency: 1000000000Hz
Amplitude: 0.00dBm
Start Frequency: 1000000000Hz
Stop Frequency: 6000000000Hz
Step Frequency: 1000000000Hz
Dwell Time: 1000ms
Sweep Mode Free-Run[0]/External[1]: 0
RF ON
Reference Int[0]/Ext[1]: 0
Reference Tcxo[0]/Ocxo[1]: 0
Modulation Type: NBFM
Modulation Source: Internal
Waveform Type: Sine
Internal Modulation Frequency: 1000Hz
FM Deviation: 5000Hz
AM Depth: 20%
Pulse Period: 2000us
Pulse Width: 1000us
 
Yeni firmware'de versiyon 1.0.18 e yükselmiş. Daha önceki versiyon 1.0.7 idi. Ama model ismi ERASynth++ olarak görünüyor, bu yanlış. Olması gereken ERASynth+. Bunun yapılandırıldığı yeri bulup değiştirmem lazım.
 
Kaynak kodlarda definitions.h dosyasının başında model numarasını temsil eden bir makro var:

C++:
/*
*
* Copyright (c) 2018 ERA Instruments (http://erainstruments.com/)

* This program is free software: you can redistribute it and/or modify
* it under the terms of the GNU General Public License as published by
* the Free Software Foundation, either version 3 of the License, or
* (at your option) any later version.

* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
* along with this program.  If not, see <http://www.gnu.org/licenses/>.
*/


#define ERASynth 2
// Make DEBUG = 1 to write faster when debugging. This will avoid amplitude calibration files to written in flash therefore ouput power is going to be maximum.
#define DEBUG 0
#define max_DAC_Value 4095
#define min_DAC_Value 0
#define LMX1_LE 10
#define LMX2_LE 4
#define DDS_LE 52
#define LBand 0
#define MBand 1
#define UBand 2
#define OFFBand 3
#define maxSamplesNum 120
#define NBFM_Mod 0
#define WBFM_Mod 1
#define AM_Mod 2
#define Pulse_Mod 3
#define Internal 0
#define External 1
#define Microphone 2
#define Sine 0
#define Triangle 1
#define Ramp 2
#define Square 3
#define WREN  6
#define WRDI  4
#define RDSR  5
#define WRSR  1
#define READ  3
#define WRITE 2

#if ERASynth == 0
  #include "calibration_0.h"
#endif

#if ERASynth == 1
  #include "calibration_1.h"
#endif
 
#if ERASynth == 2
  #include "calibration_1.h"
  #include "calibration_2.h"
#endif

Burada 0, 1, 2 model numaralarına karşılık geliyor herhalde. 1 olarak değiştirip tekrar derleyince bu sefer doğru model numarası yazıldı.
 
Sonrasında seri terminalden frekansı 2.4 GHz yapmaya çalışınca bu sefer hatasız bir şekilde çalıştı.

Bash:
[ta@bonsai ~]$ picocom --imap lfcrlf -b 115200 /dev/ttyACM1
picocom v3.1

port is        : /dev/ttyACM1
flowcontrol    : none
baudrate is    : 115200
parity is      : none
databits are   : 8
stopbits are   : 1
escape is      : C-a
local echo is  : no
noinit is      : no
noreset is     : no
hangup is      : no
nolock is      : no
send_cmd is    : sz -vv
receive_cmd is : rz -vv -E
imap is        : lfcrlf,
omap is        :
emap is        : crcrlf,delbs,
logfile is     : none
initstring     : none
exit_after is  : not set
exit is        : no

Type [C-a] [C-h] to see available commands
Terminal ready
FRAM Firmware Version = 0000000000000000000000000v1.0.18
Current Firmware Version = v1.0.18
Upload code mode is: 0

---------------------------------------------------------------------
Embedded Version: v1.0.18
ERASynth Model: ERASynth+
Serial Number: 0004
Ultra Low Phase Noise mode is inactive
Frequency: 1000000000Hz
Amplitude: 0.00dBm
Start Frequency: 1000000000Hz
Stop Frequency: 6000000000Hz
Step Frequency: 1000000000Hz
Dwell Time: 1000ms
Sweep Mode Free-Run[0]/External[1]: 0
RF ON
Reference Int[0]/Ext[1]: 0
Reference Tcxo[0]/Ocxo[1]: 0
Modulation Type: NBFM
Modulation Source: Internal
Waveform Type: Sine
Internal Modulation Frequency: 1000Hz
FM Deviation: 5000Hz
AM Depth: 20%
Pulse Period: 2000us
Pulse Width: 1000us

*** local echo: yes ***
>F2400000000
Frequency: 2400000000Hz
>P01
RF ON
 
Sektördeki bir tanıdığımdan ERA'nın Baykar'a satıldığını duydum. Kısa zamanda güzel bir ivme yakalamış bir firma. Umarım daha başkaları da olur. Biraz da öğrenci dostu :D olurlarsa...
 
Sektördeki bir tanıdığımdan ERA'nın Baykar'a satıldığını duydum. Kısa zamanda güzel bir ivme yakalamış bir firma. Umarım daha başkaları da olur. Biraz da öğrenci dostu :D olurlarsa...

RF işinden anlayan adamı bırak Türkiye'de, dünya'da bulmak çok zor. O yüzden demek hemen kaptılar bunları :)
 
Espler gürültüsüz ortamda güzel olsa da bu cihazın üreticileri cihaz bu ortamda çalışmalı diye bir şart koyup satamaz.

Esp32 ile yaptığım fabrika deneyinde esp32 fabrika da neredeyse boot'u geçmeyecek kadar sapıtıyor.

Bağlandığı şebekede onlarca VFD onlarca kontaktör ile yol verilen asenkron motor bulunuyordu.

Bu ortamda esp32ye yüklü blink uygulaması bile bir çalışıyor bir çalışmıyor bazen dakikalarca led yanık kalıyordu
 

Çevrimiçi personel

Forum istatistikleri

Konular
5,839
Mesajlar
99,578
Üyeler
2,479
Son üye
yiyehuoxing32

Son kaynaklar

Son profil mesajları

gruptaki arkadaşlara selamlar. sıteyi bu gün fark ettim. Asansör için 2x7 segment LCD gösterge üretmek istiyorum. acaba bu sayfadaki arkadaşlardan destek alabilirmiyim. LCD nin mantık açılımı ektedir.
deneyci wrote on TA3UIS's profile.
Selam.
Amatör telsiz lisansı nasıl alınıyor?
Lisansı olmayanı forumlarına almıyorlar. :)
Bilgi alamıyoruz.
cemalettin keçeci wrote on HaydarBaris's profile.
barış kardeşim bende bu sene akıllı denizaltı projesine girdim ve sensörleri arastırıyorum tam olarak hangi sensör ve markaları kullandınız yardımcı olabilir misin?
m.white wrote on Altair's profile.
İyi akşamlar.Arabanız ne marka ve sorunu nedir.Ben araba tamircisi değilim ama tamirden anlarım.
* En mühim ve feyizli vazifelerimiz millî eğitim işleridir. Millî eğitim işlerinde mutlaka muzaffer olmak lâzımdır. Bir milletin hakikî kurtuluşu ancak bu suretle olur. (1922)
Back
Top