FM zender module van Elechouse voor Arduino

In de snoepautomaat liggen vaak bijzondere onderdelen te koop tegen bijna kostprijs, waar je leuke projecten mee kan doen.

Deze Elechouse FM zender module ligt meestal ook wel op voorraad, ondanks dat de verkrijgbaarheid steeds lastiger wordt. Vraag anders Tjalling even.

Het is een stabiele FM zender module met een klein bereik (enkele tientallen meters), zodat je kan experimenteren met FM zender techniek, broadcast soundprocessing, of omdat je gewoon een mini FM radiostation wil maken voor een activiteit of jullie eigen huis bijvoorbeeld.

Dit artikel laat zien hoe eenvoudig het is om met een Arduino deze module aan te sturen. Als je vervolgens wat verder zoekt op internet, zie je dat je zelfs een display en rotary-encoder kan toevoegen, om de zender niet meer met een PC te hoeven configureren. Kastje eromheen maken met de lasercutter of 3D printer en je hebt een uitgebreid project!

Technische achtergrond

De complete FM zender is opgebouwd in een chip (KT0803L), inclusief PLL, stereo multiplexer en pre-emfase. RDS wordt niet ondersteund (als je dat per se wil, ga dan op zoek naar de veel duurdere SI4713 chips).

Wil je hier meer in detail van weten? Vraag dan een begeleider met RF expertise.

De module kan afgestemd worden van 70 tot 108 MHz. Het uitgangsvermogen is maximaal 113dBµV, wat neerkomt op 6dBm, oftewel 4mW. Dit is genoeg voor een bereik van tientallen meters en nog meer als je een gevoelige radio hebt met een goede antenne. Met een eenvoudige losse versterker is het bereik nog wat te vergroten.

De chip wordt aangestuurd met I2C. Dit kan bijvoorbeeld met een Arduino worden gedaan, maar ook andere controllers zijn mogelijk.

Arduino en bedrading

Ik heb een Arduino Nano gebruikt. Voor de Uno zijn de pin nummers gelijk, maar moet je even kijken op welke fysieke plek de pinnen zitten. A4 en A5 worden in de standaard Arduino wire.h toegekend.

ArduinoModule
A4SDA
A5SCL
5VVCC
GNDGND
De draadjes die naar links gaan, zijn voor een ander project. Niet op letten 🙂

Audio in

Gebruik een 3,5mm jack plug voor het audio. Hier kun je je telefoon, laptop, of iets dergelijks op aansluiten. Probeer een goede balans te vinden voor het volume, want je kan de zender oversturen. Het geluid klinkt dan vervormd. Een te laag volume zorgt weer voor een grotere signaal/ruisverhouding als het signaal wat zwakker is.

Antenne

Soldeer een draadje van ongeveer 75cm of 1,5m aan de ANT aansluiting van de module om het bereik aanzienlijk te vergroten. Dit is de soldeerpad tussen de audio input en de v2.0 opdruk.

Code

Download de FMTX code en library. Kopieer de FMTX library in de Arduino Library (user documenten map). In Windows is dit:
C:\Users\<jouw naam>\Documents\Arduino\libraries\FMTX\

[Download FMTX en Arduino code]

Lees de instructies in de download.

(op regel 32 van fmtx.h stond een regel “typedef uint16_t u16;” die een foutcode genereerde. Deze is nu in een comment omgezet, omdat we geen reden zagen waarom het zonder deze niet zou werken. Even mee experimenteren dus als je fouten blijft zien rond deze regel).

Zendvermogen

Standaard staat het zendvermogen erg bescheiden ingesteld (ca. 103dBµV). Deze chips waren bedoeld om zeer korte afstanden te overbruggen, zoals in bijvoorbeeld een MP3 speler die je op je FM autoradio kon beluisteren. Wil je toch het maximale bereik halen, dan moet je de file FMTX.cpp openen in kladblok (zoek in de Arduino libraries in je usermap).

>> dit is al gedaan in onze download van hierboven.

Scroll helemaal naar onderen en zoek fmtx_set_rfgain. Pas de waarde aan van 4 naar 15.

Onderin: 15 is het maximale zendvermogen (0-15).

Testen

Tussen de apparatuur in het onderdelenhok van DJO, staat een FM radio. Je kan ook een FM tuner gebruiken (van je ouders die op zolder staat), of een RTL dongle op je PC (een leendongle ligt in begeleiderskast). En sommige smartphones hebben een FM radio.

Met een goedkope SDR dongle heb je je PC in een handomdraai omgebouwd tot een radio-ontvanger