Neuer Receiver fürs Wohnzimmer – Yamaha RX-V679

… getönt hat der Alte noch gut, allerdings hat er sich nie gut in die Hausautomation einbinden lassen…

2007 oder 2008 muss es gewesen sein – da habe ich meinen ersten vernüftigen Verstärker von einem Bekannten abgekauft – der Luxman LR-6500. An sich für die damalige Zeit ein Top Verstärker, konnte sogar schon 7.1 und unzählige Surroundformate dekodieren. In einem war er immer schlecht: sich mit möglichst wenig Befehlen ansteuern lassen um ihn geziehlt über die Hausautomation zu starten oder umzuschalten.
Deswegen musste sich was tun – nach längerer Überlegung ob man sich das gönnen sollte usw. 🙂

Produktbeschreibung Yamaha Webseite



Überwunden… und gekauft 😛 Das derzeitige noch sehr neue „mittlere“ Flagschiff unter den Heimkinoreceivern von Yamaha. Leider nicht mehr Made in Japan sondern nur noch Malaysia aber trotzdem immer noch gut genug um es noch als echten „Yamaha“ durchgehen zu lassen. Farbe: Titan um etwas der alten Linie treu zu bleiben.

Das mitgelieferte Zubehör ist überschaubar – aber es fehlt an Nichts: Handbuch, Fernbedienung, UKW und Mittelwellenantenne, YPAO Einmessmikrofon und hinten am Gehäuse eine eingeschraubte WLAN Antenne (die direkt vor dem Aufstellen abgeschraubt wurde – nur Kabel LAN ist wahres LAN).

Ein Überblick über die Anschlüsse:

Leider besitzt er nicht mehr wie frühere Geräte die Euro-Kupplung um z.B. den Subwoofer mit Strom zu versorgen und ihn mit abzuschalten im Standby. Dafür gibt es jetzt einen 12 Volt Trigger, den man sogar programmieren kann, wan er schalten soll. Eventuell wird da mal eine Eigenkonstruktion mit Relais angeschlossen… (siehe oben links)

Der Hauptvorteil im Bezug auf den Gebrauch in Verbindung mit dem Fernseher: der Fernseher kann mich mal mit seiner besch….enen Input Verwaltung (die tatsächlich eine Ladebalken hat wenn man den Fernseher gerade angeschaltet hat): alle HDMI Geräte werden am Receiver angeschlossen. Das macht auch viele der bisher benötigten SPDIF Glasfaserkabel überflüssig (wovon der Yamaha auch einige weniger Anschlüsse besitzt als der Luxman).
Der Fernsehr kennt nun nur noch eins: ein- oder aus 🙂 Gesteuert mit einem Homematic 1 Kanal Aktor!! (Tod dem irtrans!?? Hat er seine Daseinsberechtigung verwirkt?)

Ein Paar letzte Ansichten der alten Besetzung… Klassisch und zeitlos wirkte er schon der Luxman – aber auch irgendwie zu „analog“ für den heutigen Geschmack (war er durch und durch auch nicht wirklich).

Und raus ist er…

Oh da steht ja noch was von Yamaha ^^ Das alte Kassettendeck vom Vater…
Läuft immer noch tadelos und kommt natürlich auch wieder an die neue Kiste mit dran.


Kabel entsprechend neu verlegt: die beiden HDMI Leitungen Richtung Fernseher haben sich bezahlt gemacht: eine geht vom Receiver zum HDMI-1 in den LG TV, die 2. Leitung versetzt mich in die Lage das Apple TV hinter dem Fernseher zu lassen und führt es an HDMI-2 an den neuen Receiver – HDMI-1 wird der Dreambox zugeordnet…


First Boot-UP: Firmwareupdate… Dauert ca. 20 Minuten.

Und Bereit! Lautsprecher mit dem Mikrofon eingemessen und noch einige Parameter (hat ca. 1 Woche gedauert) im OSD Interface am Fernseher eingestellt.

Jetzt kann wieder gescripted werden…

Der Yamaha RX-V679 wird wie seine direkten Vorgänger mit LAN Port über eine XML Syntax angesteuert. Die ist sehr pingelig was Fehlerfreiheit anbetrifft – ist irgendwo ein Zeichen falsch oder vergessen, reagiert der Receiver ganz einfach nicht. Ansonsten bietet die Befehlsstuktur für eigentlich alle Funktionen diskrete Ansteuerung an, z.B. der Standbybefehl: (vereinfachte Darstellung)

