Warum CSS statt POCSAG?
POCSAG stammt aus den 1980ern und braucht ein Signal deutlich über dem Rauschen. CSS, bekannt aus LoRa, dekodiert zuverlässig noch bei etwa −12,5 dB unter dem Rauschteppich. Das übersetzt sich direkt in Reichweite: gleiche Abdeckung mit einem Bruchteil der Sendeleistung, oder deutlich mehr Abdeckung mit gleicher Leistung.
Für den Empfänger zählt vor allem die zweite Seite der Medaille: Die Chirp-Korrelation ist in Hardware (Semtech-Silizium) extrem sparsam, und das HamBird-Protokoll erlaubt es, den Empfänger fast immer schlafen zu lassen. Erst dadurch wird eine Knopfzelle als einzige Energiequelle realistisch.
- Reichweite
- Rund 20 dB Link-Budget-Vorteil gegenüber schmalbandigem FSK. Abschattungen, Innenräume und Randlagen werden erreichbar.
- Energie
- Kurze, robuste Frames plus geplante Empfangsfenster: Der Empfänger ist mehr als 99,9 % der Zeit im Tiefschlaf.
- Robustheit
- Die Spreizung macht das Signal unempfindlich gegen Schmalbandstörer und Frequenzdrift. Wichtig bei einer kleinen Chip-Antenne am Schlüsselbund.
Reichweite mit 50 W Sendeleistung (Überschlag)
| Posten | Wert |
|---|---|
| TX-Leistung 50 W | +47 dBm |
| TX-Antenne (Rundstrahler, exponiert) | +3 dBi |
| Kabel + Cavity-Filter | −3 dB |
| RX-Empfindlichkeit SAMR34 (SF9/125 kHz) | −129 dBm |
| Chip-Antenne am Mini-PCB | ≈ −12 dBi |
| Zulässige Streckendämpfung | ≈ 164 dB |
| Umgebung | Radius |
|---|---|
| Stadt Am Körper getragen (−5 bis −10 dB) eher 10 bis 15 km. | ≈ 20 km |
| Vorstadt, Randlage Lockere Bebauung, weniger Abschattung. | ≈ 30 bis 40 km |
| Offenes Land ≈ 25 bis 30 km bei 30 m Masthöhe, 50 km und mehr von einem wirklich exponierten Standort. | Funkhorizont |
Die Chip-Antenne ist der größte Minusposten, und genau das fängt CSS auf: −129 dBm Empfindlichkeit bei SF9 gegenüber etwa −110 dBm eines typischen POCSAG-Empfängers, rund 20 dB Vorsprung. Terrestrisch limitieren Bebauung, Vegetation und Erdkrümmung (Hata-Modell, Sender 30 m, Empfänger 1,5 m), nicht die Sendeleistung.
Vom Anruf auf dem Relais bis zur Benachrichtigung
HamBird hört auf einem ganz normalen Relais mit, zum Beispiel DB0SP. Fällt dort ein Rufzeichen, wird der zugehörige Empfänger per CSS gerufen. Reine Simplex-Aussendung, kein Rückkanal.
- 1
Relais
Ein OM ruft dich in Sprache auf dem Relais, z. B. DB0SP.
- 2
RX-Audio
Ein handelsüblicher Empfänger liefert das NF-Signal an den Audio-Eingang des Raspberry Pi.
- 3
VOSK
Offline-Spracherkennung erkennt dein Rufzeichen im laufenden Funkverkehr.
- 4
CSS-Sender
Der SX1268 erzeugt den Chirp, die Endstufe hebt ihn auf standorttaugliche Leistung.
- 5
Schlüsselbund
Dein HamBird wacht im nächsten Empfangsfenster auf, piept und zeigt den Ruf auf dem E-Ink.
VOSK hört das Relais ab, dein Rufzeichen ist der Auslöser
Auf dem Raspberry Pi läuft VOSK, eine komplett lokale Spracherkennung ohne Cloud und ohne Internetzwang. Sie lauscht dauerhaft auf dem Relais-Audio und sucht nach Rufzeichen: sowohl ausgesprochen („Delta Lima …“) als auch buchstabiert nach ICAO-Alphabet.
Wird dein Rufzeichen erkannt, geht innerhalb weniger Sekunden ein Ruf-Frame an deinen HamBird raus. Zusätzlich merkt sich der Sender die letzten 16 erkannten Rufzeichen und strahlt sie in größeren Abständen als Broadcast aus. So sieht jeder HamBird, wer zuletzt auf dem Relais aktiv war.
Ein kleines Web-Dashboard auf dem Pi zeigt live, was die Erkennung versteht, welche Rufe ausgelöst wurden und ob Beacon und Endstufe sauber laufen.
Die Anzeige auf dem 1,54″-E-Ink: 200 × 200 Pixel in Schwarz, Weiß, Rot und Gelb. Oben Relais und UTC-Zeit neben dem roten Alarm-Banner, darunter groß das gerufene Rufzeichen, unten die zuletzt gehörten Rufzeichen aus dem letzten Broadcast.
Ein Beacon pro Minute, der Herzschlag des Systems
Das Protokoll ist kompakt und komplett auf Empfänger-Energie optimiert. Gesendet wird auf 434,900 MHz mit Spreading Factor SF9; als mögliche Alternative ist 439,700 MHz im Gespräch. Der Sender strahlt jede Minute einen Beacon als Zeitsignal aus. Die Empfänger synchronisieren ihre Uhr darauf und öffnen den Empfänger nur zum erwarteten Beacon-Zeitpunkt, wenige Millisekunden pro Minute.
Die drei Frames
Alle drei Frames beginnen gleich: Chirp-Präambel, Sync-Byte, dann ein Kopf aus Nachrichtentyp und einem Byte Sender / Zeitschlitz. Erst danach folgt der typabhängige Inhalt.
Beacon jede Minute, Airtime ≈ 0,12 s
Ruf wenn VOSK ein Rufzeichen erkennt, ≈ 0,17 s
Broadcast etwa alle 10 Minuten, ≈ 0,53 s
Sender / Zeitschlitz: Wer hat wann gesendet?
Ein Byte, zwei Nibbles: Das obere Nibble ist die Sender-ID (0 bis 15, also bis zu 16 HamBird-Sender in einer Region), das untere der Zeitschlitz. Die Minute ist in 16 Schlitze zu je 3,75 Sekunden geteilt (0 bis 15); jeder Frame trägt die Nummer des Schlitzes, in dem er ausgesendet wurde. Der Empfänger kennt damit nicht nur die Minute, sondern die Sekunde, kann seine Uhr an jedem Frame nachstellen und merkt sich, über welchen Sender ein Ruf kam. Vor allem aber können sich mehrere Sender die Frequenz teilen: Jede Station bekommt feste Schlitze, und Beacon, Ruf und Broadcast einer Station (zusammen unter einer Sekunde) passen bequem in einen Schlitz. Im Simplex-Betrieb hören sich die Sender nicht, kollidieren aber auch nicht.
Braucht es eine 0x55/0xAA-Präambel?
Nein, das Bitmuster-Wecken stammt aus der FSK/POCSAG-Welt. Bei CSS besteht die
Präambel aus Upchirps, die der Funkchip in Hardware erzeugt und
erkennt; Bytes wie 0x55 0xAA gibt es auf der Luftschnittstelle gar
nicht. Die Standardlänge von 8 Symbolen (≈ 33 ms bei
SF9/125 kHz) reicht, weil die Empfänger dank Beacon-Sync genau wissen,
wann sie lauschen müssen. Einzige Ausnahme: Nach dem Batteriewechsel
lauscht der Empfänger einmalig bis zu 60 s durchgehend, bis er den ersten
Beacon fängt.
Rufzeichen: 6 Byte, aber richtig genutzt
ASCII verschenkt Platz: 6 Byte wären bei 8-bit-Zeichen nach 6 Zeichen zu
Ende, DK0ABC/P passte nicht mehr. Rufzeichen brauchen aber nur 38
Symbole (A bis Z, 0 bis 9, „/“, Ende). Als Base-38-Zahl gepackt
passen bis zu 9 Zeichen in dieselben 6 Byte
(38⁹ < 2⁴⁸). Beispiel DL1XYZ wird zur Ziffernfolge
4 12 28 24 25 26 und damit zu einer 48-bit-Zahl. Das Rufzeichen
selbst ist die Geräte-ID, der Empfänger vergleicht schlicht 6 Byte.
Zeitsynchronisation
Der Minuten-Beacon trägt die UTC-Minute, das Zeitschlitz-Nibble die Sekunde. Der Quarz des Empfängers muss nur eine Minute lang genau genug sein, das schafft auch ein Uhrenquarz mit großzügigem Fangfenster.
Empfangsfenster und Ankündigung
Zwischen den Beacons schläft der SAMR34 tief. Das Feld „Ankündigung“ im Beacon sagt, ob in dieser Minute noch ein Ruf oder Broadcast folgt. Nur dann bleibt der Empfänger die dafür nötigen Millisekunden länger wach. Simplex ohne Rückkanal: Der Sender wiederholt Rufe in den Folgeminuten, statt auf Quittungen zu warten.
Alle Frames auf 434,900 MHz (alternativ möglich: 439,700 MHz) mit SF9, 125 kHz Bandbreite, CR 4/5 und CRC-16 aus der LoRa-PHY. Das Byte Sender / Zeitschlitz kostet keine Airtime: Es passt bei allen drei Frames noch in denselben Codeblock. Alle Inhalte werden unverschlüsselt übertragen, wie es die Amateurfunkverordnung für diese Frequenzen vorschreibt.
SF9 als Basis, SF10 zum Vergleich
SF10 brächte 3 dB mehr Link-Budget (rund 25 % mehr Radius), verdoppelt aber alle Airtimes und damit Beacon-Empfangsfenster und mittleren Stromverbrauch des Empfängers. HamBird startet deshalb mit SF9; ein Wechsel wäre später per Firmware-Update möglich.
| SF9 (Basis) | SF10 (Vergleich) | |
|---|---|---|
| Empfindlichkeit | −129 dBm | −132 dBm |
| SNR-Grenze | −12,5 dB | −15 dB |
| Symboldauer | 4,1 ms | 8,2 ms |
| Airtime Beacon / Ruf / Broadcast | 0,12 / 0,17 / 0,53 s | 0,25 / 0,29 / 1,0 s |
| Beacon-Empfangsfenster | ≈ 100 ms/min | ≈ 250 ms/min |
| Mittlerer Strom | ≈ 12 µA | ≈ 25 µA |
| CR2032 realistisch | ≈ 16 Monate | ≈ 8 Monate |
| Reichweite Stadt | ≈ 20 km | ≈ 25 km |
Der Empfänger: kaum größer als das Display, monatelang wach
- Prozessor und Funk
- Microchip SAMR34Cortex-M0+ mit integriertem Semtech-CSS-Transceiver, ein einziger Chip für alles.
- Antenne
- Chip-AntenneKeramik, direkt auf der Platine. Möglich dank CSS-Link-Budget.
- Anzeige
- 1,54″ E-Ink200 × 200 px in Schwarz, Weiß, Rot und Gelb. Hält die Anzeige stromlos, Update nur bei neuem Ruf.
- Alarm
- TransducerPiept, wenn das eigene Rufzeichen gerufen wird.
- Energie
- 1 × CR2032Eine Knopfzelle, Ziel: mehr als sechs Monate Laufzeit.
- Contact-Taste
- Kontaktanzeige für FinderEin Druck auf die rote Taste zeigt die Kontaktdaten des Besitzers auf dem Display. Wer den Schlüsselbund findet, weiß, wohin damit.
- Funktionskontrolle
- Blaue LEDBlitzt alle 10 Sekunden kurz auf. Ein Blick genügt, um zu sehen, dass der HamBird läuft.
- Update
- USB-BootloaderFirmware-Updates über die USB-Buchse, kein Programmieradapter nötig.
Energie-Budget (Entwurf)
| Zustand | Strom | Anteil | Beitrag zum Mittel |
|---|---|---|---|
| Tiefschlaf (RTC läuft) | ≈ 2 µA | > 99,9 % | ≈ 2 µA |
| Beacon-Empfangsfenster | ≈ 5 mA | ≈ 100 ms/min | ≈ 8 µA |
| E-Ink-Update + Alarm | ≈ 10 mA | wenige s/Tag | ≈ 2 µA |
| Mittel | ≈ 12 µA | ||
| CR2032 brutto | 220 mAh | ÷ 12 µA | ≈ 18.300 h ≈ 25 Monate |
| CR2032 realistisch | ≈ 65 % nutzbar | Puls-Derating | ≈ 143 mAh, ≈ 16 Monate |
Überschlagsrechnung als Diskussionsgrundlage. Das Derating trägt der Chemie Rechnung: Eine CR2032 ist für etwa 0,2 mA Dauerlast gebaut. Die mA-Pulse von RX-Fenster und E-Ink-Update muss ein Stützkondensator liefern, sonst bricht die Zellspannung ein und ein Teil der Kapazität bleibt ungenutzt. Dazu kommen Fangfenster, Quarzdrift und Alarmhäufigkeit als Variablen. Selbst konservativ gerechnet bleibt vom Ziel „mehr als sechs Monate“ ein Sicherheitsfaktor von rund 2 bis 3.
Kosten pro Empfänger (Abschätzung)
| Komponente | ≈ € je Stück (10er-Serie) |
|---|---|
| Microchip SAMR34 | 7,00 |
| 1,54″ E-Ink BWRY 200 × 200 | 10,00 |
| Chip-Antenne + Anpassnetzwerk | 2,00 |
| Quarze (32,768 kHz + TCXO) | 2,50 |
| Transducer (Piezo) | 1,50 |
| USB-Buchse, CR2032-Halter + Zelle | 2,00 |
| Passives, LDO, Stützkondensator | 2,50 |
| PCB 4-lagig (10 Stück) | 3,00 |
| Gehäuse (3D-Druck, Eigendruck) | 1,50 |
| Summe Material | ≈ 32 € |
Mit Versand, Zoll und Ausschussreserve realistisch ≈ 35 bis 40 € pro Mustergerät; Bestückung als Eigenleistung gerechnet (Fremdbestückung: 5 bis 10 € mehr). Display und SAMR34 machen gut die Hälfte der Kosten aus. In einer 100er-Serie fällt der Stückpreis auf etwa 22 bis 25 €.
Der Sender: Mittel zum Zweck
Auf der Senderseite gibt es bewusst nichts Exotisches, nur Standardteile, die jeder OM beschaffen kann. Die ganze Intelligenz steckt im Protokoll und im Empfänger.
- Raspberry Pi (Mini-Format): VOSK-Spracherkennung, Protokoll-Logik, Beacon-Takt und Web-Dashboard.
- Semtech SX1268: erzeugt das CSS-Signal auf 434,900 MHz mit SF9.
- Mitsubishi RA60H3847M1: PA-Modul (378 bis 470 MHz), hebt das Signal auf standorttaugliche Leistung.
- RX-Empfänger: ein handelsüblicher Empfänger liefert das Relais-Audio (z. B. DB0SP) an den Pi.
- Web-Dashboard: Monitor für Spracherkennung, ausgelöste Rufe, Beacon-Status und Endstufe.
Kosten des Senders (Abschätzung)
| Kern-Sender | ≈ € |
|---|---|
| Raspberry Pi (Mini-Format) + SD-Karte | 30 |
| SX1268-Modul (mit TCXO) | 8 |
| Mitsubishi RA60H3847M1 PA-Modul | 100 |
| Kühlkörper + Lüfter | 25 |
| Netzteil 12,5 V / ≥ 15 A | 50 |
| Sender-PCB + Tiefpass-Bauteile | 25 |
| Abgeschirmtes Gehäuse (Alu, wetterfest) | 40 |
| Kleinteile, Sequencer, DC-Wandler | 20 |
| Zwischensumme | ≈ 300 € |
| Standort-Zubehör | ≈ € |
|---|---|
| Cavity-Bandpassfilter 70 cm (gebraucht/Kit) | 90 |
| Antenne (Rundstrahler) | 80 |
| Koaxkabel + Stecker | 40 |
| RX-Empfänger fürs Relais-Audio (gebraucht) | 40 |
| Zwischensumme | ≈ 250 € |
Gesamt ≈ 550 €, je nach Bezugsquellen 500 bis 650 €, einmalig: Ein Sender versorgt beliebig viele Empfänger. Ein Treiber ist nicht nötig, der SX1268 liefert mit +22 dBm mehr als die etwa 50 mW, die die RA60H3847M1 für Nennleistung braucht; eher gehört ein Dämpfungsglied dazwischen. Das Netzteil nicht unterschätzen: Bei etwa 40 % PA-Wirkungsgrad bedeuten 60 W HF gut 150 W Aufnahme.
Fahrplan: von der Idee zum HamBird am Schlüsselbund
Empfänger
- Schaltplan entwerfen.
- PCB mit KiCad routen, auf GitHub veröffentlichen und produzieren lassen.
- Fertige PCB bestücken und die Firmware mit E-Ink-Ansteuerung und USB-Bootloader entwickeln. Große Teile sind auf GitHub bereits als Open Source verfügbar.
- Gehäuse entwerfen und im 3D-Druck fertigen.
- Die Produktion von mindestens 10 Mustergeräten starten.
Sender
- Sender mit Endstufe (mindestens 60 Watt) als PCB entwerfen.
- Die Software entwickeln: VOSK-Spracherkennung, SX1268-Ansteuerung über SPI, Protokoll-Stack und Web-Dashboard.
- In einem abgeschirmten Gehäuse auf dem Dach eines exponierten Standorts montieren.
- Unbedingt einen Tiefpass zwischen SX1268 und Endstufe sowie einen Cavity-Bandpassfilter vor der Antenne vorsehen: wegen möglicher Oberwellen, für ein sauberes TX-Signal.
Messfahrten
- Die Reichweitenabschätzung durch Messfahrten in Stadt, Vorstadt und offenem Land validieren.
HamBird