adds new draft post
This commit is contained in:
parent
84d126d914
commit
383b558026
11 changed files with 230 additions and 0 deletions
BIN
content/posts/2024/74-winlink-on-android-with-woad/emcom-android-thunder.thumb.png
(Stored with Git LFS)
Normal file
BIN
content/posts/2024/74-winlink-on-android-with-woad/emcom-android-thunder.thumb.png
(Stored with Git LFS)
Normal file
Binary file not shown.
200
content/posts/2024/74-winlink-on-android-with-woad/index.md
Normal file
200
content/posts/2024/74-winlink-on-android-with-woad/index.md
Normal file
|
@ -0,0 +1,200 @@
|
||||||
|
---
|
||||||
|
title: Winlink on Android with WoAD
|
||||||
|
summary: >
|
||||||
|
Since I moved from iOS to Android I had to look for another App to test
|
||||||
|
a small Winlink setup.
|
||||||
|
<small>The thumbnail was created with Google AI (Imagen 3).</small>
|
||||||
|
date: 2024-12-07T17:10:03+01:00
|
||||||
|
lastmod: 2024-12-15T15:47:02+0000
|
||||||
|
categories:
|
||||||
|
- amateur-radio
|
||||||
|
- computerstuff
|
||||||
|
tags:
|
||||||
|
- Android
|
||||||
|
- Archlinux
|
||||||
|
- command-line
|
||||||
|
- Digirig
|
||||||
|
- Linux
|
||||||
|
- Mobilinkd
|
||||||
|
- Networking
|
||||||
|
- Packet Radio
|
||||||
|
- Portable
|
||||||
|
- Vara FM
|
||||||
|
- Vara HF
|
||||||
|
- Winlink
|
||||||
|
- draft_post
|
||||||
|
|
||||||
|
# showBreadcrumbs: true
|
||||||
|
# showDate: false
|
||||||
|
# showReadingTime: false
|
||||||
|
# showWordCount: false
|
||||||
|
# showPagination: false
|
||||||
|
|
||||||
|
# feed_exclude: true
|
||||||
|
# site_exclude: true
|
||||||
|
|
||||||
|
# some help
|
||||||
|
#
|
||||||
|
# highlighting with highlights
|
||||||
|
#
|
||||||
|
# use table, as inline creates a padding around
|
||||||
|
# and it pushes the text more to the right side (end of screen)
|
||||||
|
#
|
||||||
|
# ~~~html {linenos=table,hl_lines="3-6"}
|
||||||
|
# ~~~html {linenos=inline,hl_lines="1,3-6"}
|
||||||
|
|
||||||
|
draft: true
|
||||||
|
---
|
||||||
|
|
||||||
|
So I recently sold my iPhone 14 Pro and bought a Google Pixel 9 Pro. I used that for
|
||||||
|
about two weeks when I finally replaced the vanilla Android with [GrapheneOS](https://grapheneos.org/).
|
||||||
|
|
||||||
|
The Android app for my setup is called [WoAD](https://woad.sumusltd.com/)
|
||||||
|
and is available on the [Google Play Store](https://play.google.com/store/apps/details?id=com.sumusltd.woad).
|
||||||
|
It currently costs € 6.99 :money_bag:.
|
||||||
|
|
||||||
|
I will assume the app is all setup with basic information like CALLSIGN, Grid, etc.
|
||||||
|
|
||||||
|
## Packet connection
|
||||||
|
|
||||||
|
I love simple and small configurations (mostly) and this one is really small.
|
||||||
|
When I'm out hiking I usually have an <abbr title="handheld transceiver">HT</abbr>
|
||||||
|
with me -- usually an Icom ID-52. Together with a Mobilinkd
|
||||||
|
<abbr title="terminal node controller">TNC</abbr> it is a very small
|
||||||
|
and (since Android) working solution for mobile/portable Winlink operations (I always
|
||||||
|
had problems getting the Bluetooth device working with the iPhone - not only with
|
||||||
|
the Mobilinkd but also other Bluetooth devices struggled with the iPhone...).
|
||||||
|
|
||||||
|
### Create a new session called **Packet**
|
||||||
|
|
||||||
|
On the main screen (probably the Inbox) click the top right menu (three dots) and select
|
||||||
|
<kbd>:right_arrow: Sessions</kbd>. On the bottom right menu (three dots) select
|
||||||
|
<kbd>:plus: Add</kbd>. Name it <kbd>Packet</kbd> and set the Protocol to <kbd>Packet</kbd>.
|
||||||
|
Touch <kbd>Settings</kbd> and select a Destination address. Select <kbd>RMS channel selection...</kbd>
|
||||||
|
and choose a nearby station. Go back and set <kbd>TNC type</kbd> to <kbd>KISS</kbd>. In
|
||||||
|
<kbd>TNC configuration</kbd> select <kbd>Bluetooth</kbd> as <kbd>Connection type</kbd> and
|
||||||
|
select the previosly paired Mobilink TNC under <kbd>Connection configuration/Device</kbd>.
|
||||||
|
<kbd>Device manufacturer</kbd> should stay <kbd>Generic</kbd>.
|
||||||
|
|
||||||
|
See these screenshots for reference.
|
||||||
|
|
||||||
|
| | | |
|
||||||
|
| ---------------------------------------------------------------------- | --------------------------------------------------------------------- | ------------------------------------------------------------------ |
|
||||||
|
| [![Session config screen](session.packet.1.png)](session.packet.1.png) | [![Packet config screen](session.packet.2.png)](session.packet.2.png) | [![TNC config screen](session.packet.3.png)](session.packet.3.png) |
|
||||||
|
|
||||||
|
We use the App Mobilinkd TNC to configure our TNC. The app is available at the
|
||||||
|
[Google Play Store](https://play.google.com/store/apps/details?id=com.mobilinkd.tncconfig)
|
||||||
|
and on [F-Droid](https://apt.izzysoft.de/fdroid/index/apk/com.mobilinkd.tncconfig) (or Neo Store).
|
||||||
|
|
||||||
|
Make sure the audiolevels are ok (<kbd>Audio Input Settings...</kbd>), also check the
|
||||||
|
<kbd>PTT Style</kbd> within <kbd>Audio Output Settings...</kbd>.
|
||||||
|
|
||||||
|
[![audio levels](settings.mobilinkd.audio.1.png "The most right red led should flicker a bit.")](settings.mobilinkd.audio.1.png)
|
||||||
|
|
||||||
|
Don't forget to disconnect the config app from the TNC.
|
||||||
|
|
||||||
|
Back in WoAD select the Packet session and hit the play button on the bottom (right).
|
||||||
|
|
||||||
|
## VARA FM and HF
|
||||||
|
|
||||||
|
The VARA modes will need another device that can run the VARA software which our
|
||||||
|
Android phone will connec to via port <kbd>8300</kbd>.
|
||||||
|
|
||||||
|
Assuming we have a working installation of VARA FM and VARA HF in a
|
||||||
|
32-bit wine environment in `~/.wine-winlink`.
|
||||||
|
|
||||||
|
Let us view the screenshots of my WoAD configuration -- create a new session for that
|
||||||
|
and call it <kbd>VARA FM</kbd>.
|
||||||
|
|
||||||
|
| | | | | |
|
||||||
|
| ---------------------------------------------------------------------- | ------------------------------------------------------------------------ | -------------------------------------------------------------------------- | ----------------------------------------------------------------------------- | ------------------------------------------------------------------------- |
|
||||||
|
| [![Session config screen](session.varafm.1.png)](session.varafm.1.png) | [![VARA FM Settings screen](session.varafm.2.png)](session.varafm.2.png) | [![Destination config screen](session.varafm.3.png)](session.varafm.3.png) | [![RMS channel selection screen](session.varafm.4.png)](session.varafm.4.png) | [![TNC configuration screen](session.varafm.5.png)](session.varafm.5.png) |
|
||||||
|
|
||||||
|
The configuration for VARA HF is nearly identical, just select <kbd>VARA HF</kbd> for the
|
||||||
|
<kbd>Protocol</kbd>. Don't forget to select a proper VARA HF station and make sure the
|
||||||
|
bandwitch matches.
|
||||||
|
|
||||||
|
### Setup on the laptop
|
||||||
|
|
||||||
|
In this scenario I use the internal network card (wlan0).
|
||||||
|
|
||||||
|
Usually there is no DHCP server installed, we will need one though (and hostapd):
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ paru -S dhcp hostapd
|
||||||
|
```
|
||||||
|
|
||||||
|
- Stop the network
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ sudo systemctl stop wpa_supplicant@wlan0.service
|
||||||
|
```
|
||||||
|
|
||||||
|
- Flush IP configuration on that interface and flush route table
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ sudo ip addr flush dev wlan0
|
||||||
|
$ sudo ip route flush dev wlan0
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
- Set the IP address that we will later use for connecting our WoAD client
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ sudo ip address add 192.168.30.1/24 broadcast + dev wlan0
|
||||||
|
$ sudo ip link set dev wlan0 up
|
||||||
|
```
|
||||||
|
|
||||||
|
- Start the DHCP server
|
||||||
|
|
||||||
|
I use this config for that:
|
||||||
|
|
||||||
|
```dhcp
|
||||||
|
option domain-name "mobile";
|
||||||
|
default-lease-time 600;
|
||||||
|
max-lease-time 7200;
|
||||||
|
authoritative;
|
||||||
|
log-facility local7;
|
||||||
|
subnet 192.168.30.0 netmask 255.255.255.0 {
|
||||||
|
option routers 192.168.30.1;
|
||||||
|
option subnet-mask 255.255.255.0;
|
||||||
|
option domain-name "mobile";
|
||||||
|
option domain-name-servers 192.168.30.1;
|
||||||
|
range 192.168.30.2 192.168.30.40;
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ sudo systemctl start dhcp4.service
|
||||||
|
```
|
||||||
|
|
||||||
|
- Start the hostapd service
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ sudo systemctl start hostapd.service
|
||||||
|
```
|
||||||
|
|
||||||
|
### Stop the services and bring back normal networking
|
||||||
|
|
||||||
|
- Stop the services (dhcp4, hostapd)
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ sudo systemctl stop {hostapd.service,dhcpd4.service}
|
||||||
|
```
|
||||||
|
|
||||||
|
- Flush the IP configuration on that interface again
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ sudo ip r flush dev wlan0
|
||||||
|
$ sudo ip a flush dev wlan0
|
||||||
|
```
|
||||||
|
|
||||||
|
Check for empty interface and route table with `ip r` and `ip a`.
|
||||||
|
|
||||||
|
- Start WPA supplicant service on wlan0 again
|
||||||
|
|
||||||
|
```console
|
||||||
|
$ sudo systemctl start wpa_supplicant@wlan0.service
|
||||||
|
```
|
||||||
|
|
||||||
|
Your normal IP address should be back on that interface shortly.
|
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.packet.1.png
(Stored with Git LFS)
Normal file
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.packet.1.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.packet.2.png
(Stored with Git LFS)
Normal file
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.packet.2.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.packet.3.png
(Stored with Git LFS)
Normal file
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.packet.3.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.varafm.1.png
(Stored with Git LFS)
Normal file
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.varafm.1.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.varafm.2.png
(Stored with Git LFS)
Normal file
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.varafm.2.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.varafm.3.png
(Stored with Git LFS)
Normal file
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.varafm.3.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.varafm.4.png
(Stored with Git LFS)
Normal file
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.varafm.4.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.varafm.5.png
(Stored with Git LFS)
Normal file
BIN
content/posts/2024/74-winlink-on-android-with-woad/session.varafm.5.png
(Stored with Git LFS)
Normal file
Binary file not shown.
BIN
content/posts/2024/74-winlink-on-android-with-woad/settings.mobilinkd.audio.1.png
(Stored with Git LFS)
Normal file
BIN
content/posts/2024/74-winlink-on-android-with-woad/settings.mobilinkd.audio.1.png
(Stored with Git LFS)
Normal file
Binary file not shown.
Loading…
Reference in a new issue