<System><Power_Control><Power>On</Power></Power_Control></System>

Egal wie oft man den sendet – der Befehl schaltet NUR ein nichts anders, kein nerviges Toggeln.

<System><Power_Control><Power>Standby</Power></Power_Control></System>

Das Selbe mit dem Ausschaltbefehl.

Ich habe mein althergebrachtes PHP Skript wieder mal erweitert, welches ursprünglich mal nur Befehlsabfolgen für den irtrans enthielt – mittlerweile (irtrans wirklich…. tot!??) ist da garnüschts mehr vom irtrans – er ist wirklich überflüssig geworden!! IR-Befehle spielen keine Rolle mehr bei meiner Installation, schön sowas mal zu erleben 🙂

So… jetzt verlier ich gerade wieder den roten Faden in diesem Beitrag. Diesmal belasse ich es auch mit weiterem Geschwafel und bringe noch den relevanten Ausschnitt der PHP Datei um den Receiver anzusteuern:

Es gibt eine Funktion, die die eben gezeigten vereinfachten Befehle entgegennimmt…

function YamahaNET($command) {
// Yamaha Receiver
$host = '192.168.1.9';
$data = '<YAMAHA_AV cmd="PUT">'.$command.'</YAMAHA_AV>';
$command_lenght = strlen($data );
     
//echo $command_lenght;    //zum prüfen    
$head = "";
$head .= "POST /YamahaRemoteControl/ctrl HTTP/1.1\r\n";
$head .= "Host: ".$host."\r\n";
$head .= "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0\r\n";
$head .= "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n";
$head .= "Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3\r\n";
$head .= "Accept-Encoding: gzip, deflate\r\n";
$head .= "Connection: keep-alive\r\n";
$head .= "Content-Type: text/xml; charset=UTF-8\r\n";
$head .= "Referer: http://".$host."/\r\n";
$head .= "Content-Length: ".$command_lenght."\r\n";
$head .= "Pragma: no-cache\r\n";
$head .= "Cache-Control: no-cache\r\n\r\n";
$head .= $data;
//echo $head; //zum prüfen

$fp = fsockopen($host, 80) or die("Unable to open socket");
fputs($fp, $head);

$buf = fgets($fp,128);
fclose($fp);
//echo $buf;   //zum prüfen

$return = substr($buf,13,2);
  if ($return == "OK") {
        return true;
        //return "OK";
}
}

 

Die Befehle werden dann so ausgelöst:

YamahaNET("<System><Power_Control><Power>Standby</Power></Power_Control></System>");

Thats it, funktioniert perfekt und quasi latenzfrei…

Meine Kleine Befehlsreferenz von Funktionen die ich bisher im Einsatz habe:

//Power On
YamahaNET("<System><Power_Control><Power>On</Power></Power_Control></System>");

//Power Off
YamahaNET("<System><Power_Control><Power>Standby</Power></Power_Control></System>");

//HDMI-1 select
YamahaNET("<Main_Zone><Input><Input_Sel>HDMI1</Input_Sel></Input></Main_Zone>");

//Volume up um 2 dB
YamahaNET("<Main_Zone><Volume><Lvl><Val>Up 2 dB</Val><Exp></Exp><Unit></Unit></Lvl></Volume></Main_Zone>");

//Volume down um 2 dB
YamahaNET("<Main_Zone><Volume><Lvl><Val>Down 2 dB</Val><Exp></Exp><Unit></Unit></Lvl></Volume></Main_Zone>");

//B-Zone auf Internetradio schalten
YamahaNET("<Zone_2><Input><Input_Sel>NET RADIO</Input_Sel></Input></Zone_2>");

//B-Zone auf Preset-1 schalten (z.B. mit Internetradio)
YamahaNET("<NET_RADIO><Play_Control><Preset><Preset_Sel>1</Preset_Sel></Preset></Play_Control></NET_RADIO>");

//B-Zone einschalten
YamahaNET("<Zone_2><Power_Control><Power>On</Power></Power_Control></Zone_2>");

