Hello Steve, I downloaded the code recently. It is a bit strange that it was an old version, anyway I checked-out the code again and now see the change made. I will update my library. Thanks!
73 Paul PA0PHH Op zo 28 mei 2023 om 14:42 schreef Steven Franke <s.j.fra...@icloud.com>: > Hi, > > In the old version of gen_ft8wave that you have based your library on > there was was no bug because gen_ft8wave was always called with > fsample=48000 when called from the WSJT-X c++ code and with fsample=12000 > when called from the jt9 fortran code. > > When the “a7” decoding feature was added in WSJT-X version 2.5 the code > was changed to allow calling with different fsample values. > > 73, > Steve k9an > > On May 27, 2023, at 2:53 PM, Paulh002 via wsjt-devel < > wsjt-devel@lists.sourceforge.net> wrote: > > Hello, > > I am new to this group, and have a question about the fortran code > of gen_ft8wave. I am using the fortran code in a c++ library to support ft8 > in my own sdr transceiver development on a raspberry pi. (see github > https://github.com/paulh002/wsjtx_lib and > https://github.com/paulh002/sdrberry). I have made a c++ wrapper library > with the fortran code which works fine but for one issue. > Sometimes the subroutine gen_ft8wave generates an incorrect ft8 wave. This > happens when the subroutine gen_ft8wave is first used in the decode process > which uses a sample rate of 12000 Hz. The subroutine saves the sample time > in variable dt, but when I generate a ft8 signal I use 480000 Hz and the dt > variable is then incorrect. (It saves the sample time on first execution). > The other way around if you first generate a wave with 48000 Hz sample > rate the subroutine subtract will call gen_ft8wave with a sample frequency > of 12000 Hz and will receive an incorrect wave form. > For now I fixed this by checking also the sample rate see the code snippet > below. My question is if this observation is correct? > > real f1 > save pulse,twopi,dt,hmod,ibt0,ctab, f1 > > ibt=nint(10*bt) > if(ibt0.ne.ibt .or. f1.ne.fsample) then > twopi=8.0*atan(1.0) > dt=1.0/fsample > hmod=1.0 > ! Compute the frequency-smoothing pulse > do i=1,3*nsps > tt=(i-1.5*nsps)/real(nsps) > pulse(i)=gfsk_pulse(bt,tt) > enddo > ibt0=nint(10*bt) > do i=0,NTAB-1 > phi=i*twopi/NTAB > ctab(i)=cmplx(cos(phi),sin(phi)) > enddo > endif > f1 = fsample > > 73 PA0PHH > _______________________________________________ > wsjt-devel mailing list > wsjt-devel@lists.sourceforge.net > https://lists.sourceforge.net/lists/listinfo/wsjt-devel > > >
_______________________________________________ wsjt-devel mailing list wsjt-devel@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/wsjt-devel