Skip to content

Commit

Permalink
v1.6.5 Field Day Release
Browse files Browse the repository at this point in the history
  • Loading branch information
kd9lsv authored Jun 18, 2023
2 parents 16fcccf + 968b161 commit 1849b8c
Show file tree
Hide file tree
Showing 9 changed files with 1,626 additions and 211 deletions.
36 changes: 36 additions & 0 deletions .github/pull_request_template.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,36 @@
# Description

Please include a summary of the changes and the related issue. Please also include relevant motivation and context. List any dependencies that are required for this change. Please feel free to add pictures of the flow/dashboard(if applicable).

Fixes # (issue)

## Type of change

Please delete options that are not relevant.

- [ ] Bug fix (non-breaking change which fixes an issue)
- [ ] New feature (non-breaking change which adds functionality)
- [ ] Breaking change (fix or feature that would cause existing functionality to not work as expected)
- [ ] This change requires a documentation update

# How Has This Been Tested?

Please describe the tests that you ran to verify your changes. Provide instructions so we can reproduce. Please also list any relevant details for your test configuration. Feel free to add pictures if needed.

- [ ] Test A
- [ ] Test B

**Test Configuration**:
* Node Version:
* OS:
* Node-Red Version:

# Checklist:

- [ ] My flow change follow the style/s of this project
- [ ] I have commented my code, particularly in hard-to-understand areas
- [ ] I have made corresponding changes to the documentation
- [ ] My changes generate no new errors
- [ ] I have completed tests that prove my fix is effective or that my feature works
- [ ] New and existing unit tests pass locally with my changes
- [ ] Any dependent changes have been merged and published in downstream modules
6 changes: 5 additions & 1 deletion .gitignore
Original file line number Diff line number Diff line change
@@ -1 +1,5 @@
*.backup
*.backup
uibuilder/node_modules
package-lock.json
node_modules

11 changes: 10 additions & 1 deletion README.md
Original file line number Diff line number Diff line change
@@ -1,11 +1,20 @@
# Node Red Contesting Dashboard

A basic multi screen contesting dasbhoard written in Node Red. Currently it can display stats and contest related info from N1MM and TR4W contesting software. DXLog integration is spotty with more testing needed. There are reports that RumLogNG also works with the dashboard.
A basic multi screen contesting dasbhoard written in Node Red. Currently it can display stats and contest related info contesting logging software.

## About

This program is written in Node Red and displays a real time dashboard for ham radio contesting events. Radio, score, contact and lookup UDP broadcast packets are sent from each contesting computer to the Node Red server. That information is parsed out and displayed in real time for other contesters to follow. This dashboard is useful in a SO1V, SO2V, SO2R, multi/1, multi/2, multi-multi radio setup. It allows non-operating operators to keep up with the contest without hovering over an operators shoulders. This dashboard also allows an operator to stream the dashboard via the internet to engage an on-line audience. The program is also useful during Field Day where other operators or guests can follow along in the contest progress.

## Supported Loggers
| Logger Option | Compatiblity |
| :-------------------: | :------------:|
| [N1MM Logger +](https://n1mmwp.hamdocs.com) | Supported |
| [TR4W](https://tr4w.net/) | Supported |
| [DXLog](http://dxlog.net/) | Spotty |
| [RumLog](https://dl2rum.de/rumsoft/RUMLog.html) | Spotty |
| [N3FJP](https://www.n3fjp.com/) | Non-Currently Supported (Need help implmementing) |

## Screenshots

Here are some basic screenshots of the different tabs within the dashboard taken March 2022.
Expand Down
166 changes: 166 additions & 0 deletions docs/CONTRIBUTE.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,166 @@
# Instructions for Contributors and Maintainers

Here's a checklist for Contributors and Maintainers, using [Github workflow](https://guides.github.com/introduction/flow/).
The examples all assume you've [added a github ssh key](https://docs.github.com/en/free-pro-team@latest/github/authenticating-to-github/adding-a-new-ssh-key-to-your-github-account).

<!-- install markdown-toc: `npm install -g markdown-toc` -->
<!-- run `markdown-toc -i maintainer.md` to update this ToC -->

<!-- toc -->

- [Instructions for Contributors and Maintainers](#instructions-for-contributors-and-maintainers)
- [Contributors and Maintainers Defined](#contributors-and-maintainers-defined)
- [Fork the repo](#fork-the-repo)
- [Add a ref to the upstream repo](#add-a-ref-to-the-upstream-repo)
- [Make a feature branch](#make-a-feature-branch)
- [Make your changes](#make-your-changes)
- [Commit your changes and push to your repo](#commit-your-changes-and-push-to-your-repo)
- [Submit a Pull Request](#submit-a-pull-request)
- [Maintainer Only: Review and Merge Pull Request](#maintainer-only-review-and-merge-pull-request)

<!-- tocstop -->

## Contributors and Maintainers Defined

Anybody can be a *Contributor*. Follow the next steps to fork the repo, make a feature branch and submit a pull request (PR).

*Maintainers* have permissions to review and merge PRs into the master branch and to publish to the release branch.

## Fork the repo

If you are new to maintaining the docs, perform this one-time task:

Fork your own copy of the repo. In the examples below, I call it `my-repo`.

Go to https://github.com/kylekrieg/Node-Red-Contesting-Dashboard and click Fork.

Once you've forked it, you can clone it locally to your desktop, following the instructions provided.

```text
$ git clone [email protected]:myname/Node-Red-Contesting-Dashboard.git my-repo
$ cd my-repo
```

Your clone of the repo will have the default remote name of `origin`.

```text
$ git remote -v
origin [email protected]:myname/examtools-docs.git (fetch)
origin [email protected]:myname/examtools-docs.git (push)
```

## Add a ref to the upstream repo

Add a reference to upstream so you can keep your fork in sync.

```text
$ git remote add upstream [email protected]:kylekrieg/Node-Red-Contesting-Dashboard.git
$ git remote -v
origin [email protected]:myname/Node-Red-Contesting-Dashboard.git (fetch)
origin [email protected]:myname/Node-Red-Contesting-Dashboard.git (push)
upstream [email protected]:kylekrieg/Node-Red-Contesting-Dashboard.git (fetch)
upstream [email protected]:kylekrieg/Node-Red-Contesting-Dashboard.git (push)
```

Any time you want to get up-to-date with the latest changes, `git pull upstream master`:

```text
$ git checkout master
$ git pull upstream master
remote: Enumerating objects: 1, done.
remote: Counting objects: 100% (1/1), done.
remote: Total 1 (delta 0), reused 0 (delta 0), pack-reused 0
Unpacking objects: 100% (1/1), done.
From github.com:kylekrieg/Node-Red-Contesting-Dashboard
* branch master -> FETCH_HEAD
03a0672..fca28f5 master -> upstream/master
Updating 03a0672..fca28f5
Fast-forward
flow.json | 2 --
1 file changed, 2 deletions(-)
```

To keep your fork of the repo current, you can push to it (note that the first time you use this shortcut flavor
of `git push` you'll be prompted to do a longer command: `git push --set-upstream origin master`.
From then on just `git push` pushes to your repo).

```text
$ git push
Total 0 (delta 0), reused 0 (delta 0)
To github.com:myname/Node-Red-Contesting-Dashboard.git
03a0672..fca28f5 master -> master
```

## Make a feature branch

Now that your fork is current with the master branch, make a new feature branch to hold your changes.

```text
$ git checkout -b my_feature
Switched to a new branch 'my_feature'
```

## Make your changes

Make your changes using Node-Red Editor.

## Commit your changes and push to your repo

```text
$ git status
On branch my_feature
Changes not staged for commit:
(use "git add <file>..." to update what will be committed)
(use "git restore <file>..." to discard changes in working directory)
modified: flow.json
no changes added to commit (use "git add" and/or "git commit -a")
$ git add _index.md
$ git commit -m 'a useful short description here'
[my_feature 7701f9c] a useful short description here
1 file changed, 37 insertions(+), 34 deletions(-)
$ git push
fatal: The current branch my_feature has no upstream branch.
To push the current branch and set the remote as upstream, use
git push --set-upstream origin my_feature
$ git push --set-upstream origin my_feature
Enumerating objects: 13, done.
Counting objects: 100% (13/13), done.
Delta compression using up to 8 threads
Compressing objects: 100% (6/6), done.
Writing objects: 100% (7/7), 1.82 KiB | 1.82 MiB/s, done.
Total 7 (delta 3), reused 0 (delta 0)
remote: Resolving deltas: 100% (3/3), completed with 3 local objects.
To github.com:myname/Node-Red-Contesting-Dashboard.git
700e65d..7701f9c my_feature -> my_feature
Enumerating objects: 11, done.
Counting objects: 100% (11/11), done.
Delta compression using up to 8 threads
Compressing objects: 100% (6/6), done.
Writing objects: 100% (6/6), 1.30 KiB | 1.30 MiB/s, done.
Total 6 (delta 2), reused 0 (delta 0)
remote: Resolving deltas: 100% (2/2), completed with 2 local objects.
remote:
remote: Create a pull request for 'my_feature' on GitHub by visiting:
remote: https://github.com/myname/Node-Red-Contesting-Dashboard/pull/new/my_feature
remote:
To github.com:myname/Node-Red-Contesting-Dashboard.git
* [new branch] my_feature -> my_feature
Branch 'my_feature' set up to track remote branch 'my_feature' from 'origin'.
```

## Submit a Pull Request

Now go to the above URL in your browser and you can submit a PR.

You can now create a Pull Request (PR) which submits your edit to the main project:

At this point, if you are happy with your changes, the ball is in the court of the Node-Red-Contesting-Dashboard maintainers. They'll be notified of the PR and will either merge and deploy it or ask you for some further edits.

In the latter case, or if you discover that you didn't edit it quite right and need to tweak your changes,
you can edit some more and submit another commit on the same branch.

## Maintainer Only: Review and Merge Pull Request

As a maintainer you can review the PR, request changes, approve, etc. and then merge it to master.
164 changes: 164 additions & 0 deletions docs/DESCRIPTION.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,164 @@
## Configuration & Resets

General Notes

For any form, make sure to click the submit to save. Each section saves separately.

---

### Cluster with Dupes
Telnet Host configuration: w3lpl.net:7373

---

### Cluster without Dupes
Telnet Host configuration: dxc.ve7cc.net:23

---

### Radio Names
Enter the NETBIOS name into the top of the form and click submit. Then click the dropdown to add the PC to the Dashboard (Radio1 - Radio6).
Note you must use the NETBIOS name from the logging computer that is connected to each radio. If using N1MM, head to the network status (Window drop down -> Network Status) for more NETBOIS PC information.

---

### Contest Configuration
#### Exchange
Below are the options that display on the main dashboarad page for logged QSO's. Please click the correct received exchange.
(when in doubt use Full Exchange)

![Exchange Category](../pics/config&Reset/Exchange.png)

#### Category
Currently the options are the following.
SO1V - 1 VFO
SO2R - Single Op 2 Radio
Multi-Op

#### Contest Callsign
Enter in the callsign used for the contest.

#### Dashboard Rate
You can choose if you want the main dashboard to have the radio Qs/Hr vs operator Qs/hr.

Move the sliders for the 1HR low and high rate and 2HR low and high rate.

---

### Cluster Login Callsign
Enter in the callsign used to log into the cluster servers.

---

### Online Scoreboard

#### Contest Name
Enter in the Contest ID. To find the Contest ID for the current contest go to https://contestonlinescore.com/settings/ and look up the contest name and assoicated Contest ID.

Click the RESET ALL FIELDS to remove all values from the Online Scoreboard.

---

### Announcements

#### Say Multi On/Off
Toggle audio on or off for announcment of a multiplier.

#### Great Circle Lines On/Off
Toggle great circle lines to be drawn on/off on the main map.

#### Lightning Info Enable
Toggle lightning notification on/off. Togging off to on will connect to the lighting data stream. Be aware, this data stream is every lighting strike in the world and it bandwidth heavy on the Pi. Only enable in high bandwidth settings. Toggling on to off will restart Node Red.

### Lightning Circle (KM)
Move the slider for the dashboard to alert when lightning is detected wthin that distance.

---

### Dashboard Upgrade

#### Rolling Release

Rolling Release is the dev branch on github.
If there is any issue with changing this, you need to use the follow command in the root folder of the node-red project.

* `git checkout origin/dev`

To change back use

* `git checkout master`.

---

### Call Lookup Engine & Login

Options are HamDB, QRZ, and HamQth.
QRZ needs an XML subscription, while HamQth does need a login.
HamDB has limited functionality (USA/VE).

Enter in your username and password for the selected database and choose submit. If correct, you will receive an accepted dialog box. If not correct you will receive a wrong username/password dialog box.

---

### Measurement Units

Choose the distance units for mapping functions. Choices are miles or kilometers.

Temperature has options of Celsius or Fahrenheit. This is for monitoring the Raspberry Pi.

---

### Backup & Restore

Choose the correct operating system. Linux or Windows.

---

### OP Competition Sort By

The options to control on the Op Competition page are as follows:
* by QSOs
* by Score
* by Mults

---

### Map Configuration

#### Home Lat & Lon
Enter in your QTH lat and lon. Click submit. You will receive a dialog box when entered in successfully.

#### Label
Choose the type of label on each mapped QSO pin. Choices are Band Only, Band + Mode, Mode Only, Call Only.

#### Map Labels
Toggle to see map labels on logged QSO's.

#### TTL Value
Time (in seconds) for logged QSO's to diplay on the map. Q's made after this will drop off the map.

---

### Radiosport.live Data

#### Send Data
Experimental, this sends dashboard data to a central server. More to come.

#### Power
Select power used in the contest. Choices are QRP, LP, HP.

#### Class
Select your current operating class.

---

### Database Reset (IMPORTANT BEFORE EVERY CONTEST)
Click "DELETE ALL QSOS AND CLEAR STATS" before each contest to clear the database.

"QUERY ALL CONTESTS IN DB" will display all the contest stored in the database.

"CLEAR STATS ONLY" will only clear the current stats.

---

KK - 20230618
Loading

0 comments on commit 1849b8c

Please sign in to comment.