25 iulie 2023

Acer Aspire 5: microphone not plugged in

Dupa instalarea sistemului de operare si a principalelor programe am trecut la configurarea acestora. Totul a fost in regula pina cind am ajuns sa setez placa de sunet pe microfon extern. Desi sistemul de operare afiseaza microfonul in fereastra Sounds - Recording - Microphone Realtek (R) Audio, acesta apare continuu deconectat. Oricit am incercat sa conectez si deconectez castile cu microfon, acesta nu a functionat. Iata imaginea:


Rezolvarea problemei a venit din greseala. Am conectat de proba o pereche de casti stereo fara microfon. Surpriza: pe ecran in coltul dreapta jos a aparut o fereastra mica pop-up in care eram intrebat: ce dispozitiv am conectat in jack-ul audio de la calculator? Am selectat Headset. Alta surpriza: in fereastra Sounds - Recording, Microphone Realtek (R) Audio a fost activat! Bineinteles, audio nu avea cum sa functioneze, castile mele nu au microfon. Am deconectat aceste casti si am conectat castile cu microfon. Imediat mi-a aparut fereastra pop-up si am selectat Headset. Din acest moment laptopul functioneaza perfect si detecteaza ori de cite ori conectez sau deconectez un dispozitiv audio.


Desi nu sint sigur, incerc o explicatie.
La prima folosire, cind laptopul este nou sau dupa prima instalare a sistemului de operare, acesta nu detecteaza conectarea unui dispozitiv audio precum casti sau microfon. Intrarea audio este pentru jack combo. Acest jack are patru contacte: iesire audio stinga, iesire audio dreapta, masa si microfon. Cind calculatorul a detectat castile fara microfon am introdus in conectorul combo un jack stereo obisnuit. Acesta are trei contacte: iesire audio stinga, iesire audio dreapta si masa. Eu cred ca prin scurtcircuitarea intrarii de microfon la masa, sistemul de operare sau placa audio a laptopului detecteaza pentru prima data conectarea unui dispozitiv audio la intrarea de microfon. Din acest moment laptopul va functiona perfect si va detecta de fiecare data conectarea sau deconectarea dispozitivului audio la conector. 


Personal cred ca atunci cind laptopul nu functioneaza, daca in conectorul audio se conecteaza orice jack mono sau stereo, de la orice dispozitiv audio, acesta va forta sistemul de operare sa detecteze conectarea. Aceasta este solutia. 
Nu mi se pare corecta aceasta abordare, dar este singura solutie care a rezolvat problema: microphone not plugged in!

Constantin BADICAN - YO7FWS
---  73's   YO7FWS  ---



25 ianuarie 2023

FM DX RDS PI Scanner (2)

         Voi incepe descrierea evolutiei proiectului meu cu o concluzie: in anul precedent receptorul scanner construit de mine a fost de un real folos, fiind unul dintre cele mai bune accesorii pe linga statia radio. Acesta a scanat fara zgomot banda de radiodifuziune si la aparitia posturilor de radio de la mare distanta, le-a deocodat identificatorul RDS PI si printr-o conexiune wireless le-am receptionat si decodificat tara de origine pe calculator. Doresc sa reamintesc ca sistemul este construit pentru receptia posturile de radiodifuziune de la mare distanta, din banda de radiofuziune 88 ... 108 MHz, care apar pe timpul propagarii E Sporadic, in scopul detectarii acestuia si identificarii directiei in care este propagarea.

         In sezon, la prima pornire a receptorului si incercarea de a-l utiliza, am identificat necesitatea modificarii softului care comanda si controleaza bucla PLL. Locuiesc intr-o zona puternic populata cu statii de radiodifuziune locale, astfel ca aproape toata banda de radiodifuziune este ocupata. Pornind de la acest aspect, am scanat manual banda de radiodifuziune si mi-am notat frecventele libere. Am rescris softul din Arduino Nano astfel incit sint scanate doar aceste frecvente libere. O alta modificare pe care am facut-o, a fost introducerea unui prag de nivel al semnalului receptionat. Astfel, daca nivelul semnalului receptionat este foarte mic, postul de radiodifuziune receptionat este ignorat la scanare. Cind nivelul atinge un prag ridicat, prestabilit, atunci scanarea se opreste pentru doua secunde in incercarea de a decodifica identificatorul RDS PI. Daca acesta este decodat, scanarea continua imediat, fara terminarea perioadei de doua secunde. Daca la sfirsitul perioadei de doua secunde postul de radio nu este identificat, scanarea continua. Tot acest scenariu a fost conceput in scopul maririi vitezei de scanare si a decodarii intr-un timp cit ma scurt a identificatorului RDS PI la cit mai multe posturi de radiodifuziune.

         Un alt aspect pe care l-am constatat a fost necesitatatea controlului scannerului si receptionarea datelor decodificate, de la distanta. Pentru acesta am completat constructia receptorului cu un modul WiFi bazat pe microcontrolerul ESP8266, respectiv ESP01S. Acesta comunica cu placa de comanda si control a PLL, respectiv Arduino Nano, printr-o conexiune seriala. Modulul ESP01S se conecteaza automat la reteaua locala WiFi si este capabil sa transmita datele in ambele directii: dinspre Arduino Nano catre un PC sau invers. Pe PC se poate face monitorizarea scanarii si receptionarea identificatorilor RDS PI decodati. Identificatorii sint preluati de un program si afisata pe ecran tara de origine a postului de radiodifuziune. Invers, dinspre PC catre Arduino Nano, se pot transmite comenzi care pot modifica functionarea scannerului. Datorita conexiunii wireless si utilizarea unei retele locale este posibila, monitorizarea si comanda de la mare distanta, din alta locatie decit cea a receptorului. Pe viitor intentionez sa folosesc un al doilea receptor din locatia mea de baza, la Slatina.

         Programul care comanda de la distanta si monitorizeaza receptorul scanner este conceput de mine. Acesta creaza si salveaza jurnale de receptie radio pe sesiuni. Detine o baza de date cu identificatori RDS PI care este intr-o continua reinoire. Pe masura ce receptionez si identific un RDS PI nou, acesta este adaugat manual in baza de date. Cind postul de radiodifuziune este receptionat din nou, tara de origine este afisata automat. Nu intentionez sa identific numele postului de radiodifuziune. Acesta necesita un timp mai indelungat de receptie si micsoreaza sansa de a receptiona alte posturi de radiodifuziune noi.

         O alta imbunatatire pe care am adus-o a fost adaugarea unui buzzer audio. Acesta este foarte util atunci cind nu sint in aproperea scannerului sau sint ocupat cu statia radio. In momentul care scannerul opreste scanarea in vederea decodarii RDS PI sau cind acesta este decodat, buzzerul emite un semnal scurt, audio, de atentionare. Atentionarea s-a dovedit foarte utila si nu de putine ori am fost alertat cu folos. 

Proiectul continua!


Constantin BADICAN - YO7FWS
---  73's   YO7FWS  ---
 



14 ianuarie 2023

Cit de departe poti fi auzit cu 1 mW putere?

Mi-am propus un experiment: cit de departe se aude baliza mea, in banda de 3.5 MHz, atunci cind emite cu o putere de 1 mW?

Fara sa mai stau prea mult pe ginduri am trecut la treaba. Am deconectat antena si am comutat baliza pe rezistenta de sarcina, interna, 50 ohmi. Am reglat semireglabilul pina ce puterea a fost aproximativ 1 mW. Am reprogramat mesajul WSPR transmis de microcontroler si am repornit baliza. Aceasta urmeaza sa transmita si sa fie monitorizata, timp de trei zile, mesaje in WSPR si FT8.

Dupa prima noapte de emisie iata rezultatele:
- in FT8 baliza a fost receptionata de un singur corespondent, YO9FEB, la cca 139 Km departare, cu un nivel foarte mic, -24dB
- in WSPR situatia este ceva mai buna. Baliza a fost receptionata de 30 corespondenti si raportata de cca 494 ori. Foarte intersanta este distanta maxima la care a fost auzita: 1962 Km, in JO01IS, de catre 2E0PYB. Aceasta s-a intimplat la ora 05.26 UTC si a fost singura receptie. Nivelul semnalului receptionat a fost -31dB.
Primele receptii au inceput la ora 15.38 UTC si ultimile au fost, a doua zi, la ora 06.26 UTC. Pe timpul zilei nu a fost raportata nicio receptie.

La emisie baliza utilizeaza o antena dipol pentru banda de 3.5 MHz, la o inaltime de 15m, orientata nord - sud, la care coborirea este formata dintr-o pereche de fire torsadate extrasa dintr-un cablu UTP, utilizat pentru internet. Antena este reglata si functioneaza foarte bine.

Receptia baliziei in timp real poate fi vazuta aici:

Un tabel cu evolutia receptiilor din prima zi poate fi descarcat de aici: https://drive.google.com/file/d/1kVH1_ZamnnSjMKL5VhwIWyAt-qJcS8OR/view?usp=share_link


15.01.2023
Iata rezultatele dupa alte 24 ore de emisie cu putere redusa:
- in FT8 au fost posibile doar doua receptii: LZ2ZG din KN23BE, 132 Km, si OE5GQQ din JN78FA, 856 Km, record de distanta in FT8. Ceea ce mi se pare interesant este ca ambele receptii, cit si cea din ziua precedenta, au fost la inceputul sau sfirsitul perioadei de propagare radio. Nu s-a raportat nicio receptie pe perioada de desfasurare a acesteia. 
- in WSPR atit numarul de corespondenti, cit si distanta, au scazut. Probabil propagarea radio a fost mai scazuta comparativ cu ziua precedenta. Un numar de 20 corespondenti au raportat receptia, cel mai departat fiind ON5KQ din JO10OS, 1765 Km. Prima receptie a fost raportata pe 14.01.2023 la ora 15.18 UTC, ultima receptie fiind azi la ora 06.14 UTC. Au fost raportate in total 265 de receptii cu 229 mai putin decit in ziua precedenta.
Iata tabelele cu evolutia receptiilor in:
- FT8


16.01.2023
Acestea sint ultimele receptii din experimentul meu:
- in FT8 au fost doar doua receptii: DL0PF din JN68RN, cu 951 Km, record final de distanta in FT8 si SP7QJF din KO10FQ, cu 715 Km. Ambele receptii au fost in dimineata aceasta, la un interval scurt intre ele.
- in WSPR au fost raportate un numar de 523 receptii de la 29 corespondenti. Cel mai departat corespondent a fost ON5KQ din JO10OS, 1765 Km, lafel ca in ziua precedenta. Prima receptie a fost raportata pe 15.01.2023 la ora 15.30 UTC si ultima azi la ora 06.14 UTC. 
Daca privim cu atentie intervalele cind au fost raportate primele receptii si ultimele acestea coincid, diferenta de timp fiind foarte mica. Ceea ce face diferenta este numarul de receptii care difera in functie de propagarea radio.
Si acum: cit de departe poti fi auzit cu 1 mW putere?
Raspuns: in functie de anumite conditii, pina la aproximativ 2000 Km.

De ce exista diferente de distanta intre FT8 si WSPR, daca avem aceeasi putere si mult mai multi corespondenti la receptie?
Pentru ca nu sint exact acele 'anumite conditii' din raspunsul de mai sus, HI! 
Glumesc. Probabil frecventa audio, la emisie, setata de mine, aproximativ 500 Hz, nu este optim aleasa. Probabil alte emisiuni radio o acopera, portiunea respectiva fiind destul de aglomerata. Cine poate stii? Important este rezultatul: 1mW se aude la 2000 Km.

Acestea sint ultimele tabele:
FT8
WSPR

Pe timpul experimentului am primit rapoarte de la YO7CKQ. Acesta a decodat mai multe transmisii WSPR. Multumesc Sorin!

Experimentul s-a incheiat!

Constantin BADICAN - YO7FWS
---  73's   YO7FWS  ---




30 decembrie 2022

Incă o bifă in palmaresul personal (2)


                 Locul 1 la Campionatul Național deCreație Tehnică, ediția 2022, Sectiunea C, desfășurat pe 24 Septembrie la Sărata Monteoru, Buzău. 
Am participat cu lucrarea "LogulMeuUUS – jurnal electronic pentru concursurile in unde ultrascurte". Proiectul din descrierea lucrarii a fost inceput in anul 2012 si dupa 10 ani de munca a fost recompensat cu o medalie si diploma. Asa da! Iata ca stradania mea nu a fost de prisos. Continui!

Constantin BADICAN - YO7FWS

---  73's   YO7FWS  ---

02 decembrie 2022

Baliza radio WSPR (2)

Caracteristici

  • Baliza de interior, cea mai simpla versiune. 
  • Nu necesita GPS sau RTC pentru sincronizare, dar are nevoie de o conexiune la internet. 
  • Constructie usoara, cablaj imprimat cu dimensiuni reduse. 
  • Frecventa de emisie: 3568.6 KHz.
  • Putere de iesire: 100 mW. 
  • Alimentare: 9V / 250mA.
  • Este dotata cu rezistenta de sarcina si detector, pentru masurarea si reglarea nivelului puterii. 
  • Etaj final cu tranzistori BS170, dar pot fi inlocuiti cu un IRF510, montat pe partea inferioara a cablajului, in contact cu un radiator.
  • Cu exceptia componentelor active am folosit numai componente recuperate. 
  • Baliza poate emite continuu sau dupa un orar.


Principiul de functionare

Microcontrolerul ESP01 are rolul de a comanda modulul SI5351A. Acesta se conecteaza automat la internet si interogheaza un server NTP. Mesajul receptionat reprezinta timpul UTC la momentul interogarii. Microcontrolerul extrage minutele si secundele pe care le compara cu orarul de emisie. In functie de timp acesta comanda pornirea secventelor de transmitere a semnalului WSPR. Semnalul de radiofrecventa extras la iesirea CLK1 al modulului SI5351A este amplificat cu ajutorul a trei tranzistori BS170 si aplicat antenei, prin intermediul unui filtru trece jos. Am folosit trei tranzistori in paralel pentru ca disiparea termica sa fie redusa pe fiecare tranzistor. Circuitul antenei este prevazut cu o rezistenta de sarcina de 50 ohmi si un detector de radiofrecventa. Acestea sint comutabile prin intermediul strapului S1. Intre punctele M1 si M2 se poate masura, cu ajutorul unui voltmetru, tensiunea virf la virf pe rezistenta de sarcina, respectiv puterea de iesire a balizei. Personal am alimentat montajul cu o tensiune de 9V, cu un consum de cca 250mA, pentru o putere debitata de 100mW.


Punerea in functiune

Se incarca in microcontroler programul Calibrare_WSPR.ino. Acesta va emite o purtatoare continua care va ajuta la reglarea puterii de iesire din etajul final. Pe timpul reglajelor antena trebuie sa fie deconectata. Inainte de alimentare se regleaza cursorul potentiometrului semireglabil la masa, in sens invers acelor de ceasornic, astfel incit tensiunea pe grila tranzistoarelor dupa alimentare va fi 0V. Se monteaza strapul S1 si un voltmetru intre punctele M1 si M2. Montajul se alimenteaza cu tensiune continua  si se verifica existenta tensiunilor de alimentare in punctele U1 6V, U2 3V3 si 0V in U3. Se creste incet tensiunea in punctul U3 prin reglarea potentiometrului semireglabil P1, in sensul acelor de ceasornic, si se urmareste indicatia voltmetrului. Cind tensiunea indicata este 3.2V se opreste reglajul. In acest moment etajul final debiteza 100 mW. Tensiunea aproximativa in punctul de masura U3 este 1.5V, dar poate fi diferita in alte montaje similare. Se deconecteaza alimentarea si voltmetrul. Se programeaza microcontrolerul cu programul ESPWSPR.ino si se conecteaza antena. In acest moment baliza poate fi pusa definitiv in functiune. 




Precizari

Montajul a fost realizat pe o bucata de cablaj imprimat simplu placat cu dimensiunile 58 x 54 mm. Torurile folosite la filtrarea semnalului din etajul final sint de origine necunoscuta. Valorile inductantelor L1 si L2 au fost calculate online si realizate prin masuratori. Intreg montajul a fost introdus intr-o carcasa de protectie realizata din plexiglass. Baliza emite continuu semnal WSPR si porneste emisia la fiecare minut par, secunda zero. Setarea mesajului personalizat transmis de baliza WSPR se face cu ajutorul encoderului online de la aceasta adresa: https://swharden.com/blog/2021-03-27-wspr-code-generator/


Constantin BADICAN - YO7FWS

Descarca: ESPWSPR.ino

---  73's   YO7FWS  ---
 


18 aprilie 2022

Arduino RDS PI decoder

Dupa construirea receptorului FM, urmatoarea etapa a fost integrarea unui decodor RDS. In prima faza intentia mea a fost intelegerea principiului de transmitere RDS si decodarea acestuia. Ulterior, dupa ce am citit mai multe documente pe internet, am trecut la experimente. Folosind semnalele de ceas si date, furnizate de un receptor Sony ST-SE370, am incercat si am reusit sa decodez. Am folosit un Arduino Nano, care s-a potrivit perfect nivelelor semnalelor din receptor. Ultima parte a proiectului a reprezentat simplificarea codului sursa, micsorarea timpului de decodare si extragerea doar a datelor care ma interesau, respectiv identificatorul PI.

Transmisiunea RDS se face in paralel cu semnalul audio stereo in cadrul unui semnal multiplex. Transmisia este seriala, cu o viteza de 1187.5 biti / secunda. Datele sint impartite pe grupuri. Acestea la rindul lor sint impartite in blocuri: A, B, C, D. Fiecare bloc are 26 biti, fiecare grup are 26 x 4 = 104 biti. Intr-o secunda sint transmise cca 11 grupuri. Blocul A contine identificatorul PI. El se regaseste in primul bloc din fiecare grup transmis, din 104 in 104 biti. In concluzie, blocul A este transmis de cca 11x / secunda, respectiv odata la 87.5 milisecunde.

Daca blocul A este transmis de cca 11x / secunda, cred ca este deajuns, in cadrul unor reflexii MS, de scurta durata, daca semnalul este destul de puternic, sa pot identifica PI-ul postului transmis. Pentru aceasta imi este necesar o receptie a grupului, respectiv 87.5 milisecunde, pentru a decoda si memora temporar PI-ul postului receptionat. Urmat dupa aceea de inca o receptie a grupului, alte 87.5 milisecunde, pentru a decoda dinou ID-ul si apoi sa il compar cu primul PI temporar. In caz de egalitate, totul este ok, am identificat postul, altfel, reiau procesul de la inceput.

Aceasta ultima afirmatie este pura teorie. Nu am testat-o inca. Teoretic ar putea sa functioneze, practic voi afla in vara aceasta, cu ocazia Perseidelor. In anii precedenti am receptionat des semnale de scurta durata via MS intr-un receptor auto. Anul acesta am posiblitatea sa si testez.

Schema de principiu este simpla. Pini de date si masa au fost conectati direct la microcontroler. Nu a fost necesara nicio interfatare, nivelele semnalelor sint perfect compatibile, 0 - 5V. Pinii D2 si D3 sint folositi ca intrari si sint conectati pull-up intern din setarile software. Rezultatul decodarii se trimite prin intermediul portului serial in USB la calculator si evidentiat intr-un monitor. Alimentarea se face din portul USB al calculatorului.

Software-ul seteaza pinii ca intrari si activeaza o intrerupere interna pe pinul de ceas. Dupa receptionarea a 26 de biti de date se incearca identificarea blocului prin calcularea CRC. Daca CRC nu este bun operatia se repeta. Cind CRC este ok, se identifica blocul. Daca blocul este altul decit A, se calculeaza dupa citi biti urmeaza blocul A si se reia asteptarea blocului A. Cind blocul A este identificat, se decodeaza si memoreaza PI. Se asteapta timp de 104 biti, se receptioneaza urmatorul bloc A, fara sa se mai verifice CRC, se extrage PI si se compara cu primul decodat. Daca este in regula se trimite prin intermediul portului serial catre calculator pentru a fi afisat pe monitor.

Aceasta este pe scurt descrierea algoritmului decodorului meu si intentiile mele pentru a-l folosii. Mai multe detalii dupa experimentele ce urmeaza sa le intreprind.

Sa vina vara, eu sint pregatit!

Constantin Bădican - YO7FWS

Descarca: codul sursa

Pentru realizarea proiectului m-am inspirat din:

---  73's   YO7FWS  ---

15 aprilie 2022

Alertă E Sporadic prin SMS

Salut!
Curind incepe sezonul de propagare E Sporadic in unde ultrascurte. Sinteti pregătiți? 
Iată ce mi-am construit: un sistem de alertare prin SMS in caz de propagare E Sporadic.
Dispozitivul monitorizează anunțurile de pe DXCluster și dacă sint raportate legaturi radio via E Sporadic, mă anunță in cel mai scurt timp, printr-un SMS. Folosesc dispozitivul din anul 2017 și de-a lungul timpului mi-a adus reale satisfacții.

Hardware

Circuitul are in componența sa două module interconectate: un microcontroler ESP8266 și o placă de dezvoltare GSM, respectiv IOT-GA6. Microcontrolerul este componenta principală a dispozitivului. Acesta se conectează prin WiFi la internet și dupa aceea la un server DXCluster. Tot el monitorizeză anunțurile și declansează alertarea. Placa de dezvolare GSM asigură conexiunea telefonică cu un operator și in caz de alertă, transmite SMS. Comunicația intre cele două module se face prin intermediul porturilor seriale din dotare. Acestea sint alimentate cu tensiune prin intermediul a două stabilizatoare de tensiune: 3.3V și 5V. Conectarea la rețeaua WiFi, logarea la serverul DXCluster și conectarea la rețeaua GSM sint semnalizate prin intermediul a două LED-uri.


Intregul  montaj a fost realizat pe o bucată de cablaj imprimat cu dimensiunile 58 x 53 mm. Montajul a fost introdus intr-o carcasă din plexiglass. 


Principiul de funcționare
Pe DXCluster sint anunțate continuu legăturile radio realizate intre corespondenți și suplimentar, pentru informarea comunității, modul de propagare. Dispozitivul monitorizează conținutul acestor anunțuri și cind identifică cuvinte cheie precum: <ES> sau ESporadic, se prealertează sau anunță prin SMS utilizatorul. 

In timpul funcționării, dispozitivul se poate afla intr-una dintre următoarele stări: starea de veghe, starea de prealertare și starea de alertare.

Atunci cind nu este propagare radio dispozitivul se află in stare de veghe. In tot acest timp, monitorizează anunțurile in vederea identificării unuia care implică propagare de tip E Sporadic.

In starea de prealertare se trece intotdeauna numai din starea de veghe. Tranziția are loc doar atunci cind se identifică un anunț care implică propagare de tip E Sporadic. Invers, trecerea din starea de prealertare in starea de veghe, se face atunci cind după anunțul de prealertare, timp de 15 minute, nu mai este identificat un alt anunț asemănător. In acest caz, prealertarea a fost o alarmă falsa, o deschidere de scurtă durată a propagării radio.

Alerta propriu-zisă, starea de alertă, se activează intotdeauna numai din starea de prealertare. Condiția de alertare este dată de apariția după primul anunț de prealertare a unui alt anunț asemănător, intr-o perioadă mai scurtă de 15 minute. In concluzie, intr-un interval mai mic de 15 minute, primul anunț declanșează prealertarea, iar al doilea declanșează alerta SMS, respectiv semnalizează deschiderea propagării radio.

Trecerea din stare de alertă in stare de veghe reprezintă sfirșitul propagării radio. Aceasta se consideră incheiată cind timp de 60 minute de la ultimul anunț, care implică propagare de tip E Sporadic, nu se identifică un alt anunț asemănător.

Cuvintele cheie și duratele de timp folosite au fost astfel alese incit să nu existe alerte SMS false sau rateuri. 

Software
Programul care gestionează dispozitivul a fost scris in limbajul Arduino. Pentru o bună funcționare au fost implementate urmatoarele funcții:
- conectarea la internet prin rețeaua wireless și semnalizarea conectării
- conectarea la un server DXCluster, logarea și semnalizarea logării
- conectarea la rețeaua GSM și semnalizarea conectării
- filtrarea anunțurilor
- identificarea anunțurilor, prealertarea, alertarea și revenirea la starea de veghe
- trimiterea anunțurilor prin SMS
- menținerea activă a conexiunii cu serverul DXCluster
- resetarea dispozitivului in caz de eroare


Alerte false
Dispozitivul nu este perfect. Nu este capabil să identifice anunțurile false. Acesta tratează toate anunțurile identic. Pentru a micșora numărul de alerte false trebuiesc imbunătățiți algoritmii de analiză și filtrare. Din fericire aceste anunțuri false sint tot mai puține in ultima perioadă.

Iată două cazuri care pot genera alerte false:

Are loc o legatură radio intre doi corespondenți și acestia raportează fiecare legatura pe DXCluster. Dacă anunțurile apar consecutiv, intr-o perioadă mai scurtă de 15 minute, dispozitivul le identifică ca două anunțuri: unul de prealertare și celalalt de alertare. In realitate avem o singură legatură radio.
Soluție: verificarea incrucișată a indicativelor din anunțuri și ignorarea ultimului anunț in caz de egalitate.

Un alt caz de alertă falsă este atunci cind se raportează greșit legătura radio. Aceasta se intimplă cind legăturile radio Tropo sint raportate ca legaturi radio E Sporadic. 
Soluție: calcularea distanței intre locatoare și dacă este <700..1000 km, se va ignora ultimul anunț.

Alerta prin SMS se poate adresa unui destinatar sau grup de destinatari. De asemenea, aceasta poate fi inlocuită cu alertă prin email sau un alt tip de alertă. Totul ține de preferințele utilizatorului.

Să inceapă sezonul, eu sint pregatit!
73!

Constantin Bădican - YO7FWS

---  73's   YO7FWS  ---