//B-Zone ausschalten
YamahaNET("<Zone_2><Power_Control><Power>Standby</Power></Power_Control></Zone_2>");

//B-Zone spielt gleichen Input wie Main-Zone
YamahaNET("<Zone_2><Input><Input_Sel>Main Zone Sync</Input_Sel></Input></Zone_2>");

//Mainzone Mute on
YamahaNET("<Main_Zone><Volume><Mute>On</Mute></Volume></Main_Zone>");

//Mainzone Mute off
YamahaNET("<Main_Zone><Volume><Mute>Off</Mute></Volume></Main_Zone>");

Per Sleep-Befehl lassen sich zwischen aufeinanderfolgenden Befehlen gut Pausen generieren. Das habe ich auch schon immer bei irtrans genutzt.

Die Leserichtung ist auch interessant um z.B. die aktuell eingestellte Lautstärke auszulesen. Dafür gibt es eine weitere Funktion die auch sehr einfach gehalten ist und den gesamten XML String vom Yamaha lädt und ihn dann mit einem preg_match auseinander klamüsert um nach dem gewünschten Wert zu suchen:

//Beispiel: Lautstärke der Main-Zone zurückgeben
$status = YamahaStatus();
preg_match('/\<Volume\>\<Lvl\>\<Val\>([-0-9]+)\<\/Val\>\<Exp\>/', $status, $res);
//echo $res[1];
$vol = intval($res[1]) / 10;
//echo $vol;
echo "<font color=white face=Verdana>".$vol." dB</font>";


function YamahaStatus() {
// Yamaha Receiver
$host = '192.168.1.9';
$data = '<YAMAHA_AV cmd="GET"><Main_Zone><Basic_Status>GetParam</Basic_Status></Main_Zone></YAMAHA_AV>';
$command_lenght = strlen($data );
       
//echo $command_lenght;    //zum prüfen
     
$head = "";
$head .= "POST /YamahaRemoteControl/ctrl HTTP/1.1\r\n";
$head .= "Host: ".$host."\r\n";
$head .= "User-Agent: Mozilla/5.0 (Windows NT 6.1; WOW64; rv:12.0) Gecko/20100101 Firefox/12.0\r\n";
$head .= "Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8\r\n";
$head .= "Accept-Language: de-de,de;q=0.8,en-us;q=0.5,en;q=0.3\r\n";
$head .= "Accept-Encoding: gzip, deflate\r\n";
$head .= "Connection: keep-alive\r\n";
$head .= "Content-Type: text/xml; charset=UTF-8\r\n";
$head .= "Referer: http://".$host."/\r\n";
$head .= "Content-Length: ".$command_lenght."\r\n";
$head .= "Pragma: no-cache\r\n";
$head .= "Cache-Control: no-cache\r\n\r\n";
$head .= $data;
//echo $head; //zum prüfen

$fp = fsockopen($host, 80) or die("Unable to open socket");
fputs($fp, $head);

$buf = stream_get_contents($fp);
fclose($fp);

$buf = explode("\r\n\r\n", $buf)[1];

//echo $buf;   //zum prüfen
return $buf;

}

Vielen Dank an Jonas Schievink für die Unterstützung an der Auslesefunktion!

Die Ausgelesenen Werte lassen sich vielfältig einsetzen um eventuell der Homematic diese als Wert zur Verfügung zu stellen…

So, das solls erstmal gewesen sein – längerer Beitrag nach Monaten des Stillstands hier auf dem Blog – Schande über mich aber zu wenig Zeit und Motivation was zu posten :-/

N8 ihr Leut.

VN:F [1.9.22_1171]
Rating: 5.0/5 (3 votes cast)

Grundig MCF 500 Reparatur Idler Zahnrad

… ich hätte gedacht, dass es noch etwas hält 🙁

Letzte oder vorletzte Woche hatte ich mal wieder eine Kassette am laufen die mittendrin auf einmal abstoppte – Ein Blick auf den Recorder geworfen: Bandsalat und Gerät auf Stop… Ich konnte mir schon irgendwie denken was das wohl sein könnte hab aber noch nicht reagiert und einfach wieder auf Play gedrückt – Wiedergabe ging normal weiter… Gestern war dann aber Schluss – Wiedergabe stoppte wieder mit Bandsalat und ließ sich dann aber nicht mehr starten :-/ Vom Leerlaufgeräusch des Wickelmotors war klar, dass das Zwischenzahnrad vermutlich vom altbekannten „Zahnausfall“ befallen war.
Also musste ich doch mal nachschauen ob dem wirklich so war:

Schrauben raus, Deckel ab…
Massives Aluminiumgehäuse wird wie eine Haube abgehoben.

Technik… Kondensatoren Made in Germany, Metall – schwere Technik ^^

Das Laufwerk… Mittig das besagte Zwischenzahnrad – sichtbar nach Ausbau des Leuchtkeils

Jap – Zahnausfall, dank Weichkunstoff. Hohe Laufruhe beim Spulen aber leider Verschleiß und Zerfall nach ca. 30 Jahren 🙁

Also erstmal das Laufwerk ausbauen um das Zahnrad rauszubekommen. Erstmal Steckverbinder lösen…

Und schon ist es draußen – 4 Gewindeschrauben hielten das Laufwerk an der inneren Frontplatte fest. Laufwerksträger besteht aus Edelstahl – nach späterem Entstauben sah alles aus wie neu.

Der schwarze Wickelmotor (Schweizer Qualitätsprodukt) muss abgeschraubt werden um das Zahnrad auszubauen (gehalten von federgelagerter Welle mit Arretierungsring). Die linke Schraube hat etwas gelitten – das Locktide hat immernoch sehr gut die Schraube am Platz gehalten.

Der Motor mit der Kupplung und dem Zwischenzahnrad…

Noch ein wenig sanfte Gewalt und Zug mit der Spitzzange und endlich war es frei…

Das klaffende Loch…

Nebenbei habe ich mir endlich mal die Netzteilplatine angesehen wo auch so langsam anscheint dem altersschwachen Selengleichrichter die Puste ausgeht (während der Wiedergabe flackert immer die Beleuchtung und das Zählerdisplay). Hoffen wir dass es das ist. Werde ihn gegen einen passenden Siliziumgleichrichter tauschen.

Tja schön und gut – wo gibts ein neues Zahnrad her?? Aber sischer vom Fernsehpanzer 🙂

http://www.fernseh-panzer.de/zahnraeder/zahnraeder-fuer-hifi-decks/918/idler-zwischen-zahnrad-mcf-500-mcf-600-grundig
(Link aktualisiert am 30.04.2017)

Es ist sehr erfreulich, dass es doch tatsächlich Firmen gibt, die extra diese „wertvollen“ Zahnräder wieder nachproduzieren um die guten, eigentlich unverwüstlichen Geräte zu erhalten *(^_^)*
Hier gehts dann weiter wenn die Ersatzteile da sind.

19.11.2013: Zahnrad ist heute gekommen, bald gehts weiter…

Weiter gehts…

Das Zahnrad…

…muss nun noch fest mit der Welle verbunden werden

Sekundenkleber wird hoffentlich dauerhaft den Zweck erfüllen

Hält.

Kleberreste rund um die Messinghülse entfernt…

Dieses miese Teilchen ist mir auf den Boden gefallen und ich hab es ca. nach 15 Minuten wieder erspähen können :-/

Die Welle wieder zusammenstecken mit Abstandshaltern, der Feder und zur guterletzt den winzigen Sprengring…

Alles wieder fest.

Motor wieder eingebaut und festgeschraubt

Lichtkeil wieder eingesetzt…

Zeit für einen Test

Kassette rein…

Jetzt noch den Gleichrichter wechseln (schonmal vorweg genommen: das Licht flackert leider immer noch)

Ein vorbereiteter Siliziumgleichrichter Typ B500C1500 (völlig überdimensioniert aber er war halt da)

Der alte Selengleichrichter – am Rand krustig rostig…

Krümelig 😉

Der neue Gleichrichter wurde eingelötet

Gesamtübersicht vorm Zuschrauben

Deckel wieder drauf…

Und vorsichtig zugeschoben

Das wars – er steht wieder im Schlafzimmer und funktioniert wie eh und jeh. Leider hat der Wechsel des Gleichrichters nicht den gewünschten Effekt erziehlt: das Licht flackert immer noch. Es scheint wohl eher an den alterenden Elkos zu liegen. Momentan beeinträchtigt das Schwanken der einzelnen Betriebsspannungen noch nicht die Funktion des Recorders – sobald es so wäre würde ich wieder zur Tat schreiten und diese auch alle ersetzen. Zumindest die auf der Netzteilplatine – es würde allerdings weh tun die schönen „deutschen“ Kondensatoren gegen aktuelle aus Fernost zu ersetzen 🙁
Wenigstens spult das Deck jetzt wieder wie der Wind…

Ich hoffe, das speziell die Bilder noch für andere Liebhaber von diesem Model interessant sind. Gerne veröffentliche ich auch gerne Restaurationsunternehmen von anderen Bastlern wenn gewünscht 😉

VN:F [1.9.22_1171]
Rating: 4.8/5 (4 votes cast)

Grundig Box 200 Restauration oder „Pimp“ my 200 to 250

… die 200er Boxen lagen lange Zeit verstaubt in der Ecke

Vor langer Zeit haben meine Eltern sich das Set der Grundig Box 200 zusammen mit einer RTV 820 gekauft. Lange Zeit erfüllten Sie ihre Aufgabe und klangen auch nicht schlecht – in meiner Kindheit erfreuten sie mich oft in meinem damaligen Schlagzeugkeller. Leider hat der Zahn der Zeit nach einer weiteren Einlagerungsphase genagt und die beiden Tieftöner irreparabel beschädigt (Spule schleifte und Sicken defekt). Durch einen Zufallsfund in Ebay hatte ich nun den Gelegenheit die Lautsprecher wiederzubeleben und mit dem Innenleben der Grundig Hifi Box 250 zu bestücken!!

Nicht lang geschnackt und ran ans Werk:


So lagen die Boxen eine ganze Zeit lang herum, da ich die Tieftöner zu einem Lautsprecher Restaurator geschickt hatte – leider mit dem Ergebnis, dass es sich um günstige, recht minderwertige, Exemplare handelte die sich nicht lohnten aufwändig restauriert zu werden.

Nach der Verwandlung steht sogar noch etwas mehr Belastbarkeit zur Verfügung…

Hier der Ebayfund: 4 absolut wie neu aussehende Lautsprecher aus 2 ehemaligen Grundig Hifi Box(en) 250 inkl. Frequenzweichen – erstanden für 12 € was wirklich unglaubich ist für Original Grundig in diesem Zustand. Mit Gummisicken, so dass es auch noch lange halten sollte…


Auf ans ausräumen 😉

Die Dämmwolle (Fusseln, Klumpen was auch immer ;-)) rausholen…

Der „Alte“ Hochtöner ist baugleich mit dem aus dem 250er Satz – wird trotzdem ersetzt.

Frequenzweiche rausschrauben – ist auch augenscheinlich identisch mit der Austausch-Weiche, aber trotzdem bleibe ich Konsequent und tausche alles…

Nun gehts ans Verdrahten und Löten.

Frequenzweiche anschließen und wieder einbauen…

Dämmwolle wieder reinstopfen

Lautsprecher anschließen

Und alles wieder festschrauben…

That’s it…

Da stehen sie als ob nichts gewesen wäre. Nur das sie jetzt wesentlich besser klingen als vor dem Eingriff…

Ab jetzt gelten diese technischen Daten:

  • Bauart: 2-Wege geschlossen, Kompaktlautsprecher
  • Chassis:
    • Tieftöner: 1x
    • Hochtöner: 1x
  • Belastbarkeit (Nenn-/Musikb.): 25 / 35 W
  • Wirkungsgrad:
  • Frequenzgang: 50 – 20.000 Hz
  • Übergangsbereiche: 3.000 Hz
  • Impedanz: 4 Ohm

Von Hifi-Wiki http://www.hifi-wiki.de/index.php/Grundig_Box_250
Siehe auch http://www.hifi-wiki.de/index.php/Grundig_Box_200

Zum Abschluss noch ein kurzes Video:

Grundig Box 200 Restauration from Mediaman2000 on Vimeo.

VN:F [1.9.22_1171]
Rating: 0.0/5 (0 votes cast)

Grundig MCF 500 Kassetten Deck

Tu mal lieber Kassette…

