Elkos für defekte Netzteile

In der Vergangenheit sind diverse Netzteile auf Grund von defekten Elektrolytkondensatoren – kurz Elkos – ausgefallen (vgl. Netzteilreparatur beim Humax HD1000 und Netzteilreparatur Technisat Receiver). Teilweise habe ich dazu in den Beiträgen einige Hinweise zur Reparatur abgegeben, was in einem regen Austausch mit anderen Benutzern oder Leidensgenossen geendet hat – teilweise über das Kommentarsystem, teilweise über private Email.

Es kam die Frage nach entsprechenden Elkos auf. Es sei allgemein zu sagen, dass sie vom Typ 105° (= Temperaturfestigkeit) sein sollten und mindestens die angegebene Spannung (in Volt) und mindestens die angegebene Kapazität haben müssen. Dabei ist die Spannungsfestigkeit eher sekundär, hauptsache es wird ein gleich- oder höherwertiger Elko verwendet (z.B. 16V statt 10V). Bei der Kapazität sollte man die Werte nicht zu stark überschreiten, da sonst die Regelung nicht mehr stimmt bzw. der Kondesator zu viel Energie beim Einschalten aufnimmt, was zur kompletten Zersterörung des Gerätes führen kann.

Wer auf Nummer sicher gehen will, schaut z.B. auf http://www.elko-verkauf.de wo es gleich ensprechende Sets für viele Receiver, TV und sonstiges Multimedia Equipment gibt.

Rückmeldung zum Medion Notebook MD41300

Eigentlich wäre es Zeit sich ein zeitgemäßes kleines Netbook zu zulegen. Zum mobilen Lesen von Emails und News gibt es aber Smartphones. Für WLAN Analysen oder Netzwerktests ist ein Netbook bzw. Laptop aber unabdingbar.

Mein altes lang gedientes Medion MD 41300 lief aber seit einem halben Jahr nicht hoch. Gleicher Fehler wie die letzten male auch (vgl. dev//tec Beitrag 1 und Betrag 2). Das Notebook fährt nicht hoch. Da das Notebook aber ein 4:3 Display, mit dem man meiner Meinung nach Texte am besten lesen kann als mit einem 16:9, gab es verschiedene Möglichkeiten, es wieder reparieren zu lassen, da es für meine Zwecke von der Leistung und Laufdauer her weit ausreicht. Entweder man bestellt das Mainboard 48.45D01.021 für ca. 135 Euro und baut es selber ein oder man kauft sich ein entsprechendes Notebook auf Ebay, wobei man immer noch ein defektes für wenig oder ein gutes für gutes Geld erstehen kann. Hier würde eine Neuanschaffung sich aber mehr lohnen.

Ich habe mich entschieden, das Notebook an einen Notebookservice zu geben. Mit dem Techniker hatte ich ein nettes Gespräch, der mir meine Vermutungen bestätigte. Die Lüfter sind dafür nicht ausgelegt, die Wärme von Northbridge, CPU und Grafikkarten abzuführen, insbesondere wenn die Notebooks schon etwas verstaubt sind und man mit diesen länger arbeitet. Dies gilt insbesondere dann, wenn man aufwendige Aufgaben wie Simulation oder Spiele laufen lässt. Meist ist es auch ein Konstruktionsfehler. Dies trifft nicht nur für das Medion Gerät zu, sondern auch für viele andere Laptops.

Die Folge ist, dass das Lötzinn auf der Unterseite der BGA-Chips halbflüssig wird und anschließend keine elektrisch leitende Verbindung mehr besteht. Der Chip kann dann nicht mehr angesprochen werden. Fachleute können die Chips wieder anlöten (Reflow -Löten). Kosten ca. 100 Euro inkl. Überprüfung. Seitdem läuft das Notebook wieder und steht für die anstehenden LAN-Tests bereit.

PHP: Datumsrechnerei

Für ein Projekt musst ich eine Datumsliste erstellen. Hierzu gibt es verschiedene Möglichkeiten, die ich gerne hier aufführen möchte, da hierzu bereits mehrere Fragen aufgetaucht sind.

Seit PHP5 gibt es hierfür date_create() und date_add(). Ein Beispiel für eine Auswahlbox lautet:

<?
$beginn = "2011-01-01";
$ende   = "2011-12-31";

function mk_select($name, $start, $end)
 {
    $date  = date_create($start);
    $limit = date_create($end);

    $ret = "<select name=\"".$name."\">\");

    if($date && $limit)
    {
      while($date < $limit)
      {
        $ret .= "  <option value=\"".date_format($date, 'Y-m-d')."\">".date_format($date, 'Y-m-d')."</option>\n";
        date_add($date, date_interval_create_from_date_string('1 month'));
      }
    }

  $ret .= "</select><br />\n"); return($ret);
 }

echo(mk_select("test_select", $beginn, $ende));

?>

Es wird zwei Daten erzeugt und immer mit Hilfe der Funktion date(…) der aktuelle Monat ausgegeben. Anschließend wird ein Monat hinzugefügt über date_add(). Dabei kümmert sich die Funktion automatisch darum, wieviele Tage ein Monat hat.

Wer mit einer älteren PHP Version zu kämpfen hat versucht folgendes Beispiel:

<?
$beginn = "2011-01-01";
$ende   = "2011-12-31";

function mk_select($name, $start, $end)
{
$ret = "<select name=\"".$name."\">\");

$d1 = explode("-", $start);
$d2 = explode("-", $end);
$t1 = mktime(0, 0, 0,  $d1[1], 2, $d1[0]);
$t2 = mktime(0, 0, 0,  $d2[1], $d2[2], $d2[0]);

if($t1 && $t2)
{
while($t1 < $t2)
{
$ret .= "  <option value=\"".date('Y-m-01', $t1)."\">".date('Y-m-01', $t1)."</option>\n";
}

$t1 = $t1 + date("t", $t1)*24*60*60;
}

$ret .= "</select><br />\n");
}

echo(mk_select("test_select", $beginn, $ende));
?>

Hierbei wird über mktime(…) ein Unixdatum (Sekunden seit 01.01.1970) erzeugt und die entsprechenden Sekunden über date(“t”, $t1)*24*60*60 hinzugefügt. Der Parameter t gibt dabei die Tage im entsprechenden Monat zurück. Bei der Ausgabe ist zu beachten, dass mktime die Zeitzone berücksichtigt. Deswegen ist in $t1 = mktime(0, 0, 0,  $d1[1], 2, $d1[0]) der 5. Parameter auf 2 (Stunden) gesetzt, sonst wird zweimal der Oktober und kein November ausgegeben.

Ähnliche Spielerein lassen sich mit Hilfe von Mysql machen. Dabei berechnet Mysql das Datum das man bequem dann in PHP weiterverarbeiten kann.

<?
// Datenbankaufbau
$res = mysql_query("SELECT DATE_ADD('2011-10-10 00:00:00', -> INTERVAL 1 Month);");

// Auswertung
?>

dedected mit GPS Support II

Ich habe mir nochmals die GPSD Dokumentation vorgenommen und das dect_cli Tool mit GPS Support überarbeitet. Jetzt hängt es nicht mehr vom String ab, den der GPS Daemon liefert, sondern es wird die Datenstruktur ausgewertet, was viel effizienter ist. Tja, die Doku müsste man lesen?!

Hier gibts die aktuellen Dateien (SVN Basis 102):

dect_cli.c
dect_cli.h

OpenVPN mit Source NAT auf VServer

In vielen Ländern ist mittlerweile “free wifi” in Hotels bzw. Cafes Standard, nur leider in Deutschland noch nicht. Der Vorteil im Urlaub liegt insbesondere mit modernen Smartphones darin, über Skype kostenlos nach Hause zu telefonieren, Emails abholen und und und …

Man sollte sich aber über seine Sicherheit Gedanken machen, da jeder den Traffic mitlesen kann. Deshalb ist auf meinem Android Smartphone der Emailverkehr generell verschlüsselt, genau wie bei Skype (systembedingt). Die Internetseiten wurden aber noch unverschlüsselt abgerufen und jeder kann sehen, wo man hinsurft. Deshalb habe ich auf meinem Androidphone OpenVPN installiert und leite darüber jede Verbindung zum OpenVPN Server, der auf einem VServer läuft. Die Einrichtung wurde dabei in vielen Tutorials bereits beschrieben, weshalb ich hierzu nichts schreibe. Um den Traffic komplett (ausser dem lokalen IP-Bereich) umzuleiten, dient folgende Zeile in der server.conf:

push "redirect-gateway def1"

Auf dem Server muss noch das Forwarding erlaubt werden, und es sollte eine Firewall installiert bzw. konfiguriert werden. Um eine korrekte Kommunikation aufzubauen, muss auf dem OpenVPN Server NAT durchgeführt werden. Dabei ist auf einem VServer venet0 die erste virtuelle Netzwerkkarte. NAT muss dabei auf dem richtigen Device gemacht werden, und nicht auf einem Subdevice wie venet0:0.

iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -o venet0 -j MASQUERADE

Das iptables-Ziel “MASQUERADE” ist aber meist (wie bei mir auch) nicht im Kernel enthalten. Hier gibt es eine Aushilfe. Man “fälscht” den Absender des Paketes über Source NAT (SNAT) und der Server gibt vor, selber Absender zu sein. Kommt ein Antwortpaket zurück, weiss der Server, dass das Paket zum Smartphone gehört und schreibt die entsprechenden privaten Zieladressen ins entsprechende Paket und leitet es weiter.

iptables -t nat -A POSTROUTING -s 172.16.0.0/24 -o venet0 -j SNAT --to-source IP_DES_SERVERS

Anmerkung: Ich verwende als VPN Netz das B-Klasse Netz 172.16.0.x. Möglich sind aber auch A-Klasse (10.x.y.z) bzw. C-Klasse (192.168.x.y) Netze.

←Older