04 martie 2022

LogulMeuUUS vers. 03.03.2022

Noutati:
- Interfata poate fi comutata in limba romana sau limba engleza. Multumesc pentru sprijin lui Dan, YO9CWY.
- Se poate afisa harta legaturilor radio. Atentie! Necesita conexiune la internet.
- Pentru cei care nu se descurca am introdus menu-ul Ajutor.
- Programul calculeaza media Km/QSO.

Descarca:

Constantin BADICAN - YO7FWS

---  73's   YO7FWS  ---
 

21 februarie 2022

FM DX RDS PI Scanner (1)

Receptiile radio si tv la mare distanta m-au pasionat dintotdeauna. In anii de liceu am observat receptionarea in Banda 1 TV a unor posturi de televiziune din Europa, iar in banda OIRT a unor posturi radio rusesti. Foarte mult timp am studiat acest fenomen, dar prea putin documentat. Anii trecuti am revenit la aceasta veche pasiune, am reluat receptiile si am avut rezultate. Ce m-a impresionat de aceasta data a fost posibilitatea identificarii postului radio care emite cu ajutorul transmisiei RDS in paralel cu semnalul audio. Aceasta facilitate este foarte importanta, nu numai ca auzi un post de radio interesant, dar ai posibilitatea sa stii de unde emite si cum se numeste. Genial!

Primele receptii le-am facut pe un radiocasetofon Sony pe masina. Apoi am trecut la un receptor RTLSDR pe calculator si un tuner stationar Sony ST-SE370. Toate au functionat, dar nu conform asteptarilor mele. Niciunul dintre acestea nu imi furniza in cel mai scurt timp posibil informatiile RDS transmise de postul radio receptionat. Era frustant: se auzea foarte bine, dar nu decoda nimic. Pornind de la aceasta experienta oarecum nereusita, m-am hotarit sa imi construiesc un receptor radio asa cum imi doream eu. Nu am avut de gind sa plec complet de la zero, am cautat sa gasesc module, gata construite, pe care imbinindu-le impreuna, sa-mi asigure rezultatul mult asteptat. Pentru aceasta am studiat module tuner din diverse receptoare radio, combine si casetofoane de masina, modul de comanda al acestora si controlul PLL, precum si principiul de transmitere si decodare RDS. Iarna aceasta am reusit sa-mi construiesc o varianta simplificata a primului receptor.

Tunerul FM si modulul decoder RDS au facut parte dintr-o combina Aiwa_XR-EM30. Pentru comanda si controlul PLL am folosit o placa de dezvoltare Arduino Nano, la care am conectat un afisaj LCD 2 x 16 caractere, un encoder mecanic si o tastatura cu trei push butoane. Receptorul nu este dotat cu amplificator audio, receptia se poate face doar in casti. Datorita dimensiunilor reduse ale componentelor, modulul decoder RDS a fost 'decupat' de pe placa de baza a combinei si adaptat proiectului meu. Iata schema simplificata a receptorului:

Controlul tunerului FM este realizata cu ajutorul unui program incarcat in Arduino Nano. Acesta comanda registrii de uz general GPIO si controleaza PLL dintr-un circuit integrat specializat Sanyo LC72131.  Intervalul de frecventa acoperit este 88 - 108 MHz, cu pas de 100 KHz. Schimbarea frecventei de receptie este ralizata cu un encoder mecanic si afisarea se face pe un ecran LCD. Pentru inceput programul este foarte simplu. Acesta impreuna cu receptorul urmeaza sa fie imbunatatite pe viitor. 

Descarca codul sursa: RXFM_V1.ino

La realizarea proiectului m-am inspirat din:

27 ianuarie 2022

2021 - Recordurile mele in 2m

 Iata ce scriam acum un an pe blog:

Hmm, am receptionat CU3EQ, Insulele Azore, la 4257Km... deci este posibil. Daca receptionez, inseamna ca pot sa si lucrez. Totul depinde de mine: cind si cu ce. Ia sa vedem: pot?

Si dupa un an pot spune: aproape am putut! Nu sint chiar 4257 Km, dar sint aproape!

Vara trecuta am lasat deoparte legaturile radio " la intimplare, tot ce aud si cit mai multe la numar ", in Es Sporadic, si am  inceput sa ma concentrez pe directiile de propagare, dupa indicative si distante  mari, posibile  de lucru. Pe 10 Iunie 2021 in jurul orei 15.10 s-a produs o propagare puternica pe sudul Spaniei, acesta fiind momentul oportun pentru mine. Am oprit emisia si m-am concentrat pe indicative. La scurt timp mi-a aparut pe ecran apelul lui EA8JK, din Insulele Canare, care chema pe directia mea o statie din YU. Nu am mai stat pe ginduri, momentele acestea nu dureaza foarte mult, si l-am chemat. La scurt timp mi-a raspuns si am continuat legatura. Finalul legaturii, salutarile, nu l-am mai prins, propagarea radio a scazut. Dar am avut noroc: corespondentul meu l-a copiat. 

A doua zi, am primit confirmarea prin email: legatura radio perfect valabila. A fost bucurie mare in sufletul meu. Am depasit doua bariere: 3000 si 4000 Km, doar cu o singura legatura, HI! Ce frumoasa este pasiunea noastra!

 La cca doua saptamini am primit si premiul: confirmarea qsl.

