packet:mmdvm-tnc
Differences
This shows you the differences between two versions of the page.
| Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
| packet:mmdvm-tnc [2023/10/08 12:45] – [Building and flashing from source (hard(ish) mode)] m0lte | packet:mmdvm-tnc [2024/04/14 11:26] (current) – [Testing notes] m0lte | ||
|---|---|---|---|
| Line 14: | Line 14: | ||
| ===== Preparation ===== | ===== Preparation ===== | ||
| - | Burn Raspberry Pi OS Lite (tested | + | Tested |
| - | `sudo raspi-config` → interfaces | + | Verified to NOT work on 64 bit |
| + | |||
| + | Verified to NOT work on Bookworm, only Bullseye, due to / | ||
| + | |||
| + | Burn Raspberry Pi OS Bullseye 32 bit Lite to a micro SD, boot it | ||
| + | |||
| + | '' | ||
| Then: | Then: | ||
| Line 26: | Line 32: | ||
| # Fetch the flashing tool | # Fetch the flashing tool | ||
| - | curl -OL https:// | + | curl -OLs https:// |
| chmod +x stm32flashV5 | chmod +x stm32flashV5 | ||
| - | </ | ||
| - | ===== Flashing from the web ===== | + | sudo reboot |
| - | + | ||
| - | Unplug the board from the header | + | |
| - | + | ||
| - | Run the following: | + | |
| - | + | ||
| - | < | + | |
| - | curl -O https:// | + | |
| - | while ! sudo ./ | + | |
| </ | </ | ||
| - | Carefully but swiftly (!) plug the board into the header | + | ===== Building and flashing from source ===== |
| - | + | ||
| - | This is required because of some capacitor in the wrong charge state and there may be some workaround coming. | + | |
| - | + | ||
| - | + | ||
| - | ===== Building and flashing from source | + | |
| < | < | ||
| Line 65: | Line 57: | ||
| < | < | ||
| - | curl -O https://www.bi7jta.org/ | + | mv ../ |
| - | chmod +x stm32flashV5 | + | |
| while ! sudo ./ | while ! sudo ./ | ||
| </ | </ | ||
| + | |||
| + | Carefully but swiftly (!) plug the board into the header. If it fails, unplug the board for a while and leave it before trying again later. A minute or two should be fine. | ||
| + | |||
| + | This is required because of some capacitor in the wrong charge state and there may be some workaround coming. | ||
| + | |||
| ===== Testing notes ===== | ===== Testing notes ===== | ||
| Line 96: | Line 92: | ||
| < | < | ||
| sudo python3 kiss-ax25-ui-batch.py / | sudo python3 kiss-ax25-ui-batch.py / | ||
| + | </ | ||
| + | |||
| + | This will listen: | ||
| + | |||
| + | < | ||
| + | sudo python3 kiss-listen.py / | ||
| </ | </ | ||
| sudo required for this unless your user is in the dialout group. | sudo required for this unless your user is in the dialout group. | ||
| + | |||
| + | This diff hacks kiss-ax25-ui-batch.py to: | ||
| + | - set persist=255 | ||
| + | - divide supplied time interval by 10 | ||
| + | |||
| + | < | ||
| + | diff --git a/ | ||
| + | index 11b3a75..2ebcbf8 100644 | ||
| + | --- a/ | ||
| + | +++ b/ | ||
| + | @@ -120,6 +120,11 @@ TFESC = int(0xDD).to_bytes(1,' | ||
| + | TFEND = int(0xDC).to_bytes(1,' | ||
| + | | ||
| + | | ||
| + | + | ||
| + | +kiss_output_frame = bytearray(FEND) + bytearray(int(0x02).to_bytes(1,' | ||
| + | +# | ||
| + | +port.write(kiss_output_frame) | ||
| + | + | ||
| + | | ||
| + | | ||
| + | |||
| + | @@ -191,6 +196,6 @@ for i in range(0, frame_count): | ||
| + | # print(kiss_output_frame) | ||
| + | frame_time = len(kiss_output_frame) * 10 / int(sys.argv[2]) | ||
| + | port.write(kiss_output_frame) | ||
| + | - | ||
| + | + | ||
| + | | ||
| + | | ||
| + | </ | ||
| ===== Serial debugging ===== | ===== Serial debugging ===== | ||
packet/mmdvm-tnc.1696769104.txt.gz · Last modified: by m0lte