Der 1. Beitrag in 2013!
Ich konnte nicht wiederstehen – obwohl Kassetten so ein inperfektes Speichermedium für Musik sind. Meine Grundig-Ecke im Schlafzimmer ist wieder um eine Atraktion reicher geworden: ein Grundig MCF 500 Kassetten-Deck.

Sowas habe ich bisher noch nie auf einem Gerät gelesen:

Nun in der Totalen:

Und im Dunkeln:

Was soll man sagen? Das Gehäuse sieht fast aus wie neu – komplett aus Alu oder sowas in der Art. Laut Aussage des Verkäufers wurde es „wenig bespielt“ also bleibt zu hoffen, dass auch in der kommenden Zeit keine Fehler, wie das berühmt berüchtigte Idler-Zahnrad, auftreten. Dieses scheint aus einem weichen nylonartigen Material gefertigt zu sein, damit das Laufwerk ruhig läuft. Deswegen zerbröckelt es regelrecht und verliert „Zähne“. An der Din-Buchse zum Verstärker musst ich etwas friemeln, damit kein Wackelkontakt mehr auftrat aber ansonsten arbeitet das Teil tadellos.
Es hat auch schon so nette Funktionen wie den nächsten oder vorherigen Titel anspulen und einen Memo-Speicher für das Zählwerk. Damit kann man eine Stelle „merken“ und dort wieder hinspulen – natürlich nur über den Zähler gemessen, kein Index auf dem Band o.ä.. Aufnehmen funktioniert auch – Als Audioquelle dient der Airport Express über den Grundig RTV 820 Verstärker. Die einzige Funktion die ich noch nicht verstanden habe ist vorne am Laufwerk die kleine Taste „Post Fad“ mit der Öffnung. In die Öffnung passt ein kleiner Metallstift, den man rechts neben dem Laufwerk aus dem Gehäuse ziehen kann und ihn dann eben in das Loch neben „Post Fad“ stecken kann.  Spielt das Deck kann man den Stift bis zum Anschlag in die Öffnung stecken, ist es im „Stop“ Zustand passt es nur ein Stück rein. Es lässt sich dann drehen, also vermute ich, dass dort in der Tiefe ein Poti o.ä. steckt der irgendwas bewirkt. Gerne Kommentare dazu – habe leider auch noch kein Handbuch zu dem Gerät gefunden.

Baujahr dürfte so anfang der 80er Jahre gewesen sein – anbei der Link zum Radiomuseum

Zum Schluss noch 2 Videos 🙂

Die Zählwerk-Memory-Funktion:

Titel „anspulen“:

Nachtrag:

Die Fragen bezüglich des Steck-Stifts und der „Post Fad“ Taste habe ich mir gerade beantworten können – habe das Handbuch des MCF 600 im Netz gefunden 🙂
Der Stift wird im pausierten Wiedergabe- oder Aufnahmemodus in die Öffnung mit dem Uhrensymbol gesteckt und dient lediglich dazu, die Wiedergabe oder Aufnahme zu starten wenn der Recorder über eine Zeitschaltuhr betrieben wird. Ist der Stift nicht gesteckt befindet sich das Deck nach Einschalten der Netzspannung im Leerlauf (der Capstan Motor dreht, sonst passiert nichts) – ist nun der Stift pausiert gesteckt und das Gerät wird eingeschaltet, startet direkt die Wiedergabe oder Aufnahme (je nach dem in welchem Modus das Gerät gebracht wurde). Ganz clever gelöst 😉
Der „Post Fad“ Taster wird während der normalen Wiedergabe in Verbindung mit gedrückt gehaltener „Start“ Taste eingesezt. Er dient zum partiellen Löschen von unerwünschten Stellen in der Aufnahme und schaltet vermutlich nur den Löschkopf ein, was zu einem „Ausblenden“ der unerwünschten Stelle führt. Diese Stelle ist dann unwiederbringlich überschrieben. Der Witz ist, dass es sogar bei schreibgeschützten Kassetten klappt. Da man ja heute eher weniger aus dem Radio aufnimmt eher eine Funktion am Rande.

Das war dann erstmal dazu – gute Nacht 🙂

VN:F [1.9.22_1171]
Rating: 5.0/5 (1 vote cast)