-
Notifications
You must be signed in to change notification settings - Fork 12
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Define and extend N1MM communication protocol with N2IC #12
Comments
Hi Steve, Fetching these changes into your local repositoryI have pushed branch "fd-proto-n1mm-mr" into this repository. I did not create a pull-request into your repo because I don't want this branch to be accidently merged into your mainline. To get this branch, you can type (from your local repository):
Compile and testLet me know if you are not able to get this to compile. These changes should run with your version of Lazarus. To run MR in standalone mode in FD mode, edit your MorseRunner.ini file and change Let me know how your changes with N1MM proceed when you get a chance to work on it this fall/winter (after your busy summer). I am very interested in getting a bootleg copy of N1MM for additional testing. To push changes back to meIf you have changes to send back to me, there are several choices:
Steps to push your changes to your repository (I think this will work):
The above assume that your remote is called |
New Windows messagesNew Messages:
This message replaces WM_SETMYZONE using a contest-specific exchange string. Question: How do we return an error string for syntax error in exchange
Suggested messages for a more generalized protocol:
This first message will allow N1MM's Morse Runner Setup dialog to query Unfortunately, Morse Runner must be started before asking this question.
This message will select the current contest using and set a Question: How do we return an error string for an invalid contest key?
This message will start the selected contest in Pile-Up mode.
This message will start the selected contest in Single-Call mode.
There are two options:
Examples:
b) using name-value pairs:
Examples:
The advantage of this second form is that additional name=value pairs can |
Hi Steve @n2ic , |
Trying to run from N1MM for the first time. Here's the debug output. I'm stuck, wondering what SetMyExch1 really wants. Is there a way to direct the assert output to the debug.txt file ? Right now, I can only guess that it's stopping at the assert. TMainForm.FormCreate: GetCurrentThreadID 55960 |
It looks like the In the email I had sent earlier, I showed...
The strings above show the correct strings for As a workaround in my code, before calling SetContest() you can insert '5nn' to get this to work. This would be for scCQWW and scWpx, not scFieldDay (FD will send in both strings, 3A OR). |
Okay...made the change so N1MM sends 5nn 4. Working fine now for CQWW. I attached debug.txt so you can look at it and makes sure it's not "accidentally" working. |
Hi Steve, Instead of adding the work-around in N1MM, let's put the workaround in MR so I can fix this problem later. See Issue #42 for more information. I will get to this sometime this fall. Please insert the following into your code before the call to
Here is the larger context showing the message handler:
|
@n2ic Hi Steve, I've been slowly coding away on support for ARRL DX Contest. 73, |
Summary
Extend the N1MM-MorseRunner protocol to support additional contests (e.g. Arrl Field Day).
This will build upon N2IC's work to provide an integration of Morse Runner into N1MM Logger.
Motivation
Adding multi-contest support to N1MM/Morse Runner provides a valuable training and practice tool to prepare for upcoming contests or for training new and inexperienced contesters.
Members of the N1MM user community have also expressed interest in additional contest support within N1MM and Morse Runner.
Detailed Description
The goal here is to extend N1MM-MorseRunner communications protocol to support multiple contests when running N1MM's Morse Runner integration feature. Ideally, additional contests can be added to MorseRunner without N1MM code changes.
Proposed Changes
Below are my proposed changes to existing protocol. In the short term, we will verify that protocol changes can be supported by N1MM and Morse Runner (and perhaps DxLab?). After we verify this approach, we can explore a more generalized approach for the long term. These messages are sent by N1MM and handled within Morse Runner's WinProc handler in Main.pas. A more detailed description of these changes will be sent to Steve, N2IC, once we get started.
Short Term (as part of feasibility study)
Longer Term (as part of final implementation)
Note that specific changes to existing protocol will be documented in the checkin notes attached to this issue.
Additional context
The following diagram shows the existing protocol between N1MM and Morse Runner. The key startup, QSO processing and shutdown messages are summarized below. The proposed protocol changes are highlighted below in green; existing protocols are highlighted in blue.
Startup protocol
Proposed Revision to startup protocol
QSO loop
Proposed Revision to exchange field protocol
Shutdown protocol
The text was updated successfully, but these errors were encountered: