Re: New file uploaded to BPQ32
- Look in release history this is the release version of the many test versions that have been going around..
WINMOR TNC Revision History
Revision Date Description/changes
22.214.171.124 May 20, 2013 Release of 126.96.36.199 with updated help and expansion of recycle time to 500 addition for 8 Carrier modes and 100 ms
addition for 2 Carrier modes to accomodate slower computers.(WMLinkProtocol.GetRecycleTime)
188.8.131.52 May 18 2013 Trial like 184.108.40.206 except replace Root Sin with corrected (minor) Welsh window (Rcv and Transmit).
220.127.116.11 May 18 2013 Trial like 18.104.22.168 except replace Welsh window (Rcv and Transmit) with Root Sin Window.
22.214.171.124 May 18, 2013 Trial like 126.96.36.199 except Remove transmit filter and shape transmit symbol with Welsh window
188.8.131.52 May 18, 2013 Trial version just like 184.108.40.206 except with Rcv Symbol windowing with Welsh Window.
220.127.116.11 May 17, 2013 Modified MagParity processing in Viterbi8QAMDecode, Viterbi16QAMDecode and Viterbi32QAMDecode to simply
replace bytViterbiData if not debug logging to save processing of seach/log for corrected symbols
18.104.22.168 May 17, 2013 Trial of extending recycle time on 8 carrier modes from 200 ms to 400 ms. (WMLinkProtocol.GetRecycleTime)
22.214.171.124 May 16, 2013 Tuned and verified parameters: QAM Ratio = .5 (no change. Appears optimum tested over range of .4 to .6)
dblAlpha value in Magnitude low pass filter. Was .1 optimum found at ~.35
126.96.36.199 May 16, 2013 Inclusion of 8QAM mode (should be backward compatible with 4PSK) which includes additional
data bit (3 total) used for RS Correction of Viterbi phase data.
188.8.131.52 May 16 2013 Heavy logging of Viterbi16QAMDecode and MakeNCar16QAMData to track down
why RS magnitude correction not working correctly on 16QAM mode.
Corrected indexing error in both Viterbi32QAMDecode and Viterbi16QAMDecode that
was using incorrect index for dblMagThreshold in magnitude compare.
Remove excess debug logging above
Add mechanism and logging to track Min and Max carrier to threshold in Viterbi16QAMDecode and Viterbi32QAMDecode
184.108.40.206 May 15, 2013 Correct 180 degree Phase value for Mag in ModNCar32QAMTCMIFFT
Add experimental function WMModulate.ModNCar16QAMTCMIFFT for 16QAM Parity
Add experimental function WMEncode.MakeNCar16QAMData for 16QAM Parity
Add experimental function WMDecode.Viterbi16QAMDecode for 16QAM Parity
Modify function WMDecode.Decode8PSKData to accomodate 16QAM or 8PSK
set dblQAMRatio = .5 (was .6)
Change dblAlpha factor in DecodeV16PSKData and DecodeV8PSKData from .2 to .1 (more filtering. time constant now ~110ms)
220.127.116.11 May 14, 2013 Modify score calculation in WMInterface.UpdatePhaseConstellation to ignore radius errors for QAM
18.104.22.168 May 13, 2013 Inclusion of 32QAM mode (should be backward compatible with 16PSK) which includes additional
data bit (5 total) used for RS Correction of Viterbi phase data.
Increase of initial intPSK16to8Backoff from 20 to 30 to encourage more agressive shift from
8PSK to 32QAM.
Additional test logging to evaluate 32QAM effectivness.
initial 32QAM amplitude ratio is .6 (inner symbols have .6 magnitude of outer symbols or -4.4 dB power).
22.214.171.124 May 8, 2013 Add filter for transmitted signal WMModulate.FSXmtFilterNCar to restrict bandwidth (1600 Hz or 500Hz @ -30 db)
Remove tranmist symbol windowing
Remove Receive symbol windowing.
Add WMCB.Robust initialization during Initialize upon connection start.
126.96.36.199 Mar 21, 2013 Release of 188.8.131.52 without change.
184.108.40.206 Mar 19, 2013 Addition of Globals.blnForceClose Set force close if Retry count exceeded for Send Command or Send Data. tmrPoll tests blnForceClose.
220.127.116.11 Mar 2, 2013 Release of 18.104.22.168 without change.
22.214.171.124 Feb 27, 2013 blnCWIdSent renamed to blnAllIdsSent. This is now set when the CWID is sent and CWID is enabled
or when the ID Frame is sent and CWID is not enabled. Avoids a complex state/race issue.
The sending of the "dash" when no CWID is no longer done.
126.96.36.199 Feb 27, 2013 Modified WMInterface.tmrPoll Tick to require blnCWIDSent to move to Connection State Disconnected.
To eliminate problem with PTT timeout when CWID not enabled.
188.8.131.52 Feb 27, 2013 Modified tmrCallback ID to send single "dash" if CW ID not enabled to avoid state problem.
184.108.40.206 Feb 20, 2013 Added debug log info to WMDecode.DecodeConReq4FSK to show target and CRC failure with score.
220.127.116.11 Feb 17, 2013 Added objInterface.AbortSoundStream in WMLinkProtocol.tmrCallback, ProcessNewCapturedData
18.104.22.168 Feb 17, 2013 Changed initial inactivity timeout on connect request from 60 to 120 sec.
22.214.171.124 Nov 15, 2012 Change multiple references to WMModulate and WMDemodulate to single global ones. (memory leak?)
126.96.36.199 Oct 18, 2012 Release of 188.8.131.52 without change
184.108.40.206 Oct 16, 2012 Change mod index in tmrPoll to 3 (was 2) to allow control updates every 96 ms (was 64 ms)
Change lower limit on intRoundTripLatency to 800 (was 1000) ms.
Added 200 ms pad for 8 carrier modes in GetRecycleTime to accomodate slower CPUs on Receive.
Increasing Level of 8 car 4FSK by 1 dB to match PSK modes (now 2 dB boost)
220.127.116.11 Oct 13, 2012 Release of 18.104.22.168. without change
22.214.171.124 Oct 12, 2012 Make mods in WMPort for handling "would block", TCPdelay, and multiple connections
Change frmReg.ShowDialog to new thread to show dialog and not block StartCodec in Sub StartCodec.
126.96.36.199 Oct 5, 2012 Release of 188.8.131.52 without change
184.108.40.206 Oct 4, 2012 Change Round trip calculation in WMLinkProtocol.MeasureRoundTrip to have minimum of 1000 ms
Still log actual measurement to debug log.
220.127.116.11 Oct 1, 2012 Minor change in Interface.UpdateWaterfall to update correct bandwidth indicator (green lines)
18.104.22.168 Sept 25, 2012 Moved check for registration of call sign from WMInterface Load event to StartCodec. This to permit host program to operate easily
with multiple call sign registrations.
22.214.171.124 Sept 18, 2012 Modify resetting of inactivity timeout from 30 to 60 seconds in WMLinkProtocol.ProcessControl upon state IRS or IRSModeShift
126.96.36.199 Sept 2, 2012 Modify KeyPTT to include variable dttApplyPTT and check for timeout to insure PTT off if any problem. Add logic and logging to tmrPoll for this.
188.8.131.52 June 9, 2012 Increase Inactivity timeout upon a connect Request from 30 to 60 sec to minimize pre mature shutdown.
184.108.40.206 June 5, 2012 Recompile of 220.127.116.11 for release (verified compatible with 18.104.22.168)
22.214.171.124 June 1, 2012 Changed Root Raised Cosine Windows to Welch windows in both WMModulate and WMDemodulate. Testing showed some marginal improvment
Changed scaling factors for PSK Modulation for approx 1.5 dB additional on both 2 Car and 8 Car PSK modes
Cleared Test flag to enable file saving
126.96.36.199 May 18, 2012 Display options to show spectrum and disable Spectrum/Waterfall (to avoid any problems with graphic drivers)
188.8.131.52 Sept 4, 2011 Release of 184.108.40.206 (no changes to rev 220.127.116.11)
18.104.22.168 Sept 3, 2011 Remove Transparency Key info to set same as old version 22.214.171.124
126.96.36.199 Aug 27, 2011 Trace info added to UpdateWaterfall and DisplayConstellation
188.8.131.52 Aug 26, 2011 Combine DisplayWaterfall with UpdateWaterfall. No need to use synchronous queue with new dual rectangle method of graphic update.
Eliminate synclocks in UpdateWaterfall, UpdatePhaseConstellation and UpdateFrequencyConstellation
Slow down Rcv Level updates by factor of 5 (reduces CPU loading and makes easier to read)
184.108.40.206 Aug 25, 2011 Modify DisplayWaterfall and DisplayConstellation to use dual rectangle method but combine into one bitmap using
new graComposit and then sending resulting bmpNewbmp for display. Based on measurement should substantially reduce CPU loading
220.127.116.11 Aug 21, 2011 Modify DisplayWaterfall and clean up.
Modify UpdateFrequencyConstellation to include Try/Catch and exception logging.
Make similar fix to UpdateConstellation and DisplayConstellation. as for Spectrum
Fix Busy Detector display to initialize after disconnect.
Added variable blnClosing to insure no graphic updates during close.
18.104.22.168 Aug 21, 2011 Add on-line suggestion as to how to fix GDI error. Using second bmp bmpNewSpectrum.
Eliminate drawing rectangles to scroll...just implement in copy of bmpSpectrum to bmpNewSpectrum
22.214.171.124 Aug 21, 2011 Change in 126.96.36.199 reversed.
Synclock (objWaterfallLock) added before UpdateWaterfall in ProcessCapturedData
Synclock (objWaterfallLock) added before DisplayWaterfall in tmrPoll.Tick
Exception log in Try/Catch enabled in DisplayWaterfall
Exception log in Try/Catch enabled in UpdateWaterfall
188.8.131.52 Aut 21 2011 Special test version with all Protocol process suspended (no call to objWMProtocol.ProcessNewCapturedData) in ProcessCapturedData
184.108.40.206 Aug 20, 2011 In tmrPoll.Tick remove check for cllPlaybackDevices = nothing.
In tmrPoll.Tick remove objPlayback.Dispose()
In tmrPoll.Tick remove prgACKPercentage.Refresh() under lblConnectedCall
In tmrPoll.Tick add prgACKPercentage.Refresh() under prgACKPercentage
220.127.116.11 Aug 19, 2011 Modify WMInterface.UpdateWaterfall to closely match same function in version 18.104.22.168
Modify WMInterface.DisplyWaterfall to closely match same function in version 22.214.171.124
Add test of blnDisplayingWaterfall in tmrPoll.Tick to keep DisplayWaterfall from being re entrant.
126.96.36.199 Aug 18, 2011 Modify calculation of T>RLatency to use value of only one collection.
Add 1536 null samples (128 ms) to all transmitted signals to accomodate Flex SDR trimming off Transmit symbols
Modify "BW" command to accept a parameter of 0 as well as 500 and 1600 (0 disables a connection)
Add array AuxBW(9) in Globals to hold Bandwidth for each Aux Call sign
Add command "AUXBW" to accept bandwidth value(0,500,1600) for each Aux Call sign
Modify DecodeConReq4FSK to check for Bandwidth values > 0 before accepting Connect
Modify UpdateWaterfall to set BW lines to max of WMCB.Bandwidth or any Aux Callsign BW
188.8.131.52 Aug 9, 2011 Remove excess logging.
Fix problem with display of ACK percentage.
Release of 184.108.40.206
220.127.116.11 Aug 5, 2011 Change minimum WMCB.ResponseDelay to 300 ms (was 100)
New Sub WMProtocol.DelayResponse now delays any response ResponseDelay - Vox Extension in ms
This will handle T>R latency up to 300 ms and normal VOX leader will have no affect on frame cycle time
Minor cleanup in MakeLeader4FSK
General cleanout of all old and and unused code.
18.104.22.168 Aug 4, 2011 Modify ratio calc in SearchForLeaderTone4 to raise ration to the power of (squelch/10) to
reduce the ratio effect for lower squelch values.
Increase maximum decode distance from 2.0 to 2.5 in AcquireFrameType4FSK (appears to work better on marginal decodes)
Rework BusyDetect and ProcessFrameType to better handle busy block.
Reduce calls to busy detector to every 50 ms
Modified T>R latency reporting to use green background if < 250 ms, red if > 250 ms.
22.214.171.124 Aug 3, 2011 Add TNC version number to Me.text
Modify debug logging to aid in tracking decoding process.
changed fixed threshold for ThreshDetect2 to WMCB.Squelch ^ 2
Tested but abandoned 500 Hz BPF on mixed I and Q. (no measureable improvement on 500 Hz mode)
Fixed error in latency calculation not using Absolute value of sampels in average.
Modify KeyPTT and PlaySoundStream to minimize latency variations.
Add uppler limit on sleep of 2100 ms before playing sound files.
Cleand up KeyPTT and setting blnPTT to make consistent.
In Interface reduce notify size to 8192 (was 16284) to minimize receive latency (now avg of 43 ms).
Change intNUMBERRECORDNOTIFICATIONS to 64 to maintain 5.4 second total sound card buffer
Modify Update waterfall to use both I and Q samples but only update every other notify to keep same speed.
Reduce intConReqCycle from 4200 to intConReqFrame + 1500 (about 3000)
Make pad on cycle calculations consistant at 300 ms. (was 200 in a couple of places)
Reduce intTquiet from 1500 ms to 1000 ms
126.96.36.199 Aug 2, 2011 Modify SearchForLeaderTone4 to do just correlation (no envelope)
Modify ThreshDetect2 to use just current and past Cor values and fixed threshold.
Modify AcquireSymbolFraming to first filter I and Q at 1125 Hz using FSF then compute envelope
from filtered I and Q and then filter envelope with FSF at 93.75Hz.
188.8.131.52 July 31, 2011 Add Automatic T>R Latency measurement, logging and display.
184.108.40.206 May 15, 2011 Release of 220.127.116.11 (no changes to prior rev)
18.104.22.168 May 13, 2011 Fixed problem with AutoShiftNoACKs if in 4FSK data modes.
22.214.171.124 May 13, 2011 Added mechanism and routine AutoShiftNoACKs to shift to more robust data mode
if >5 data repeats without seeing an ACK from the IRS.
126.96.36.199 May 5, 2011 Add changes to WINMORInterface.FormClosed to insure TNC TOP and LEFT ini parameters are
always within the working rectangle (keeps TNC Form visible).
Change inactivity timeout in WMLinkProtocol to 120 seconds (was 90 seconds).
Make intTSF always inactivity timeout/4 (30 seconds) no increases.
Return calc of AvgACKPercentage to use Alpha/2 in tmrCallback.elapsed (was Alpha/1.5)
188.8.131.52 April 30, 2011 Modify logic in Transision from SendID to Disconnect states.
Add more descriptive tracing in SendID transition to document logic path taken
Modify WMProtocol.UpdateRobustFlag to save/restore shift parameters along with data mode
184.108.40.206 April 29, 2011 Temporarily remove auto robust shift (need to verify rest of algorithm first)
Eliminate enmLastModeSent variable now just enmCurrentDataMode
Modify restore of enmCurrentDataMode when leaving Robust mode.
Add addtional debug logging to trace Mode shifting and Robust shifting.
220.127.116.11 April 27, 2011 Modify auto shift mechanism to include new saved variable to save/restore current data mode when moving to/from Robust.
Shift to PSK4_2Car to <= 68 bytes (was 136) in CreateOBDataFrame
Change auto shift in CreateOBDataFrame to require ISS mode and to reinitialize backoffs and Shift Up/Dn Pct.
18.104.22.168 Mar 18, 2011 Modify CreateOBDataFrame Auto shift mechanism to restrict auto shifting to limited cases and to re establish average
ack percentage upon each shift.
22.214.171.124 Mar 16, 2011 Add Current call sign and connected call sign to WINMOR TNC Text when connected.
Additional changed in CreateOBDataFrame to use 2 carrier modes when possible after shitch to ISS.
126.96.36.199 Mar 14, 2011 Make minor change in CreateOBDataFrame to use 2 carrier mode when possible in 8 car modes.
188.8.131.52 Mar 10, 2011 Release of 184.108.40.206 (no changes)
220.127.116.11 Mar 10, 2011 Set busy block constants. Tquiet = 1500 ms, Tnbl = 600 ms
18.104.22.168 Mar 8, 2011 Modified Busy block logic.
22.214.171.124 Mar 6, 2011 Modified Protocol.SendIDFrame to use stcConnectedCall.strTargetCallsign if not empty to
accomodate proper ID of Aux call signs.
126.96.36.199 Mar 6, 2011 Modified CaptureDevices property to test for cllCapture devices and re initialize if nothing.
188.8.131.52 Mar 1, 2011 Added Synclock and use of blnFormClosing flag to avoid Graphic errors including form close.
184.108.40.206 Mar 1, 2011 Removed command processing for LOG (no longer used).
220.127.116.11 Feb 28, 2011 Added additional logging to track down waterfall issue.
18.104.22.168 Feb 28, 2011 Update revision level for release. No functional changes to 22.214.171.124
126.96.36.199 Feb 26, 2011 Modify "transparency key" on all visible forms to Deep purple to clear up transparancy issues on some installations.
188.8.131.52 Jan 29, 2011 Modifiy logic on FEC send to createOB data frame before testing for bytOB.length
184.108.40.206 Jan 15, 2011 Modified Upshift mechanism in GearShiftAlgorithm. Slow decrease with each try (was .5,now .666)
Limit max Shift up threshold to 92% (was allowed to approach 100%)
220.127.116.11 Jan 13, 2011 Add state conditions to WMInterface.Disconnect to not call AsyncDisconnectRequest if
in Disconnected, Disconnecting or Offline states.
18.104.22.168 Jan 11, 2011 Modify GearShift Algorithm: intTSF initialized at 30 sec then retries each 15 sec.
Eliminate CaptureState undefined
Insure forcing of capture state to SearchForLeader upon ACK transmission failure
Increase debug logging
22.214.171.124 July 9, 2010 Release of 126.96.36.199
188.8.131.52 July 8, 2010 Modified Busy Block to send "BLOCKED by Busy channel" in stead of FAULT. Documentaion updated.
Added wait of up to 5 seconds for Non busy channel for ID upon frequency change. If channel not clear after 5 sec will create busy channel fault and log.
Moved sound card buffer overrun log from exception to Debug. Always seems to recover correctly from this rare sound card hiccup.
184.108.40.206 July 4 Added tmrCallback.Stop() to all request for restarting the call back timer. This was likely the cause of unexplained short repeat cycles (e.g. Break) observed.
220.127.116.11 July 2 Release of 18.104.22.168 With Updated Help and documentation
22.214.171.124 July 2 Added Option in basic setup menu to enable/disable application/TNC traffic logging.
126.96.36.199 July 1 Modified ExtractEnvelope2 to require dblEnvPkMinusMin2Pk to be > .1 for framing
Modified SearchForLeaderTone3 to require intPk2MinCount > 2
Modified SearchForLeaderTone3 to start for peak search after 384 samples (was 512)
188.8.131.52 June 30 Added 5 Second watchdog time to Log exception and send FAULT if loss of tmrPoll for > 5 sec.
Modified SearchForLeaderTone3 to use fixed threshold of .1 in place of WMCB.Squelch/20
Modified threshold in WMLinkProtocol.ThreshDetect to used fixed value of .5 in place of WMCB.Squelch/10
Moved and Modified Squelch control to only affect busy detector
Modified CreateOBDataFrame to always use 4FSK (long or short) when WMCB.Robust True Modified WMDemodulate.ExtractEnvelope2 to search for last peak vs max peak
184.108.40.206 June 24 Release of 220.127.116.11
18.104.22.168 June 22 Trial elimination of synchlock in PlaySoundStream and in tmrPoll of Interface
Inclusion of exit in SearchForLeaderTone3 if pk count or PkToMin value too low to reduce
FFT loading of when low probability of detect.
22.214.171.124 June 21 Trial change to increase notify size from 8192 to 16384 and reduce #of notifications from 64 to 32.
Modify Interface.UpdateWaterfall to eliminate toggle since now is called half as often due to larger notify size.
126.96.36.199 June 20 Trial change in Protocol.ProcessNewCapturedData to change loop bailout to 40 (was 20) and reduce logging.
Modified Interface.WaitThread from 500 ms wait to -1 (infinite wait) Buffer size is approx 5 seconds.
188.8.131.52 Fixed Protocol.Send4FSKCodedControl to update strLastWave.
Fixed logic in PlaySoundStream that could cause race condition with early shutoff via PTT.
Fixed logic and PlaySoundStream to return capture state to SearchForLeader upon failure to start playing wavestream.
Trial Fix of WMProtocol.DecodeFrames (line 361/362) to avoid processing if in DISCONNECTING state.
184.108.40.206 June 16, 2010 Release of 220.127.116.11
18.104.22.168 Modify to update squelch value in the ini file if value changed AND nudSquelch is enabled.
22.214.171.124 June 14,2010 Release of 126.96.36.199
188.8.131.52 Modified Squelch control to be disabled on loss of focus and require clicking "Squelch" label to enable. This prevents accidental change especially with mouse wheel.
184.108.40.206 June 13. 2010 Production release of 220.127.116.11
18.104.22.168 June 12, 2010 Change reset of intInactivityTimeout from 15 sec to 30 sec. Added additional logging to track source of entry to disconnecting state.
Modification of ProcessNewCapturedData to avoid hangup
Incorporation of Squelch control and setting
Allow forcing Host address and Port number in command line startup
Imported part of V4 TNC to use Goertzel TD and FSF to improve accuracy of leader detector and coarse symbol framing. Created new function ExtractEnvelope2 and modified SearchForLeaderTone3 to use these.
Help and documentation updated.
22.214.171.124 May 12, 2010 Release of 126.96.36.199
188.8.131.52 Modified logging to show IntACK = -1 if frame ID decode failed.
184.108.40.206 Added while wait loop (300 ms max) in PlaySoundStream to wait for startup of objPlayback. Log if failure.
Modified logging to use strLastWav in PlaySoundStream
220.127.116.11 Added synchlock in WMInterface.tmrPoll to insure synchronization with PlaySoundStream
18.104.22.168 changed Try/Catch logging in WMLinkProtocol.ProcessNewCapturedData to include stack trace to hunt down overflow problem.
Modified AddToIBPacktsInProcess2 to delay distance error logging from 5*#carriers to 10*#ofCarriers
Modified criteria for shift to 4FSK if RObust = true to 4PSK score < 40 (was < 25) in WMLinkProtocol.CreateOBDataFrame
22.214.171.124 Put PTT Keying inside PlaySoundStream
Remove all calls to PTT except for PlaySoundStream and timeouts.
126.96.36.199 May 8, 2010 Release of 188.8.131.52
184.108.40.206 Added Connection State IRSModeShift to WMLinkProtocol.ProcessControl for Case Idle to eliminate hang if Answer to ISS Mode shift request results in an IDLE from ISS.
Update of Help and Help index
220.127.116.11 Fixed failure to update capture state on WMLinkProtocol.SendNCar8PSKTCM.
18.104.22.168 Modify tmrPoll interval back to 32 ms with slow segment every 64 ms.
22.214.171.124 Modify exception logging if aborting playing sound wave or stuck PTT in WMInterface.tmrPoll
Modify Sound card restart trip limit from 10 to 12 seconds.
Modify placement of dttLastSoundCardCapture=Now in WMInterface.ProcessCapturedData
Remove nested Try/Catch in WMInterface.ProcessCapturedData
126.96.36.199 Move set of RecState = Transmitting to in front of every call to PlaySoundStream
Put logic in WMInterface.ProcessCaptureData to not update water fall in Transmit mode.
Add synclock objPlaySoundStreamLock in WMInterface.PlaySoundStream
188.8.131.52 Removed condition of Not PTT in test for restart in this statement of tmrPoll.Tick
"If Now.Subtract(dttLastSoundCardCapture).TotalMilliseconds > 10000 And blnEnableCaptureRestart Then"
184.108.40.206 April 22, 2010 Release of 220.127.116.11
18.104.22.168 April 20, 2010 Set RestartRecovery to reset dttLastReply to avoid a timeout after sound card restart.
Changed sound card timeout trigger back to 10 sec (was 5) to see if it reduces the number of restarts.
Changed WMInterface.ProcessCapturedData to reset dttLastSoundCardCapture whenever bytCaptureData.length > 0
22.214.171.124 Change RestartCaptureDevice to insure playback buffer is not playing and NOT reset WINMOR connection state.
(need to verify this will recover a session)
Modify WMInterface.tmrPoll to 20ms(was 32) with sub tick every 100ms (was 64). Move some functions to 100 ms poll.
Reduce timeout trigger for RestartCaptureDevice from 15 to 5 seconds.
Try new Search for leader algorithm using WMDemodulate.SearchForLeaderTone3 which uses the Goertzel algorithm for non integer bin tone detection (more sensitivity and accuracy). Tests indicate Goertzel algorithm works and is more accurate using non integer frequency bins.
Increase margin in GetRecycleTime to 300 ms (was 200 ms).
Fixed non updates of dttLastGoodDecode in WMLinkProtocol (triggers use of Goertzel algorithm)
1.0.9 April 17, 2010 Replace synchronous queue Play wave stream mechanism with call to (now Public) PlayWaveStream() in WMInterface. Eliminates tmrPoll ambiguity and latency.
Remove EarlyPTT function and call (no longer needed with above).
Include automatic 40 ms Dwell in KeyPTT when going from Keyed to unkeyed.
Added clear of blnIDSent to Initialize (caused extra data repeat on startup).
Fix WMLinkProtocol.SendCWID to not show "-ssid" on transmit label.
Use Global Call sign filters to check valid call sign for registration.
126.96.36.199 April 15, 2010 Release of version 188.8.131.52
184.108.40.206 Add additional down shift mechnanism in WMLinkProtocol.GearShiftAlgorithm based on time since last positive ACK response. Should force downshift it > 45 sec since last dttReply (positive ACK).
Add provision in WMLinkProtocol.CreateOBDataFrame to shift to 2Car4FSK mode if Robust = true, and > 30 seconds since last positive ACK.
Make small tweak in BusyDetect to dblAvgBaselineFast = .5*(dblAvgBaseline + dblAvgBaselineFast) [was = dblAvgBaseline] to minimize BusyWide sensitivity to static crashes.
Fix comparison in RestartCaptureDevice that did not force upper case.
Make changes to accomodate large type fonts.
220.127.116.11 Changed measurement of turn around latency to occur only on initial response to data frame.
Changed GetCycle length to use intMeasuredTurnAroundLatency
Base intIDCycle calculation on intMeasuredTurnAroundLatency and recalc in MeasureLatency
Initial intMeasuredTurnAroundLatency set to 1500 ms (a safe value)...normally measured latency will be 700-1200ms.
Added mechanism for EarlyPTT upon initial connect request to insure proper PTT keying. Only affects initial answer ACK.
18.104.22.168 Mar 28, 2010 Add TCP Address parameter to basic setup and ini file. Defaults to "127.0.0.1"
22.214.171.124 Mar 26, 2010 Change local host setting on WINMOR TNC TCP port to "127.0.0.1" to insure it is using local loop back and not default internet connection.
Update help with firewall info.
126.96.36.199 Mar 25, 2010 Release (no changes from 188.8.131.52)
184.108.40.206 Mar 24, 2010 Modified intTquiet to be set for 500 ms after decode of Connect request and then reset back to 2000 ms in Busy Detect. Should allow shortening Con Req cycle.
Increase exception error logging for port issues.
220.127.116.11 Mar 22, 2010 Addition of automatic Basic Setup menu popup if port conflict/failure detected on startup. Test of updated port and opption to loop back or end program if port conflict remains.
Change Tquiet from 1800 ms to 1500 ms.
18.104.22.168 Mar 16, 2010 Release of 22.214.171.124 no changes from 126.96.36.199
188.8.131.52 Mar 15, 2010 Fixed a problem in WMDecode.DecodeConReq4FSK that was not showing a monitored Con req to another call sign if sum check was OK.
184.108.40.206 Mar 15, 2010 Modify resetting of dttLastReply on a connect request only if it matches the session ID (keeps other connect requests from holding up timeout)
220.127.116.11 Mar 15, 2010 Reduce Quiet time limit for non busy from 2000 ms to 1800 ms.
Modify registration reminder to accept call sign in addition to registration key.
18.104.22.168 Mar 12, 2010 Tweaks in SearchForLeader2, and SoftExHammDecde2. Move Threshold in leader detect from 2.5 to 2.0.
Add Command MAXCONREQ <limit> to adjust retry count limit 3-15 default = 5 (about 20 seconds)
22.214.171.124 Mar 4, 2010 Release for distribution ...no changes from 126.96.36.199
188.8.131.52 Mar 3, 2010 Added check for Nothing in AuxCalls() in WMDecode.DecodeConReq4FSK
Changed intInactivityTimeout upon receipt of initial connect request from 20 to 30 sec.
Changed intConnectReqTimeout from 15 to 20 seconds.
Added SetCaptureState(SearchForLeader) in WMLinkProtocol.ProcessID. This triggered a sound card restart if DecodeID4FSK failed.
Added asynchronous response "OFFSET" upon new tuning offset.
Changed intConReqCycle to 1195 + 256 + (22 * (intLeaderLength + intVoxExtension)) + 500 ms
Remove Exception logging for DisplayConstellation and DisplayWaterfall errors.
Modification of busy detector parameters. Minimum quiet before declearing clear = 2000, max pre ConReq Clear 500 ms, Connect request repeat cycle, 4200 ms, connect request frame length 1547 ms
Added support for SUFFIX command and Suffix CW ID.
184.108.40.206 Feb 28, 2010 Added command MYAUX to allow setting up to 10 auxillary call signs
Added asynchronous response TARGET to identify connect target
Modified registration pop up to only show on startup if not registered.
220.127.116.11 Feb 26, 2010 Increased timeout for sound card restart from 7 to 15 seconds.
Adding test for Busy Lock on FEC send modes.
Added test for Busy Lock on SendID command
18.104.22.168 Feb 26, 2010 Initial production release. Include 10 second sound card reset holdoff for CWID and send ID commands
0.4.1.11 Feb 25, 2010 Fixed error in WMDemodulate.AcquireFrameType4FSK that was causing premature abort (return -2) in some cases with sessions using VOX.
Added ability to select sound card default in Basic Setup
Added Command and response listing in debug log to help application developers.
Updated Help and documentation.
Modifed FEC modes to no automatically send ID frame at beginning and end of FEC transmission to facilitate keyboard modes.
0.4.1.8 Feb 9, 2010 Made command BW return the value of stcConnectedCall.SessionBW which will be 0 if not connected and either 500 or 1600 if connected.
0.4.1.7 Feb 5, 2010 Fixed startup minimized functionality.
0.4.1.6 Feb 4, 2010 Added condition in WMLinkProtocol.ProcessData to skip decoding of frame types 8-11 (8 carrier) modes if not in 1600 bandwidth mode.
Conditioned ACK of ID frame to only ACK if ID is to the station connected to.
0.4.1.5 2/1/2010 Fixed checks for Amateur, MARS and UK Cadet call signs that were in RegistrationHelper to use global functions. verified with correct check of "CIW111".
0.4.1.4 1/27/2010 Added ini and COMMAND LEADEREXT allowing leader extension up to 24 symbols (256 ms). Not yet fully tested.
Replaced INIFile with new version not using API to work around Vista problem.
0.4.1.3 1/25/2010 Removed NewState(Offline) in ProcessCapturedData now only command to go to state Offline is in StopCodec
0.4.1.2 1/24/2010 Added NewState(Disconnected) to WMInterface.RestartCaptureDevice upon successful restart.
Added Transmit lable update during two tone test.
0.4.1.1 1/22/2010 Debugged FEC mode both 500 and 1600 Hz. Default is FEC receive = disabled.
0.4.1.0 1/21/2010 Extended Trip time for dttLastSoundCardCapture from 3 to 7 seconds in WMInterface.tmrPoll
Extended retry hold off from 20 to 30 seconds in WMInterface.tmrPoll
In RestartCaptureDevice clear capture state and KeyPTT added.
ProcessCapturedData: Move Reset of dttLastSoundCardCapture to Decimation code.
Updated WMLinkProtocol.Process Control for case &HFF to not include state disconnecting.
Extend intActivityTimeout from 15 to 20 seconds in WMLinkProtocol.DecodeFrames
0.4.0.8 1/12/2010 Fixed bug in tmrCallBack.Elapsed where tmrCallBack interval was not set to FSKCtrlCycle when in ISSModeShift.
Increased window time on busy block to 1000 ms (was 500).
0.4.0.7 1/12/2010 Modified function RestoreOBQueueFromLastPSN to log and clear collections if intLastSequencedPSN = intLastPSKRestored to correct rare error in packet accounting.
Modified SENDID command to condition on DISCONNECTED state and put in test Menu item to SENDID.
0.4.0.5 1/10/2010 Added condition to WMInterface.Codec property to include condition last sound card capture.
0.4.0.4 1/6/2010 Increased size of notification buffer to 64 notifications (about 5.4 seconds)
Modified timeout and join time limits in StopCodec and RestartCodec functions
Incorporated suggestions from Peter in WaitThread
Additional additional Try/Catch and logging in ProcessCapturedData
0.4.0.0 1/3/2010 Added test for Average FSK Score of > 50 to allow 4PSK mode during proposal
Modified GearShiftAlgorithm to use intPSK4To4FSKBackoff in shifting up to PSK modes.
Modified PSK scoring algorithm to incorporate RMS calcualtion of both magnitude and phase
Added 42 ms "back Porch" extension to PTT to accomodate sound path latency in FLEX radios.
Initial coding (not fully tested) for 2 Car and 8 Car Viterbi 4FSK FEC broadcast modes.
Changed Log names to WM TNC Debug and WM TNC Exception
73 Jerry N9LYA
--- In BPQ32@yahoogroups.com, BPQ32@yahoogroups.com wrote:
> This email message is a notification to let you know that
> a file has been uploaded to the Files area of the BPQ32
> File : /WINMOR TNC 22.214.171.124.Zip
> Uploaded by : n9lya <n9lya@...>
> Description : Winmor TNC 126.96.36.199
> You can access this file at the URL:
> To learn more about file sharing for your group, please visit:
> n9lya <n9lya@...>
This email message is a notification to let you know that
a file has been uploaded to the Files area of the BPQ32
File : /Introduction to BPQ32 Telnet Server Version 6.zip
Uploaded by : n9pmo <mmelnik1@...>
Description : BPQ32 Mail Server 188.8.131.52 Telnet Setup
You can access this file at the URL:
To learn more about file sharing for your group, please visit: