32 Kanal Videoempfänger

Status
Nicht offen für weitere Antworten.

seeers

Erfahrener Benutzer
#21
Laut einiger Aussagen hier im Forum hat es mit den herkömmlichen SPI Libs nicht funktioniert, da das IC anscheinend kein "echtes" SPI spricht. (Achtung, alles Halbwissen von mir)
Bei mir hängen beide parallel am AVR, es wird nicht zwischen den beiden Modulen unterschieden. Das ganze habe ich für meine Groundstation noch mit einem Nokia Display zur Anzeige der eingestellten Frequenz und der Akkuspannung der GS erweitert.
 
#22
Prima, danke!
Ja, sowas dachte ich mir schon, is ja auch nur ein Setzten der Werte ohne Rückmeldung vom Modul wenn ich das richtig sehe.
Nokia Display hab ich auch noch, bei mir wirds aber wohl nur n kleines 2-zeilen Character in der kleinen Station.
Diversity kommt auch mit rein, zum Umschalten der Vid. Signale werde ich nen Turnigy Video Switch am Arduino nutzen.
Hab aber evtl noch ne andere Idee für mit rein ;_)....
 

Chriss_:)

Erfahrener Benutzer
#25
Hi zusammen,

ich habe da mal ne Frage: wenn die entsprechende Frequenz eingestellt wurde, muss der Arduino noch am Modul hängen, also wird in bestimmten Abständen erneut etwas gesendet?

Die Frage deshalb, weil sonst könnte man sich ein kleines Gerät bauen, den Videosender entsprechen über SPI einstellen (schön mit Display, oder direkt mit über die Bodenstation) und dann einfach wieder abziehen und losfliegen! ;)

Bei größeren Fliegern wäre mir das Egal, aber bei kleinen MicroQuads wäre das schon iwie schön, nicht noch einen extra Arduino nutzen zu müssen! :)

Schöne Grüße aus dem Sauerland!
Chriss
 

seeers

Erfahrener Benutzer
#26
Ich sende nur einmal die einzustellende Frequenz. Nur beim weiterschalten wird neu geschickt.
Ich denke das müsste mit den TX Modulen genauso funktionieren.
 

Chriss_:)

Erfahrener Benutzer
#27
Hi,

das wäre eine super Sache! ;) Hoffe, ich finde bald wieder mehr Zeit fürs Basteln! ;):p
Merkt sich das Modul die eingestellte Frequenz beim Einschalten, oder wird auf einen Default-Wert gegangen?

Schöne Grüße aus dem Sauerland!
Chriss
 

seeers

Erfahrener Benutzer
#28
Die Register in die man das schreibt sind flüchtig, sobald die Spannungsversorgung weg ist, sind die Werte wieder Default.
Für kleine TX Module könnte man das auch mit einem 8 beinigen Attiny (45, 85) und einem Taster erledigen, der könnte sich auch die zuletzt eingestellte Frequenz merken und beim Einschalten setzten.
 

Chriss_:)

Erfahrener Benutzer
#29
Das wäre noch geiler, nen 85er habe ich noch 2 oder so rumliegen! ;) Da würde zwar ein visuelles Feedback fehlen, aber wenn man die letzte Frequenz wiederherstellt, wäre das ja kein Problem! :)

Ich glaube, ich muss mir mal wieder nen ganzes Wochenende zum Basteln freiräumen! :D

Schöne Grüße aus dem Sauerland!
Chriss
 

matzen

Erfahrener Benutzer
#30
Mal ein allgemeine Frage. Bei den 32ch Empfänger geht es doch nur darum, dass diese alle 8 Kanäle im A,B,E und F Band empfangen?
Dann braucht man doch nichts durchkratzen sondern einfach nur zwischen den einzelnen Bändern hin und her schalten mittels Schalter bzw. die 2 Pins auf Masse ziehen oder nicht?

Oder verstehe ich was falsch?


Gruß Matthias
 

Chriss_:)

Erfahrener Benutzer
#31
Hi,

nicht ganz, wenn du den per SPI ansteuerst, kannst du fast jede beliebige Frequenz einstellen, also du schaltest nicht nur starr die Bänder durch, sondern kannst dem sagen, er möge bitte auf 58xx MHz empfangen, kannst so alos auch Zwischenschritte einstellen! ;)

Schöne Grüße aus dem Sauerland!
Chriss
 
#32
Nur für die 32ch geht es auch so:
Außen am Modul sind nur die 3 Pins für ch1-8. Innen musste dann sonst noch die Widerstände auslöten und die beiden Leitungen für die Bänder rausführen.
Mit 5 Schaltern ginge das dann auch, ja.

Hat mal jemand ein Codeschnipsel zum freien einstellen der Frequenzen, dann kann ich mir das Berechnen der Werte sparen ;_)
Der gepostete Code nimmer ja immer nur die 32 fix definierten Werte.

Ach ja, hat das Modul keine Probleme mit den 5V am SPI Eingang?
Intern läuft es ja mit 3,3v und laut spec dürfen es nur VCC+0,3V sein für High Pegel.
 