Si astfel, am adaugat in palmaresul personal un nou record: EA8JK, Insulele Canare, 4091 Km, confirmat!

Probabil, in scurt timp, chiar de anul acesta, numarul legaturilor radio peste 4000 Km se vor inmultii printre iubitorii legaturilor radio in unde ultrascurte. De vina o sa fie Soarele, dar si modul de lucru FT8. Foarte bine! Toata lumea trebuie sa fie fericita!

Constantin BADICAN - YO7FWS

---  73's   YO7FWS  ---


23 ianuarie 2022

Baliza radio WSPR (1)

 Provocat de un experiment initiat de YO3FFF in banda de 80 m, m-am hotarit sa construiesc si eu o baliza WSPR. Intentia de a construi baliza era veche, asa ca de-a lungul timpului am achizitionat componentele necesare. Fara sa stau prea mult pe ginduri, am schitat o schema bloc cu minimul de componente necesare, am proiectat un cablaj imprimat si am trecut la executarea lui. Montajul a fost destul de simplu, nu a necesitat niciun reglaj. Pentru acesta am folosit o placa de dezvoltare Arduino Nano, un modul GPS Neo-6M si un generator SI5351. O iesire a generatorului am conectat-o la un filtru trece jos, pe care intentionez sa il studiez mai bine, ceva mai tirziu.

La punerea in functiune am avut probleme cu programul. Am ales un program 'de-a gata', luat de pe GitHub, care desi functiona corect, semnalul era nedecodabil. Nu am reusit sa inteleg unde era eroarea, n-am gasit nicio problema in cod. Apoi am testat, fara nicio sincronizare de timp, exemplul dat in libraria EtherKit JTEncode, care a functionat de la prima incercare. Dezamagit de timpul pierdut, m-am hotarit sa rescriu codul plecind de la acest exemplu. Mai intii am eliminat ceea ce era in plus si nu ma ajuta in proiect, apoi am adaugat restul de cod, necesar proiectului. Receptiile le-am facut 'pe masa', cu transceiverul meu si decodarea in laptop. Totul functiona corect. Fara sa montez filtrul de iesire, am conectat antena si am pornit emisia balizei. La scurt timp am fost receptionat de citeva statii din YO3, YO9. Spre seara au inceput sa apara receptiile dinspre SP, OE, DL, PA, OH si cel mai departe EA8. Am ramas impresionat. Cu doar 10mW, intr-o antena dipol, eram receptionat in toata Europa. Minunat!

A doua zi am montat un filtru de iesire si am lasat-o definitiv in emisie, pe antena. Pe fiecare dimineata, la cafea, imi arunc privirea pe harta cu receptia semnalelor mele. Pina azi, recordul de distanta este de cca 4300 Km, receptiont de RX9O, in apropiere de Novosibirsk.

Pe viitor, din motive de tehnice, intentionez sa renunt la modulul GPS si sa folosesc un modul RTC. Din nefericire este foarte greu de gasit un modul precis, experienta mea cu acestea a fost complet neplacuta. Testele continua!

Constantin BADICAN - YO7FWS

---  73's   YO7FWS  ---

25.01.2022
Un nou record de distanta: WZ7I, 7628 Km in apropiere de New York.
Am masurat consumul montajului:
 - 80 mA in repaus
 - 120 mA in emisie

---  73's   YO7FWS  ---

04.03.2022
TimestampCallMHzSNRDriftGridPwrReporterRGridkmazMode
 2022-03-04 04:00  YO7FWS  3.570097  -13  0  KN24dj  0.01  K4WLO  EM65  8761  309  2 
 2022-03-04 04:02  YO7FWS  3.570097  -14  0  KN24dj  0.01  K4WLO  EM65  8761  309  2 
 2022-03-04 04:04  YO7FWS  3.570096  -21  0  KN24dj  0.01  K4WLO  EM65  8761  309  2 
 

---  73's   YO7FWS  ---

21 ianuarie 2022

My VHF Monitor

Articolul original a fost publicat pe siteul Radioamator.ro. Se pare ca titlul articolului si anumite denumiri formulate de mine in acesta, nu puteau fi folosite datorita drepturilor de autor. Pentru a nu intra in polemica, am hotarit retragerea articolului, corectarea acestuia si publicarea in continuare aici pe blogul meu. Articolul prezinta o solutie tehnica simpla care poate fi o sursa de inspiratie pentru alti constructori, programatori sau radioamatori.

Iubesc ESP8266. Este mic, inteligent si ieftin. Stie Wi-Fi, stie sa se conecteze la internet, sa fie server, client, etc. O bijuterie! Cu putina pricepere si multa imaginatie, poti da viata celor mai nastrusnice idei. Iata una pe care avut-o de curand: afisarea in timp real a legaturilor radio in benzile de radioamator.

Hardware

Un modul ESP01S este conectat la alimentare prin intermediul unui stabilizator de tensiune care furnizeaza 3.3V. Doua leduri, conectate la pinii ESP01S, indica starea conexiunii la reteaua Wi-Fi si un server DxCluster. Acestea pot fi comandate de oricare dintre perechile de pini, Rx - Tx sau GPIO0 - GPIO2, prin montarea unor strapuri. Eu am ales pinii: GPIO0 si GPIO2.  