Zuletzt bearbeitet:

seeers

Erfahrener Benutzer
#33
Ich glaube ich hatte damals beim testen keine Probleme mit den 5V. Für die GS habe ich den Pegel mit 2x 1k oder 10k Widerständen halbiert, das läuft soweit ohne Probleme.
Eine Formel zum berechnen konnte ich leider nicht umsetzten, evtl. hilft diese Excel Tabelle in Verbindung mit dem Datenblatt beim ausprobieren.
 

Anhänge

#34
Danke.
Gerade mal geschaut und etwas zusammen gesucht.
Code:
// Channels to sent to the SPI registers
uint16_t channelTable[] = {
  // Channel 1 - 8 
  0x2A05,	0x299B,	0x2991,	0x2987,	0x291D,	0x2913,	0x2909,	0x289F,	// Band A 
  0x2903,	0x290C,	0x2916,	0x291F,	0x2989,	0x2992,	0x299C,	0x2A05,	// Band B 
  0x2895,	0x288B,	0x2881,	0x2817,	0x2A0F,	0x2A19,	0x2A83,	0x2A8D,	// Band E
  0x2906,	0x2910,	0x291A,	0x2984,	0x298E,	0x2998,	0x2A02,	0x2A0C  // Airwave
};

// Channels with their Mhz Values
uint16_t channelFreqTable[] = {
  // Channel 1 - 8 
  5865, 5845, 5825, 5805, 5785, 5765, 5745, 5725, // Band A  
  5733, 5752, 5771, 5790, 5809, 5828, 5847, 5866, // Band B  
  5705, 5685, 5665, 5645, 5885, 5905, 5925, 5945, // Band E
  5740, 5760, 5780, 5800, 5820, 5840, 5860, 5880  // Airwave
};
Dann fix die Indizes im Array sortiert nach der Frequenz der Kanäle.
Code:
// All Channels of the above List ordered by Mhz
uint8_t channelList[] = {
 20, 19, 18, 17, 8, 9, 25, 7, 10, 26, 6, 11, 27, 5, 12, 28, 4, 13, 29, 3, 14, 30, 2, 15, 31, 1, 16, 32, 21, 22, 23, 24
};
Damit müsste ich dann alle Kanäle aller Bänder von niedrigster zu höchster Freq. durchlaufen können und gleichzeitig deren Frequenz, sowie Band und Kanal anzeigen können.

Mist, 1-32 statt 0-31, aber das lässt sich ja noch fix ändern. Ansonsten sollte das so tun oder?
 
#36
Beim Empfängermodul RX5808 und beim aktuellen TX5813 reicht es den Widerstand an SPI_SE Pin auszulöten. Damit ist der Pin offen und wird durch den internen Pullup auf high gezogen. Die SPI-Ansteuerung kann dann über die Anschlüsse CH1-3 des Moduls erfolgen. Hab den betreffenden Widerstand in den Modulen mal markiert:

RX5808
Anhang anzeigen 97381
Mmmh gerade den Widerstand ausgelötet und SPI_SE liegt auch auf HIGH. Trotzdem kann ich den Kanal noch per "grounden" der CH1-3 Pins umschalten. SPI hingegen tut nicht. Jemand noch ne Idee?
 
Zuletzt bearbeitet:

seeers

Erfahrener Benutzer
#37
Ich hatte schon einen RX bei dem SPI_SE nicht auf den im Bild gezeigten Widerstand herausgeführt war, schau mal ob da wirklich Pin7 vom IC liegt
 
#38
Danke! das wars, :D
der Widerstand mit dem roten Pfeil im obigen Bild ist bei mir def Pin 6, sprich SPILE/CS1
Nach dem abkratzen von PIN7 und wiedereinlöten eines Widerstandes auf Pin6 läuft es jetzt ;-)

Das RX Modul braucht ca 100ms zum Tunen des neuen Kanals bis sinnvolle Werte auf RSSI kommen.
 
#40
Meins schaut aber soweit genau aus wie auf deinem Bild, auf den ersten und zweiten Blick kein Unterschied:

Links die Reihe mit oben einem Kondensator und drunter die 3 Widerstände und dann das Freie Pad.

Nur geht eben Pin7 auf die Durchkontaktierung und der 3. Widerstand ist für Pin6. Doof wenn man den Widerstand dann schon ausgelötet hat ;_)

Nun ja, es tut nun ganz gut. Ich kann die 32ch durchschalten und den RSSI messen. NAch dem Umschalten brauchts halt etwas (100ms) bis dort eine vernünftige Änderung zu sehen ist.
Damit sollte der Sendersuchlauf jetzt klappen und die neue Idee steht auch schon soweit, aber dazu später mehr.

P.S. weiß einer zufällig was für Wirderstände das sind an den Pins? Hatte jetzt zum test ma nen 4.7k eingelötet, das tat.
 
Zuletzt bearbeitet:
Status
Nicht offen für weitere Antworten.
FPV1

Banggood

Oben Unten