Intreg montajul este realizat pe o bucata de cablaj imprimat, simplu placat, cu dimensiunile: 40 x 30 mm. Pentru micsorarea dimensiunilor cablajului, conectorul alimentarii este montat sub modulul ESP01S.

Montajul este plasat intr-o carcasa din plexiglass de 4 mm, cu ajutorul unor distantieri din PVC. Carcasa este prevazuta cu gauri de fixare pe un panou sau perete.


Software

Partea de software este ceva mai complexa. A fost o provocare chiar si pentru mine. Cuprinde cunostinte de programare pentru microcontrolere, mai precis Arduino, a paginilor WEB, respectiv HTML, CSS, JavaScript si nu in ultimul rand, Leaflet. Acesta din urma a fost necesar pentru afisarea hartii.

Functionarea pe etape a programului din microcontroler este urmatoarea:
1. Restart.
2. Conectarea la reteaua Wi-Fi si semnalizarea conectarii prin aprinderea LED1.
3. Crearea unui server WEB pentru tratarea clientilor.
4. Crearea unui client TCP necesar receptionarii spoturilor de la un DxCluster.
3. Conectarea clientului la un DxCluster din internet.
4. Logarea la DxCluster si transmiterea comenzilor de filtrare a spoturilor. Reusita conectarii si logarii este semnalizata de LED2.
5. Receptionarea spoturilor, parsarea, extragerea indicativelor si locatoarelor din spoturile formatate.
6. Pregatirea datelor pentru a fi transmise unui eventual client conectat la serverul WEB.
7. Tratarea clientilor conectati la serverul nostru prin transmiterea unei pagini WEB.
8. Transmiterea unui refresh catre serverul DxCluster, necesar pentru prevenirea deconectarii. In acelasi timp sunt sterse toate datele care nu mai sunt de actualitate.


In caz de eroare, prevenirea blocarii microcontrolerului se face printr-un reset software. Astfel, acesta va functiona continuu, timp indelungat, fara a fi necesara interventia proprietarului.

Resetarea microcontrolerului se face pentru unul din urmatoarele motive:

1. nu se poate conecta la reteaua wireless.
2. conectarea la DxCluster a esuat.
3. logarea la DxCluster a esuat.
4. daca timp de 15 minute nu receptioneaza date de la serverul DxCluster, inclusiv raspuns la refresh.
5. daca este deconectat de la serverul DxCluster.
In acesta versiune a programului, toate datele stocate inaintea resetarii, se vor pierde. Pe viitor, am in vedere pastrarea acestora si dupa restart.



Pe harta legaturile radio efectuate sint afisate cu ajutorul unor markeri dispusi peste locatorul corespondentilor, uniti prin linii geodezice. Extragerea indicativelor si a locatoarelor se face numai din spoturile corect formatate. Un spot formatat contine la comentariu un camp de forma:

LOC1<MOD>LOC2

unde:
LOC1 - locatorul corespondentului 1
MOD - tipul de propagare anuntat
LOC2 - locatorul corespondentului 2

Pagina WEB transmisa clientului este relativ simpla. Afisarea hartii in interiorul acesteia se face cu ajutorul unui iFrame. Folosirea iFrame-ului in pagina WEB, permite utilizatorului editarea cu usurinta a acesteia, intr-un mod cat mai atragator, fara sa fie afectat de catre acesta. Reactualizarea hartii se face automat printr-un refresh odata la 30 secunde. Datele afisate pe harta se reimprospateaza in timp real, pe masura ce sunt receptionate de la serverul DxCluster. Durata afisarii acestora este de cca 60 minute, dar poate fi modificata. Dupa expirarea timpului de afisare, acestea sunt sterse.

Pentru a raspunde cit mai rapid cererilor clientilor, pagina WEB a fost impartita in trei blocuri. Primul bloc si ultimul, care nu se modifica niciodata pe intreaga perioada de functionare, se incarca in memorie imediat dupa restart. Al doilea bloc se reactualizeaza automat la receptionarea unui spot formatat. Deasemenea toate datele, care nu mai sunt de actualitate, sint sterse imediat dupa transmiterea unui refresh catre serverul DxCluster. Astfel, in orice moment, la cererea unui client, pagina WEB este disponibila in cel mai scurt timp posibil pentru a putea fi transmisa.



Continutul paginii a fost creat cu editorul NotePad++. Conversia acesteia pentru a fi incarcata in program a fost realizata cu programul utilitar TextConv.
Pe viitor am in vedere imbunatatirea functionarii serverului, intoducerea de facilitati noi si posibiltatea  mentenantei de la distanta.
Serverul meu poate fi accesat la adresa: http://yo7fws.go.ro. Acesta functioneaza continuu de peste sase luni, fara interventii din partea mea.
Pornind de la acest proiect am mai creat inca un server, “Aproape de ES”, acum offline, care imi afiseaza in timp real evolutia propagarii Es Sporadic pentru frecvente apropiate benzii 144 MHz. Alte proiecte posibile ar putea fi afisare pe harta a evolutiei unui balon, emitator APRS, WSPR, etc. O pagina de internet prin care se extrag legaturile radio dintr-un fisier EDI si afisarea acestora pe harta. Totul tine doar de imaginatie.

Descarca: codul sursa

Pentru realizarea proiectului m-am inspirat din:

Constantin BADICAN - YO7FWS
---  73's   YO7FWS  ---