<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>project-insanity.org</title>
	<atom:link href="http://www.project-insanity.org/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.project-insanity.org</link>
	<description>atmega,avr,bilder,Blog,C++,CNC,Linux,gsm,hack,server</description>
	<lastBuildDate>Tue, 18 Jun 2013 20:42:15 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Canon 400D Reparatur und Modifikation</title>
		<link>http://www.project-insanity.org/2013/06/canon-400d-reparatur-und-modifikation/</link>
		<comments>http://www.project-insanity.org/2013/06/canon-400d-reparatur-und-modifikation/#comments</comments>
		<pubDate>Sun, 09 Jun 2013 21:52:57 +0000</pubDate>
		<dc:creator>Neutrino</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[bilder]]></category>
		<category><![CDATA[Kamera]]></category>

		<guid isPermaLink="false">http://www.project-insanity.org/?p=3022</guid>
		<description><![CDATA[Ich habe mir eine Canon EOS 400D / XTi DSLR-Kamera günstig auf Ebay ersteigert, da sie nur einen defekten Compact-Flash Kartenslot hatte. Ein paar Pins waren verbogen und einer abgebrochen, weil der Vorbesitzer eine CF-Karte falschrum reinstecken wollte. Ich dachte mir, dass ich es reparieren kann und so geschah es. Nach langer Suche und letzendlicher [...]]]></description>
				<content:encoded><![CDATA[<p>Ich habe mir eine <a title="EOS 400D Technische Daten" href="http://www.canon.de/For_Home/Product_Finder/Cameras/Digital_SLR/EOS_400D/index.aspx?specs=1" target="_blank">Canon EOS 400D / XTi</a> DSLR-Kamera günstig auf Ebay ersteigert, da sie nur einen defekten Compact-Flash Kartenslot hatte. Ein paar Pins waren verbogen und einer abgebrochen, weil der Vorbesitzer eine CF-Karte falschrum reinstecken wollte. Ich dachte mir, dass ich es reparieren kann und so geschah es. Nach langer Suche und letzendlicher Nachfrage bei einen Reparaturdienst bekam ich die genaue Steckerbezeichnung &#8220;WS1-6384-000&#8243;, um ihn bestellen zu können.</p>
<p>Ich baute die Kamera nach dieser Beschreibung auseinander: <a title="How To Modify a Canon 400D/Xti" href="https://xythos.lsu.edu/users/jcham21/400d/">https://xythos.lsu.edu/users/jcham21/400d/</a></p>
<div id="attachment_3023" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2013/05/CF-Stecker1.jpg" rel="lightbox-3022"><img class="size-medium wp-image-3023" alt="Alter CF-Stecker mit Lötkolben an der Seite und Heißluft entlötet." src="http://www.project-insanity.org/wp-content/uploads/2013/05/CF-Stecker1-300x225.jpg" width="300" height="225" /></a><p class="wp-caption-text">Alter CF-Stecker mit Lötkolben an der Seite und Heißluft an den Pins entlötet.</p></div>
<div id="attachment_3024" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2013/05/CF-Stecker2.jpg" rel="lightbox-3022"><img class="size-medium wp-image-3024" alt="Pads mit Entlötlitze und Flussmittel entzinnt. Dann Platine mit Isopropanol gesäubert." src="http://www.project-insanity.org/wp-content/uploads/2013/05/CF-Stecker2-300x225.jpg" width="300" height="225" /></a><p class="wp-caption-text">Pads vorsichtig mit Entlötlitze und Flussmittel entzinnt. Dann Platine mit Isopropanol von Flussmittelrückständen gesäubert.</p></div>
<div id="attachment_3025" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2013/05/CF-Stecker3.jpg" rel="lightbox-3022"><img class="size-medium wp-image-3025" alt="Neuen Compact-Flash Stecker unter Stereomikroskop mit Flussmittel und dünnen Lötzinn gelötet." src="http://www.project-insanity.org/wp-content/uploads/2013/05/CF-Stecker3-300x225.jpg" width="300" height="225" /></a><p class="wp-caption-text">Neuen Compact-Flash Stecker unter Stereomikroskop mit Flussmittel und dünnen Lötzinn gelötet.</p></div>
<p><br style="clear: both;" /></p>
<div id="attachment_3062" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2013/06/Flachbandstecker.jpg" rel="lightbox-3022"><img src="http://www.project-insanity.org/wp-content/uploads/2013/06/Flachbandstecker-e1370814670629-300x243.jpg" alt="Flachbandstecker gefixt" width="300" height="243" class="size-medium wp-image-3062" /></a><p class="wp-caption-text">Flachbandstecker gefixt</p></div>
<p>In der Regel muss man hier die dunklen Teile der Flat-Flex-Cable-Stecker <b>vorsichtig</b> hochklappen um sie zu öffnen.<br />
Weil ich nicht gleich gecheckt habe wie die Flachbandleitungs-Stecker aufgehen, ist mir bei den Display-Stecker das weiße Kunststoff zum Teil gebrochen. Später merkte ich, dass das Display die Bilder nicht mehr richtig anzeigte, alles was &#8220;schwarz&#8221; sein sollte leuchtete &#8220;blau&#8221;. Nochmal aufgeschraubt erkannte ich unter dem Mikroskop das Problem: ein paar Pins vom Stecker wurden nicht mehr auf die Flachbandleitungs-Kontakte gedrückt. Ich lötete also wie man sieht, die betroffenen Pins auf die Kontakte drauf, so dass ich nun wieder die Bilder auf dem Display korrekt betrachten kann. <img src='http://www.project-insanity.org/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> </p>
<p><br style="clear: both;" /><br />
<strong>Umbau auf  Infrarot-Kamera:</strong></p>
<p>Da ich an Astro-, Nacht- und IR-Fotografie interessiert bin, habe ich auch noch wie in der Beschreibung den Kamera-Sensor abgeschraubt und den IR-Filter entfernt.</p>
<div id="attachment_3027" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2013/05/Filter1.jpg" rel="lightbox-3022"><img class="size-medium wp-image-3027" alt="links: Anti Aliasing Filter; rechts: IR-Filter" src="http://www.project-insanity.org/wp-content/uploads/2013/05/Filter1-300x225.jpg" width="300" height="225" /></a><p class="wp-caption-text">links: Anti Aliasing Filter; rechts: IR-Filter</p></div>
<div id="attachment_3028" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2013/05/Kamera-Sensor1.jpg" rel="lightbox-3022"><img class="size-medium wp-image-3028" alt="Kamera CMOS-Sensor" src="http://www.project-insanity.org/wp-content/uploads/2013/05/Kamera-Sensor1-300x225.jpg" width="300" height="225" /></a><p class="wp-caption-text">Kamera CMOS-Sensor</p></div>
<div id="attachment_3029" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2013/05/Kamera-Sensor2.jpg" rel="lightbox-3022"><img class="size-medium wp-image-3029" alt="die Pixel durch den Alias-Effekt?" src="http://www.project-insanity.org/wp-content/uploads/2013/05/Kamera-Sensor2-300x225.jpg" width="300" height="225" /></a><p class="wp-caption-text">die Pixel durch den <a href="https://de.wikipedia.org/wiki/Alias-Effekt">Alias-Effekt</a>?</p></div>
<p><br style="clear: both;" /><br />
Falls ich doch keine IR-Bilder machen möchte, will ich die Infrarot-Strahlen durch einen IR-cut filter auf dem Objektiv blockieren: <a href="http://www.schneiderkreuznach.com/photo-imaging/produktbereiche/b-w-fotofilter/produkte/filtertypen/spezialfilter/486-uvir-sperrfilter/">B+W 486 UV/IR SPERRFILTER</a>. Beispielbilder folgen, wenn ich einen solchen Filter besitze&#8230;</p>
<p>&nbsp;</p>
<p><strong>400plus</strong><br />
Ein weiterer Grund warum ich die Canon 400D ausprobieren will, ist das Projekt <a title="A firmware hack for the Canon 400D" href="https://code.google.com/p/400plus/" target="_blank">400plus</a>. Das ist eine alternative, spezielle Firmware für die Canon 400D, ähnlich wie das <a title="Canon Hack Development Kit" href="http://chdk.wikia.com/wiki/CHDK" target="_blank">CHDK-Projekt</a> für zahlreiche Canon-Kameras. Die gehackte Firmware gibt uns z.B. die Möglichkeit lua-Scripte für Serienaufnahmen auszuführen oder Belichtungszeiten von über 30sek einzustellen mit eingeblendeten Countdown oder die (De-)aktivierung des Blitzes über die Löschen-Taste usw&#8230;</p>
<p>Für neuere Canon DSLRs bringt die <a href="http://magiclantern.wikia.com/wiki/Magic_Lantern_Firmware_Wiki" target="_blank">Magic Lantern</a>-Firmware noch viel mehr Zusatzfunktionen.</p>
<p><strong>Ein paar Testbilder:</strong></p>
<div id="attachment_3074" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2013/06/IMG_0001.jpg" rel="lightbox-3022"><img class="size-medium wp-image-3074" alt="Wolkenspitze, Kontrast erhöht." src="http://www.project-insanity.org/wp-content/uploads/2013/06/IMG_0001-300x199.jpg" width="300" height="199" /></a><p class="wp-caption-text">Wolkenspitze, Kontrast erhöht.</p></div>
<div id="attachment_3075" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2013/06/400mm-Busch-950nm-IR.jpg" rel="lightbox-3022"><img class="size-medium wp-image-3075" alt="400mm Objektiv und 950nm-IR-Filter; Der Busch links hat dunkelbraune Blätter wie die Holzhütte dahinter." src="http://www.project-insanity.org/wp-content/uploads/2013/06/400mm-Busch-950nm-IR-300x199.jpg" width="300" height="199" /></a><p class="wp-caption-text">400mm Objektiv und 950nm-IR-Filter; Die Blätter vom Busch links sind normal dunkelbraun, wie die Holzhütte dahinter.</p></div>
<p><div id="attachment_3077" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2013/06/Mond4.jpg" rel="lightbox-3022"><img class="size-medium wp-image-3077" alt="400mm Objektiv" src="http://www.project-insanity.org/wp-content/uploads/2013/06/Mond4-e1370813928562-300x300.jpg" width="300" height="300" /></a><p class="wp-caption-text">400mm Objektiv; Mond am Tag fotografiert</p></div><br />
<br style="clear: both;" /><br />
&nbsp;</p>
 <p><a href="http://www.project-insanity.org/?flattrss_redirect&amp;id=3022&amp;md5=8e5df3fadbd1f1ff18aec4a0277f3c1d" title="Flattr" target="_blank"><img src="http://pi.vpn/pub/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.project-insanity.org/2013/06/canon-400d-reparatur-und-modifikation/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=8801&amp;popout=1&amp;url=http%3A%2F%2Fwww.project-insanity.org%2F2013%2F06%2Fcanon-400d-reparatur-und-modifikation%2F&amp;language=de_DE&amp;category=text&amp;title=Canon+400D+Reparatur+und+Modifikation&amp;description=Ich+habe+mir+eine+Canon+EOS+400D+%2F+XTi+DSLR-Kamera+g%C3%BCnstig+auf+Ebay+ersteigert%2C+da+sie+nur+einen+defekten+Compact-Flash+Kartenslot+hatte.+Ein+paar+Pins+waren+verbogen+und+einer+abgebrochen%2C...&amp;tags=bilder%2CHardware%2CKamera%2Cblog" type="text/html" />
	</item>
		<item>
		<title>Build your own Box!</title>
		<link>http://www.project-insanity.org/2013/03/build-your-own-box/</link>
		<comments>http://www.project-insanity.org/2013/03/build-your-own-box/#comments</comments>
		<pubDate>Wed, 27 Mar 2013 13:10:59 +0000</pubDate>
		<dc:creator>chrisse</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[HWE]]></category>
		<category><![CDATA[akku]]></category>
		<category><![CDATA[aktive]]></category>
		<category><![CDATA[audio]]></category>
		<category><![CDATA[box]]></category>
		<category><![CDATA[diy]]></category>
		<category><![CDATA[Hacking]]></category>
		<category><![CDATA[klinke]]></category>
		<category><![CDATA[lautsoprecher]]></category>
		<category><![CDATA[selbstbau]]></category>
		<category><![CDATA[verstärker]]></category>
		<category><![CDATA[xlr]]></category>

		<guid isPermaLink="false">http://www.project-insanity.org/?p=2378</guid>
		<description><![CDATA[Für alle die Interesse haben sich eine Aktivbox nachzubauen und eine kleine Hilfe zum Bau benötigen habe ich versucht alle Bauschritte und Teile unserer Denkprozesse zusammengefasst um manche Konstrutionsentscheidungen besser zu verstehen. Die Box, die Ich mir vorstelle und zusammen mit ST, Uhl, Flo und Onny gebaut habe, ist relativ klein und vom Sound her [...]]]></description>
				<content:encoded><![CDATA[<p>Für alle die Interesse haben sich eine Aktivbox nachzubauen und eine kleine Hilfe zum Bau benötigen habe ich versucht alle Bauschritte und Teile unserer Denkprozesse zusammengefasst um manche Konstrutionsentscheidungen besser zu verstehen.<br />
Die Box, die Ich mir vorstelle und zusammen mit ST, Uhl, Flo und Onny gebaut habe, ist relativ klein und vom Sound her nicht übermäßig laut dafür aber sehr leicht und überall hin transportierbar.</p>
<p>Generell ist wichtig zu wissen das man mit gefährlichen Spannungen arbeitet und das wir keine Haftung für den Bau und Betrieb der Box bei einem Nachbau übernehmen.<br />
<a href="http://www.project-insanity.org/wp-content/uploads/2013/03/IMG_20130311_161105.jpg" rel="lightbox-2378"><img class="size-medium wp-image-2838 aligncenter" alt="IMG_20130311_161105" src="http://www.project-insanity.org/wp-content/uploads/2013/03/IMG_20130311_161105-300x225.jpg" width="300" height="225" /></a><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG00791.jpg" rel="lightbox-2378"><img class="size-medium wp-image-2857 aligncenter" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG00791-225x300.jpg" width="225" height="300" /></a></p>
<h2>Vorbereitung:</h2>
<ul>
<li><strong>Case:</strong></li>
</ul>
<p>Um bei dem Bau der Holzbox schnell voran zu kommen und bei diesem Schritt nicht zu viel Zeit zu verlieren habe Ich ein CAD-Modell mit <a href="https://de.wikipedia.org/wiki/Solidworks" target="_blank">Solidworks</a> entworfen und eine Materialliste exportiert. Diese, bestehend aus Holzplatten und Innen-Querleisten, kann bei einem Baumarkt in der nähe abgegeben und geordert werden. Wenn mann viel Zeit und Spaß am handwerklichen Arbeiten hat kann man dies auch selber zusägen. Als Material für die Holzplatten haben wir <a href="http://de.wikipedia.org/wiki/Mitteldichte_Holzfaserplatte" target="_blank">MDF-Platten</a> mit einer Stärke von 10 mm verwendet. Mann kann auch stärkere Platten verwenden, sollte aber darauf achten, dass dann das Gewicht zunimmt. Wenn man alle Teile für die Holzbox zusammen hat kann man mit dem Montieren beginnen.<br />

<a href='http://www.project-insanity.org/2013/03/build-your-own-box/travelbox1/' title='travelbox1'><img width="150" height="150" src="http://www.project-insanity.org/wp-content/uploads/2012/08/travelbox1-150x150.png" class="attachment-thumbnail" alt="travelbox1" /></a>
<a href='http://www.project-insanity.org/2013/03/build-your-own-box/travelbox2/' title='travelbox2'><img width="150" height="150" src="http://www.project-insanity.org/wp-content/uploads/2012/08/travelbox2-150x150.png" class="attachment-thumbnail" alt="travelbox2" /></a>
</p>
<table width="100%" border="1">
<tbody>
<tr>
<th>Benennung</th>
<th>Maße (LxBxH in cm)</th>
<th>Menge</th>
</tr>
<tr>
<td>Deckel</td>
<td>23 x 23 x 1</td>
<td>2</td>
</tr>
<tr>
<td>Frontwand</td>
<td>35 x 21 x 1</td>
<td>1</td>
</tr>
<tr>
<td>Seitenwand</td>
<td>35 x 23 x 1</td>
<td>2</td>
</tr>
<tr>
<td>Rückwand</td>
<td>35 x 21 x 1</td>
<td>1</td>
</tr>
<tr>
<td>Quadratleiste (Seitenwände)</td>
<td>2 x 2 x 35</td>
<td>4</td>
</tr>
<tr>
<td>Quadratleiste (Deckel)</td>
<td>2 x 2 x 17</td>
<td>4</td>
</tr>
<tr>
<td>Quadratleiste (Deckel)</td>
<td>2 x 2 x 15</td>
<td>4</td>
</tr>
</tbody>
</table>
<p>Um die später montierten Speaker an der Vorderseite und die Anschlüsse an der Rückseite ein wenig vor Stößen zu schützen, haben wir die Vorder- und Rückseite um einen Zentimeter nach innen versetz.</p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2012/08/RIMG0063.jpg" rel="lightbox-2378"><img class="aligncenter size-medium wp-image-2436" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2012/08/RIMG0063-300x225.jpg" width="300" height="225" /></a></p>
<ul>
<li><strong>Verstärker:</strong></li>
</ul>
<p>Als Verstärker haben wir in dieser Box einen <b>2 x 50 Watt Class D Verstärker (TDA7492)</b> verbaut. Dieser ist bei Sure Elektronics <a href="http://www.sureelectronics.net/goods.php?id=1318" target="new">zu erwerben</a> und kostet ca. $25 (bei Ebay nochmals um einiges günstiger). Die &#8220;Besonderheit&#8221; des Verstärkers ist das es ein digital (Class D) und kein analog (Class A-B) Verstärker ist und somit einen geringen Energiebedarf hat durch einen höheren Wirkungsgrad und  damit weniger Abwärme.</p>
<ul>
<li><strong>Speaker</strong></li>
</ul>
<p>Die Lautsprecher haben wir aus alten Boxen ausgebaut. Bei den Speakern gibt es sehr vieles auf das man achten kann, generell ging es uns bei der kleinen Box darum das die Speaker nicht zu groß sind und in das geplante Gehäuse reinpassen. Das wichtigste Merkmal auf das man sich bei der Wahl der Speaker verlassen sollte ist meiner Meinung nach der Klang. Diesen kann man am besten raushören wenn man zwischen mehrern Speakern vergleicht und damit sein Gehör einwenig sensibilisiert. Der Klang ist von Speaker zu Speaker unterschiedlich und hat nicht immer etwas mit Preis, Alter und Gewicht zu tun. Das Gewicht sollte man dabei nicht unterschätzen, da man mit der Box flexibel sein will.<br />
Wir haben bei der Wahl der Tieftöner noch darauf geachtet, dass es sich um eine Kunstoffmembran handelt, da diese eine lange Lebensdauer aufweißt.</p>
<ul>
<li><strong>Akku:</strong></li>
</ul>
<p>Für den Akkubetrieb benutzen wir Litium-Ionenzellen wie sie in Laptops zufinden sind. Hier kann man einfach einen aus einem alten Laptop benutzen, gesetz den Fall er hat noch eine ausreichende Kapazität und vollfunktionierende Ladeelektronik (die kleine Platine die mit den Zellen verbunden ist). Der Vorteil der Litium-Ionenzellen ist das Gewicht, es macht die Box sehr leicht. Weiteres zu den Litium-Akkus kommt später im Bereich der Ladeelektronik.</p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0116.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2865" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0116-300x225.jpg" width="300" height="225" /></a> <a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0118.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2866" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0118-300x225.jpg" width="300" height="225" /></a><br />
Als Beispiel ist hier ein 3s 2p Akku abgebildet.</p>
<ul>
<li><strong>Netzteil:</strong></li>
</ul>
<p>Um die Versorgungsspannung für den Verstärker und den Akku zu transformieren benötigt man ein regelbares Computerschaltnetzteil mit geeignetem Spannungsbereich und ausreichend Leistung damit die Ladezyklen nicht zu lange dauern. Der Vorteil eines Schaltnetzteil ist der Wirkungsgrad (ca 90 %). Es wandelt mit geringen Verlusten die normale Netzspannung 230 Volt in eine gewünschte Spannung um.<br />
Wir haben in unserer Box ein Schaltnetzteil verwendet das die Spannung durch tauschen eines Adapter-Steckers ändert (siehe <a href="http://www.pollin.de/shop/dt/MjIyODcyOTk-/Computer_und_Zubehoer/Hardware/Netzteile/Netbook_Stromversorgung_TECHSOLO_TNP_40AT_40_W.html" target="new">TECHSOLO TNP-40AT, 40 W</a>). Dies ist für uns von Vorteil, da das Tauschen des Adapter-Stecker lediglich die Änderung eines Widerstandes bedeutet. Wir haben den Adapter Stecker mit einem verstellbaren Widerstand, einem sogennantem Potti, getauscht und können durch verändern des Wiederstandes die genaue Spannung einstellen, die das Schaltnetzteil für uns transformieren soll.</p>
<h2>Montage</h2>
<p>Wir haben erst die Vorder- und Rückseite ringsherum mit den Querlatten verschraubt und anschliesend die Seitenwände angebracht. Bei der Montage der Schrauben haben wir immer Löcher mit einem 2 mm Bohrer vorgebohrt und Senken für die Schraubenköpfe gefräst.</p>
<p>Um mit den Schrauben immer die Mitte der Querlatten zu treffen empfielt es sich auf allen Platten die Mitte der Querlatten anzuzeichnen:</p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2012/08/RIMG0058.jpg" rel="lightbox-2378"><img class="aligncenter size-medium wp-image-2431" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2012/08/RIMG0058-300x225.jpg" width="300" height="225" /></a><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0058.jpg" rel="lightbox-2378"><img class="size-medium wp-image-2812 aligncenter" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0058-300x225.jpg" width="300" height="225" /></a></p>
<p>&nbsp;</p>
<p>Danach haben wir die Ober- und Unterquerlatten zur stabilisation montiert und vorerst den Ober- und Unterdeckel angebracht</p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2012/08/RIMG0072.jpg" rel="lightbox-2378"><img class="aligncenter size-medium wp-image-2443" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2012/08/RIMG0072-300x225.jpg" width="300" height="225" /></a><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0059.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2813" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0059-300x225.jpg" width="300" height="225" /></a> <a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0074.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2823" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0074-300x225.jpg" width="300" height="225" /></a></p>
<p>Den Zeitaufwand für einen Kasten würde ich auf 1-2 Stunden schätzen.</p>
<p>Als nächsten Schritt haben wir die Vorderwand wieder abmontiert und die Löcher für die Speaker mit einer Stichsäge so genau wie möglich ausgesägt. Für die Löcher der Hoch- und Mitteltöner haben wir einen <strong>Lochkranzbohrer</strong> verwendet was die Arbeit beschleunigt. Für das Loch des Tieftöners haben wir zuerst ein Loch vorgebohrt und anschließend mit der Sticksäge ausgesägt.</p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0061.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2816" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0061-300x225.jpg" width="300" height="225" /></a> <a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0060.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2815" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0060-300x225.jpg" width="300" height="225" /></a></p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0066.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2826" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0066-300x225.jpg" width="300" height="225" /></a> <a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0064.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2825" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0064-300x225.jpg" width="300" height="225" /></a></p>
<p>Um die Speaker nicht zu verschmutzen ist es zu empfehlen, vor dem montieren der Speaker zuerst die Löcher für die Anschlüsse zu bohren und auszufeilen. Außerdem müssen noch Löcher für den &#8220;<a href="http://de.wikipedia.org/wiki/Bassreflex" target="new">Bassreflex&#8221;</a> gebohrt werden, wir haben uns dabei für einen Durchmesser von jeweils 2 cm entschieden.</p>
<p style="text-align: center;"><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0119.jpg" rel="lightbox-2378"><img class="size-medium wp-image-2869 aligncenter" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0119-300x225.jpg" width="300" height="225" /></a></p>
<p>Bei den Anschlüssen haben wir uns einige Gedanken gemacht</p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0112.jpg" rel="lightbox-2378"><img class="size-medium wp-image-2843 alignnone" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0112-300x225.jpg" width="300" height="225" /></a><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0125.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2900" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0125-300x225.jpg" width="300" height="225" /></a></p>
<p>Für die Stromversorgung haben wir uns überlegt eine <strong>Kaltgerätebuchse</strong> einzubauen, da es für diese in so gut wie jedem Haushalt ein passendes Kabel gibt. Außerdem ist ein Kaltgerätekabel sehr stabil und robust, was eine höhere Sicherheit für die Box bedeutet wenn an diesem Anschluss die Verbindung an das 230 Volt Hausnetzt hergestellt wird, welches eine tötliche Spannung ist. Das heißt immer auf gute Isolierung achten und bei der Montage immer den Netzstecker ziehen. Für den Audioausgang habe Ich bei dieser Box eine <strong>XLR-Buchse</strong> verwendet, was ein ziemlich aussergewöhnlicher Stecker ist. Man kann als Audioausgang auch eine <strong>Klinke- oder Chinch-Buchse</strong> einbauen, wir haben allerdings die Erfahrung gemacht, dass diese recht instabil sind und zumal die Box am häufigsten Outdoor und auf Partys im Einsatz ist, bei solchen Gelegenheiten eine Klinke-Buchse sehr schnell bei unsachgemäßer Handhabung herausbrechen kann. Um die Box zu schalten haben wir einen <strong>Wippschalter</strong> eingebaut.</p>
<p>Damit man unterwegs noch den Mp3-Player oder das Handy laden kann, haben wir noch USB-Buchsen zum Laden eingebaut.</p>
<p>Die Kaltgeräte-Buchse und den Schalter haben wir aus einem alten Computernetzteil ausgebaut. Die XLR-Buchse bei Pollin bestellt und die USB-Buchsen von einem Zigarettenanzünder-Adapter abgelötet:</p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0114.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2846" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0114-300x225.jpg" width="300" height="225" /></a><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0115.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2848" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0115-225x300.jpg" width="225" height="300" /></a><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0123.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2898" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0123-300x225.jpg" width="300" height="225" /></a></p>
<p>Beim anschließen der USB Buchsen ist uns aufgefallen, dass für manche Geräte, z.B die der Marke &#8220;angebissener Apfel&#8221;  es nicht ausreicht nur die zwei jeweils links und rechts äußeren Ports, die zur Stromversorgung dienen, anzuschließen, sondern dass man auch die mittleren zwei  Datapins benötigt damit das jeweilige Gerät zu laden beginnt. Wenn man gleichzeitig Laden und Musik hören möchte ist ein störendes Geräusch zu hören(Common ground fuck up). Die Lösung wäre eine galvanische Trennung. Der Zigarettenanzünder-Adapter generiert eine 5 Volt Versorgungsspannung aus einer Spannung zwischen 12 und 24 Volt, diesen kann man dann direkt die Versorgungsspannung des Verstärke mit anschliesen.</p>
<p>Wenn alle Buchsen montiert sind kann man die Speaker sowie die Frequenzweiche montieren und diese anschließen.</p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0085.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2818" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0085-300x225.jpg" width="300" height="225" /></a> <a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0308.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2821" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0308-300x225.jpg" width="300" height="225" /></a></p>
<p>Die Frequenzweiche teilt das Ausgangsaudiosignal des Verstärkers in Tief-, Mittel- und Hochfrequenz. Wenn man nicht genau weiß auf welchem Kabel welche Frequenz läuft kann man mit dem Tieftöner die Frequenzen durchtesten bzw. raushören. Man sollte aber auf keinen Fall die Tiefe Frequenz an den Hochtöner anschließen. Die Frequenzweiche kann man z.B aus einem alten Lautsprecher ausbauen (siehe nächstes Bild oben).</p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0307.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2820" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0307-300x225.jpg" width="300" height="225" /></a> <a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0303.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2819" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0303-300x225.jpg" width="300" height="225" /></a></p>
<p>Als nächsten Schritt haben wir den Verstärker an eine Seite neben die Frequenzweiche  montiert und den Audioausgang mit der Frequenzweiche verbunden (siehe <a href="http://www.st.com/st-web-ui/static/active/en/resource/technical/document/datasheet/CD00205863.pdf" target="new">Datasheet</a> oder <a target="new">User-Manual</a> des Digital-Verstärkers oder <a href="http://www.parts-express.com/pedocs/manuals/320-301-parts-express-manual.pdf" target="new">User-Manual</a>). Das Audioeingangssignal des Verstärker kann mit einem geeignetem Kabel mit der XLR-Buchse verbunden werden. Den auf dem Verstärker vorhandenen Lüfter haben wir abgesteckt, da er unserer Meinung nach nur unötig Energie verbraucht und schon durch den Bass schon eine ausreichende Zirkulation der Luft vorhanden ist. Auch ist ein Frischluftaustausch mit der Umgebung durch den Bassreflex möglich wodurch Abwärme abgegeben wird.</p>
<p>Im nächsten Schritt kann das Netzteil montiert und ein erster Soundtest durchgeführt werden. Hierfür muss das Netzteil auf der 230 Volt Seite mit der Kaltgeräte Buchse und auf der z.B. 19 Volt Seite mit dem Verstärker verbunden werden.</p>
<p>Um im Inneren der Box Kabel mitteinander zu Verbinden haben wir sogennante <b>Wago-Klemmen</b> verwendet, mit denen man einfach die Stromversorgung verkabeln und ggf. noch Sonderfunktionen wie Schalter einbauen kann.</p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0120.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2897" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0120-300x225.jpg" width="300" height="225" /></a></p>
<h2>Ladeelektronik</h2>
<p>Beim Laden der Box ist sicherlich noch einiges an Verbesserungsarbeit zu Leisten. Momentan haben wir zwei Boxen die mit folgender Schaltung funktionieren.</p>
<p>Die Spannung des Netzteil wird, falls notwendig, mit Hilfe des Pottis auf eine für Akku und Verstärker geeignete Spannung angepasst.</p>
<p>In meiner Box haben wir einen 8 Zellen Akku verwendet, dieser ist als 4 Zellen in Reihe und 2 Zellen Parallel angeordnet: Man spricht von <b>4 s 2 p</b>. Die Nennspannung pro Zelle beträgt 3,7 Volt und der Ladeschluss 4,3 Volt. Bei 4 Zellen in Reihe bedeutet das <b>Nennspannung des Akkus</b>: 4*3,7 = 14,8V und <b>Ladeschluss</b> (die Spannung die nicht überstiegen werden sollte): 4*4,3 = 17,2. Um auf Nummer sicher zu gehen haben wir die Spannung des Netzteils auf 17 V eingestellt.</p>
<p>Die Ladeeletronik, die auf dem Akku montiert ist, ist für meherer Faktoren extrem wichtig:  Sie sorgt dafür, dass der Akku, wenn er unter einer bestimmten Spannung ist abgeschaltet wird und kein Strom mehr abgibt. Das ist wichtig, da eine Tiefentladung irreversible Schädigung des Akkus zu folge hätte. Sie sorgt außerdem dafür, dass der Akku, wenn er vollgeladen ist oder mit  einer Spannung über 17,2V geladen wird, abschaltet. Ein weiteres wichtiges Feature der Ladeelktronik des Akkus ist das Autobalacing der Zellen. Sie überwacht die Spannung jedes Zellen-Paares und gleicht dies bei Abweichung aus. Eine wichtige Verbesserung unserer Ladeelektronik wäre die Informationen der Ladeelektronik des Akkus auszulesen.</p>
<p>Für die einfachste Funktionsweise reicht es die + und &#8211; Pins der Ladeelektronik des Akkus an die Versorgunsspannung (Netzteilausgang) anzuschließen.</p>
<p>Ich habe bei meiner Box zwei 8 Zellen Akku-Packs parallel eingebaut und kann somit eine <b>Laufzeitdauer von 24 Stunden auf Vollast</b> überschreiten. Wie lang sie genau hält haben wir noch nicht herausgefunden. Wir haben unsere Boxen so verschaltet, dass ein Betrieb ohne Akku möglich ist. Sprich man kann die Box mit Akku, am Hausnetz oder mit beiden kombiniert benutzen. Somit kann man die Box auch als Anlage für zuhause verwenden ohne dass der Akku beansprucht wird.</p>
<p>Mit einem Schalter, für den weitere Wago-Klemmen verwendet wurden, kann man den Akku und Verstärker von dem Netzteil trennen.</p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/Schaltplan1.png" rel="lightbox-2378"><img class="alignnone size-medium wp-image-3008" alt="Schaltplan" src="http://www.project-insanity.org/wp-content/uploads/2013/03/Schaltplan1-300x183.png" width="380" height="232" /></a></p>
<p>&nbsp;</p>
<h2>Kosten und Zeitaufwand</h2>
<ul>
<li>10 Euro Material für das Case</li>
<li>20 Euro für den Verstärker</li>
<li>15 Euro Netzteil</li>
</ul>
<p>Der Zeitaufwand ist schwer einzuschätzen</p>
<h2>Weitere Features</h2>
<ul>
<li>Licht</li>
<li>Bluetooth</li>
<li>Audioausgang zum vernetzen mehrerer Boxen</li>
<li>Laptop Ladeausgang</li>
<li>Integriertes Display</li>
<li>Integrierter Mp3 Player und Speicher für Musik</li>
<li>Integrierter WLAN-Accesspoint</li>
<li>Stromversorgung bzw. Ladevorgang via. Solarzellen</li>
<li>Messen von Lautstärke in Dezibel</li>
</ul>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0084.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2828" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0084-225x300.jpg" width="225" height="300" /></a> <a href="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0079.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2827" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2013/03/RIMG0079-225x300.jpg" width="225" height="300" /></a> <a href="http://www.project-insanity.org/wp-content/uploads/2012/08/RIMG0060.jpg" rel="lightbox-2378"><img class="alignnone size-medium wp-image-2433" alt="Exif_JPEG_PICTURE" src="http://www.project-insanity.org/wp-content/uploads/2012/08/RIMG0060-300x225.jpg" width="300" height="225" /></a></p>
<p><div id="attachment_3094" class="wp-caption alignleft" style="width: 698px"><a href="http://www.zdf.de/ZDFmediathek/beitrag/video/1916008/Dresden-hilft-sich-selbst-in-der-Not-?flash=off"><img src="http://www.project-insanity.org/wp-content/uploads/2013/03/Travelbox-in-Dresden-beim-Dammbau-ZDF-5.6.13.jpg" alt="Chrisses Travelbox, ein Highlight in Dresden bei der Elbe-Flut 5.6.2013, auch für das ZDF." width="688" height="384" class="size-full wp-image-3094" /></a><p class="wp-caption-text">Chrisses Travelbox, ein Highlight in Dresden bei der Elbe-Flut 5.6.2013, auch für das <a href="http://www.zdf.de/ZDFmediathek/beitrag/video/1916008/Dresden-hilft-sich-selbst-in-der-Not-?flash=off">ZDF</a>.</p></div><br />
<br style="clear: both;" /></p>
 <p><a href="http://www.project-insanity.org/?flattrss_redirect&amp;id=2378&amp;md5=db2119cbec849a4aaffa363108b04e94" title="Flattr" target="_blank"><img src="http://pi.vpn/pub/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.project-insanity.org/2013/03/build-your-own-box/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=8801&amp;popout=1&amp;url=http%3A%2F%2Fwww.project-insanity.org%2F2013%2F03%2Fbuild-your-own-box%2F&amp;language=de_DE&amp;category=text&amp;title=Build+your+own+Box%21&amp;description=F%C3%BCr+alle+die+Interesse+haben+sich+eine+Aktivbox+nachzubauen+und+eine+kleine+Hilfe+zum+Bau+ben%C3%B6tigen+habe+ich+versucht+alle+Bauschritte+und+Teile+unserer+Denkprozesse+zusammengefasst+um+manche+Konstrutionsentscheidungen+besser...&amp;tags=akku%2Caktive%2Caudio%2Cbox%2Cdiy%2CHacking%2Cklinke%2Clautsoprecher%2Cselbstbau%2Cverst%C3%A4rker%2Cxlr%2Cblog" type="text/html" />
	</item>
		<item>
		<title>How I fixed a kernel regression using git bisect</title>
		<link>http://www.project-insanity.org/2013/02/how-i-found-a-kernel-regression-using-git-bisect/</link>
		<comments>http://www.project-insanity.org/2013/02/how-i-found-a-kernel-regression-using-git-bisect/#comments</comments>
		<pubDate>Wed, 13 Feb 2013 00:11:34 +0000</pubDate>
		<dc:creator>onny</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software/ Coding]]></category>
		<category><![CDATA[git bisect]]></category>
		<category><![CDATA[kernel regression]]></category>
		<category><![CDATA[suspend issue]]></category>

		<guid isPermaLink="false">http://www.project-insanity.org/?p=2756</guid>
		<description><![CDATA[As a happy user of the ArchLinux testing-repository, I&#8217;m sometimes &#8220;forced&#8221; to deal with bugs and regressions which do not break the whole system but definitely need some time finding and fixing them. Beside the breaking of some userland applications like libvirt or wicd, a kernel regression, which might only affect your own system, could [...]]]></description>
				<content:encoded><![CDATA[<p>As a happy user of the ArchLinux <em>testing</em>-repository, I&#8217;m sometimes &#8220;forced&#8221; to deal with bugs and regressions which do not break the whole system but definitely need some time finding and fixing them.<br />
Beside the breaking of some userland applications like libvirt or wicd, a kernel regression, which might only affect your own system, could be really difficult to spot.<br />
My Thinkpad T43 notebook suffered a &#8220;won&#8217;t-wakeup-from-suspend&#8221; bug since the 3.7 kernel tree and apparently this bug is still present in the latest stable upstream releases. Searching for the cause of this regression on Google isn&#8217;t really helpfull and <a href="https://bugs.archlinux.org/task/33431" target=new>opening tasks</a> on your distributions bug tracker gets you in this case to the only but unpopular soloution: <a href="http://www.reactivated.net/weblog/archives/2006/01/using-git-bisect-to-find-buggy-kernel-patches/" target=new>kernel bisection</a>. While reading about the <a href="http://lwn.net/Articles/277872/" target=new>pros and cons</a> of this unanalytical method, I just wanted to give it a try:</p>
<div class="codecolorer-container text projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">git clone git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git linux-git<br />
cd linux-git<br />
git bisect start<br />
git bisect good v3.6<br />
git bisect bad v3.7-rc1</div></td></tr></tbody></table></div>
<p>As you can see, I define the range in which I assume the culprit commit. Now the process of compiling and testing several kernel versions starts while narrowing down the bug. Unfortunately, I always had to compress the current revision and compile it using the offical ArchLinux <a href="https://www.archlinux.org/packages/core/i686/linux/" target=new>PKGBUILD</a> file on my remote server, because I couldn&#8217;t figure out how to afterwards test the kernel on my local system in a &#8220;clean&#8221; manner. Installing the bisected kernel with pacman was the more convenient way <img src='http://www.project-insanity.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /><br />
So here&#8217;s the quite long bisection log. Note that git always stated with every step, how many commits are left to check.</p>
<div class="codecolorer-container text projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">git bisect start<br />
# good: [49b8c695e331c9685e6ffdbf34872509d77c8459] Merge branch 'x86/fpu' into x86/smap<br />
git bisect good 49b8c695e331c9685e6ffdbf34872509d77c8459<br />
# good: [49b8c695e331c9685e6ffdbf34872509d77c8459] Merge branch 'x86/fpu' into x86/smap<br />
git bisect good 49b8c695e331c9685e6ffdbf34872509d77c8459<br />
# bad: [a20acf99f75e49271381d65db097c9763060a1e8] Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-next<br />
git bisect bad a20acf99f75e49271381d65db097c9763060a1e8<br />
# good: [06d2fe153b9b35e57221e35831a26918f462db68] Merge tag 'driver-core-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/driver-core<br />
git bisect good 06d2fe153b9b35e57221e35831a26918f462db68<br />
# good: [3498d13b8090c0b0ef911409fbc503a7c4cca6ef] Merge tag 'tty-3.6' of git://git.kernel.org/pub/scm/linux/kernel/git/gregkh/tty<br />
git bisect good 3498d13b8090c0b0ef911409fbc503a7c4cca6ef<br />
# bad: [61464c8357c8f6b780e4c44f5c79471799c51ca7] Merge tag 'cleanup' of git://git.kernel.org/pub/scm/linux/kernel/git/arm/arm-soc<br />
git bisect bad 61464c8357c8f6b780e4c44f5c79471799c51ca7<br />
# good: [cc150a2861e744d8f574d571762cc7e9f928abb3] Merge tag 'hwmon-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/groeck/linux-staging<br />
git bisect good cc150a2861e744d8f574d571762cc7e9f928abb3<br />
# good: [60e59920152c7bafc8a2eb3031a62f22c2bc9e95] Merge branch 'board' of git://github.com/hzhuang1/linux into next/cleanup<br />
git bisect good 60e59920152c7bafc8a2eb3031a62f22c2bc9e95<br />
# bad: [797b9e5ae93270ec27a1f1ed48cd697d01b2269f] Merge branch 'for-linus' of git://git.samba.org/sfrench/cifs-2.6<br />
git bisect bad 797b9e5ae93270ec27a1f1ed48cd697d01b2269f<br />
# good: [71953fc6e4ce5ac05b594d8e5866accf531aa969] cifs: remove kmap lock and rsize limit<br />
git bisect good 71953fc6e4ce5ac05b594d8e5866accf531aa969<br />
# good: [c052e2b423f3eabe9f3f32e60744afa5cf26f6b9] cifs: obtain file access during backup intent lookup (resend)<br />
git bisect good c052e2b423f3eabe9f3f32e60744afa5cf26f6b9<br />
# good: [cdeb9b014331af4282be522824e36f3aa33f0671] Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/geert/linux-m68k<br />
git bisect good cdeb9b014331af4282be522824e36f3aa33f0671<br />
# good: [a57d985e378ca69f430b85852e4187db3698a89e] Merge tag 'please-pull-ia64-for-3.7' of git://git.kernel.org/pub/scm/linux/kernel/git/aegl/linux<br />
git bisect good a57d985e378ca69f430b85852e4187db3698a89e<br />
# bad: [b2cc2a074de75671bbed5e2dda67a9252ef353ea] x86, smep, smap: Make the switching functions one-way<br />
git bisect bad b2cc2a074de75671bbed5e2dda67a9252ef353ea<br />
# good: [5a5a51db78ef24aa61a4cb2ae36f07f6fa37356d] x86-32: Start out eflags and cr4 clean<br />
git bisect good 5a5a51db78ef24aa61a4cb2ae36f07f6fa37356d<br />
# bad: [73201dbec64aebf6b0dca855b523f437972dc7bb] x86, suspend: On wakeup always initialize cr4 and EFER<br />
git bisect bad 73201dbec64aebf6b0dca855b523f437972dc7bb<br />
# bad: [73201dbec64aebf6b0dca855b523f437972dc7bb] x86, suspend: On wakeup always initialize cr4 and EFER<br />
git bisect bad 73201dbec64aebf6b0dca855b523f437972dc7bb<br />
# bad: [73201dbec64aebf6b0dca855b523f437972dc7bb] x86, suspend: On wakeup always initialize cr4 and EFER<br />
git bisect bad 73201dbec64aebf6b0dca855b523f437972dc7bb</div></td></tr></tbody></table></div>
<p>So, the last part of the session finally showed me a result:</p>
<div class="codecolorer-container text projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">73201dbec64aebf6b0dca855b523f437972dc7bb is the first bad commit<br />
commit 73201dbec64aebf6b0dca855b523f437972dc7bb<br />
Author: H. Peter Anvin &lt;hpa@linux.intel.com&gt;<br />
Date: &nbsp; Wed Sep 26 15:02:34 2012 -0700<br />
<br />
&nbsp; &nbsp; x86, suspend: On wakeup always initialize cr4 and EFER<br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; We already have a flag word to indicate the existence of MISC_ENABLES,<br />
&nbsp; &nbsp; so use the same flag word to indicate existence of cr4 and EFER, and<br />
&nbsp; &nbsp; always restore them if they exist. &nbsp;That way if something passes a<br />
&nbsp; &nbsp; nonzero value when the value *should* be zero, we will still<br />
&nbsp; &nbsp; initialize it.<br />
&nbsp; &nbsp; <br />
&nbsp; &nbsp; Signed-off-by: H. Peter Anvin &lt;hpa@linux.intel.com&gt;<br />
&nbsp; &nbsp; Cc: Rafael J. Wysocki &lt;rjw@sisk.pl&gt;<br />
&nbsp; &nbsp; Link: http://lkml.kernel.org/r/1348529239-17943-1-git-send-email-hpa@linux.intel.com<br />
<br />
:040000 040000 bb093059ee142f1dd5bd7fe44368ba657701e451 a13e5f81b5a83f783ebeb6317599a7cd6cd4056b M &nbsp; &nbsp; &nbsp;arch</div></td></tr></tbody></table></div>
<p>I contacted the author of <a target=new href="https://patchwork.kernel.org/patch/1511921/">this commit</a> but he was unsure about the cause of this bug and so he wanted to reproduce it on the same Thinkpad model. Meanwhile I tried to revert a part of this commit and actually fixed the bug with this patch (without knowing what it does):</p>
<div class="codecolorer-container text projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">--- a/arch/x86/realmode/rm/wakeup_asm.S 2013-02-23 13:53:04.280001331 +0000<br />
+++ b/arch/x86/realmode/rm/wakeup_asm.S 2013-02-23 13:54:14.363333655 +0000<br />
@@ -93,8 +93,8 @@<br />
&nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; /* Restore MISC_ENABLE before entering protected mode, in case<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;BIOS decided to clear XD_DISABLE during S3. */<br />
- &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;pmode_behavior, %edi<br />
- &nbsp; &nbsp; &nbsp; btl &nbsp; &nbsp; $WAKEUP_BEHAVIOR_RESTORE_MISC_ENABLE, %edi<br />
+ &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;pmode_behavior, %eax<br />
+ &nbsp; &nbsp; &nbsp; btl &nbsp; &nbsp; $WAKEUP_BEHAVIOR_RESTORE_MISC_ENABLE, %eax<br />
&nbsp; &nbsp; &nbsp; &nbsp; jnc &nbsp; &nbsp; 1f<br />
&nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;pmode_misc_en, %eax<br />
@@ -110,15 +110,15 @@<br />
&nbsp; &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;pmode_cr3, %eax<br />
&nbsp; &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;%eax, %cr3<br />
&nbsp;<br />
- &nbsp; &nbsp; &nbsp; btl &nbsp; &nbsp; $WAKEUP_BEHAVIOR_RESTORE_CR4, %edi<br />
- &nbsp; &nbsp; &nbsp; jnc &nbsp; &nbsp; 1f<br />
- &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;pmode_cr4, %eax<br />
- &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;%eax, %cr4<br />
+ &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;pmode_cr4, %ecx<br />
+ &nbsp; &nbsp; &nbsp; jecxz &nbsp; 1f<br />
+ &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;%ecx, %cr4<br />
&nbsp;1:<br />
- &nbsp; &nbsp; &nbsp; btl &nbsp; &nbsp; $WAKEUP_BEHAVIOR_RESTORE_EFER, %edi<br />
- &nbsp; &nbsp; &nbsp; jnc &nbsp; &nbsp; 1f<br />
&nbsp; &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;pmode_efer, %eax<br />
&nbsp; &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;pmode_efer + 4, %edx<br />
+ &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;%eax, %ecx<br />
+ &nbsp; &nbsp; &nbsp; orl &nbsp; &nbsp; %edx, %ecx<br />
+ &nbsp; &nbsp; &nbsp; jz &nbsp; &nbsp; &nbsp;1f &nbsp; &nbsp; &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; movl &nbsp; &nbsp;$MSR_EFER, %ecx <br />
&nbsp; &nbsp; &nbsp; &nbsp; wrmsr &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <br />
&nbsp;1:</div></td></tr></tbody></table></div>
<p>Now my laptop is running again with the patch applied to the latest stable kernel and suspend2ram is working again <img src='http://www.project-insanity.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Let&#8217;s hope that this gets fixed upstream very soon.</p>
 <p><a href="http://www.project-insanity.org/?flattrss_redirect&amp;id=2756&amp;md5=92ed2709fde4a18c84c9cb4c014aea30" title="Flattr" target="_blank"><img src="http://pi.vpn/pub/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.project-insanity.org/2013/02/how-i-found-a-kernel-regression-using-git-bisect/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=8801&amp;popout=1&amp;url=http%3A%2F%2Fwww.project-insanity.org%2F2013%2F02%2Fhow-i-found-a-kernel-regression-using-git-bisect%2F&amp;language=de_DE&amp;category=text&amp;title=How+I+fixed+a+kernel+regression+using+git+bisect&amp;description=As+a+happy+user+of+the+ArchLinux+testing-repository%2C+I%26%238217%3Bm+sometimes+%26%238220%3Bforced%26%238221%3B+to+deal+with+bugs+and+regressions+which+do+not+break+the+whole+system+but+definitely+need+some+time+finding...&amp;tags=git+bisect%2Ckernel+regression%2Csuspend+issue%2Cblog" type="text/html" />
	</item>
		<item>
		<title>Counter-Strike 1.6 DustOE Server</title>
		<link>http://www.project-insanity.org/2012/12/cs1-6-map-dustoe/</link>
		<comments>http://www.project-insanity.org/2012/12/cs1-6-map-dustoe/#comments</comments>
		<pubDate>Fri, 21 Dec 2012 01:11:03 +0000</pubDate>
		<dc:creator>onny</dc:creator>
				<category><![CDATA[Artwork]]></category>
		<category><![CDATA[1.6]]></category>
		<category><![CDATA[couter-strike]]></category>
		<category><![CDATA[cs]]></category>
		<category><![CDATA[download]]></category>
		<category><![CDATA[dustOE]]></category>
		<category><![CDATA[dust_oe]]></category>
		<category><![CDATA[funmap]]></category>
		<category><![CDATA[half-life]]></category>
		<category><![CDATA[map]]></category>
		<category><![CDATA[onnyedition]]></category>
		<category><![CDATA[server]]></category>

		<guid isPermaLink="false">http://pi.vpn/pub/?p=913</guid>
		<description><![CDATA[Unser Server hostet jetzt endlich auch einen Counter-Strike 1.6 Server. In diesem Fall auch mit einer besonderen Map: de_dustoe. Diese Map hatte Ich schon vor vielen Jahren in unterschiedlichen Version erstellt und es macht noch immer relativ viel Spaß diese zu spielen . de_dustoe: Download de_dustoe3: Download Jetzt gillt es noch, die Dokumentation im ArchLinux-Wiki, [...]]]></description>
				<content:encoded><![CDATA[<p><div id="attachment_2733" class="wp-caption alignright" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2010/06/dust-onnyedition.jpg" rel="lightbox-913"><img class="size-medium wp-image-2733" alt="DustOE version 1" src="http://www.project-insanity.org/wp-content/uploads/2010/06/dust-onnyedition-300x192.jpg" width="300" height="192" /></a><p class="wp-caption-text">DustOE version 1</p></div><br />
Unser Server hostet jetzt endlich auch einen Counter-Strike 1.6 Server. In diesem Fall auch mit einer besonderen Map: de_dustoe. Diese Map hatte Ich schon vor vielen Jahren in unterschiedlichen Version erstellt und es macht noch immer relativ viel Spaß diese zu spielen <img src='http://www.project-insanity.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> .</p>
<ul>
<li>de_dustoe: <a href="http://www.project-insanity.org/wp-content/uploads/2010/06/dust-onnyedition.tar.gz">Download</a></li>
<li>de_dustoe3: <a href="http://www.project-insanity.org/wp-content/uploads/2010/06/dust-onnyedition3.tar.gz">Download</a></li>
</ul>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2010/06/Screenshot1.jpeg" rel="lightbox-913"><img class="alignright size-medium wp-image-916" title="Screenshot" alt="" src="http://www.project-insanity.org/wp-content/uploads/2010/06/Screenshot1-300x240.jpg" width="300" height="240" /></a><br />
Jetzt gillt es noch, die <a href=https://wiki.archlinux.org/index.php/Hlds target=new>Dokumentation im ArchLinux-Wiki</a>, wie ein HLDS-Server unter Linux eingerichtet wird, fertigzuschreiben.</p>
<p><a href="http://www.gametracker.com/server_info/5.9.99.52:27019/" target="_blank"><img src="http://cache.www.gametracker.com/server_info/5.9.99.52:27019/b_560_95_1.png" border="0" width="560" height="95" alt=""/></a></p>
 <p><a href="http://www.project-insanity.org/?flattrss_redirect&amp;id=913&amp;md5=bdf392113b77267998a92f9ddc8043a1" title="Flattr" target="_blank"><img src="http://pi.vpn/pub/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.project-insanity.org/2012/12/cs1-6-map-dustoe/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=8801&amp;popout=1&amp;url=http%3A%2F%2Fwww.project-insanity.org%2F2012%2F12%2Fcs1-6-map-dustoe%2F&amp;language=de_DE&amp;category=text&amp;title=Counter-Strike+1.6+DustOE+Server&amp;description=Unser+Server+hostet+jetzt+endlich+auch+einen+Counter-Strike+1.6+Server.+In+diesem+Fall+auch+mit+einer+besonderen+Map%3A+de_dustoe.+Diese+Map+hatte+Ich+schon+vor+vielen+Jahren+in+unterschiedlichen+Version...&amp;tags=1.6%2Ccouter-strike%2Ccs%2Cdownload%2CdustOE%2Cdust_oe%2Cfunmap%2Chalf-life%2Cmap%2Connyedition%2Cserver%2Cblog" type="text/html" />
	</item>
		<item>
		<title>Dwb Flattr Extension</title>
		<link>http://www.project-insanity.org/2012/12/dwb-flattr-extension/</link>
		<comments>http://www.project-insanity.org/2012/12/dwb-flattr-extension/#comments</comments>
		<pubDate>Mon, 10 Dec 2012 01:16:47 +0000</pubDate>
		<dc:creator>onny</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software/ Coding]]></category>
		<category><![CDATA[chrome]]></category>
		<category><![CDATA[dwb]]></category>
		<category><![CDATA[extension]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[flattr]]></category>
		<category><![CDATA[pentadactyl]]></category>
		<category><![CDATA[vimperator]]></category>

		<guid isPermaLink="false">http://www.project-insanity.org/?p=2693</guid>
		<description><![CDATA[Wer Vimperator oder Pentadactyl unter Firefox nutzt, weiß die kompfortable Bedienung eines &#8220;VI-like&#8221;-Browsers zu schätzen. Wem mit der Zeit Firefox zu groß und langsam wurde, kann auch auf einem minimalen Browser umsteigen, der dennoch die wichtigsten Funktionen implementiert hat, dafür aber keinen &#8220;GUI&#8221;-overhead mehr besitzt. Mein Favorit ist in diesem Bereich dwb und gefühlt steigt [...]]]></description>
				<content:encoded><![CDATA[<p>Wer <a href="https://addons.mozilla.org/nl/firefox/addon/vimperator/" target=new>Vimperator</a> oder <a href="https://addons.mozilla.org/nl/firefox/addon/pentadactyl/" target=new>Pentadactyl</a> unter Firefox nutzt, weiß die kompfortable Bedienung eines &#8220;VI-like&#8221;-Browsers zu schätzen. Wem mit der Zeit Firefox zu groß und langsam wurde, kann auch auf einem minimalen Browser umsteigen, der dennoch die wichtigsten Funktionen implementiert hat, dafür aber keinen &#8220;GUI&#8221;-overhead mehr besitzt. Mein Favorit ist in diesem Bereich <a href="http://portix.bitbucket.org/dwb/" target=new>dwb</a> und gefühlt steigt auch immer mehr dessen Popularität. Zumindest seine Entwicklung wird weiterhin aktiv vorangetrieben und damit spürbar auch seine performance und stabilität (obwohl libwebkitgtk unter der Haube selbst in ArchTesting nicht sehr aktuell ist).<br />
Mir fehlen dennoch einige Addons, neben YouTube/Grooveshark-Unblocker ist das noch eine Flattr-Extension:</p>
<li><em>~/.config/dwb/userscripts/flattr.js:</em> [<a target=new href="http://www.project-insanity.org/wp-content/uploads/2012/12/flattr.js">raw</a>]:
<div class="codecolorer-container javascript projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br /></div></td><td><div class="javascript codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">#<span style="color: #339933;">!</span>javascript<br />
<br />
bind<span style="color: #009900;">&#40;</span><span style="color: #003366; font-weight: bold;">null</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span><span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span> flattr<span style="color: #009900;">&#40;</span>tabs.<span style="color: #660066;">current</span>.<span style="color: #660066;">uri</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span> <span style="color: #009900;">&#125;</span><span style="color: #339933;">,</span> <span style="color: #3366CC;">&quot;flattr&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">function</span> checkflattr<span style="color: #009900;">&#40;</span>url<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> reqret <span style="color: #339933;">=</span> sendRequestSync<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;https://api.flattr.com/rest/v2/things/lookup?q=&quot;</span><span style="color: #339933;">+</span>url<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> returnobject <span style="color: #339933;">=</span> JSON.<span style="color: #660066;">parse</span><span style="color: #009900;">&#40;</span>reqret.<span style="color: #660066;">body</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>returnobject.<span style="color: #660066;">message</span> <span style="color: #339933;">!==</span> <span style="color: #3366CC;">&quot;not_found&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; <span style="color: #000066; font-weight: bold;">return</span> returnobject.<span style="color: #660066;">id</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
&nbsp; <span style="color: #000066; font-weight: bold;">return</span> <span style="color: #003366; font-weight: bold;">false</span><span style="color: #339933;">;</span><br />
<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span><br />
<br />
<span style="color: #003366; font-weight: bold;">function</span> flattr<span style="color: #009900;">&#40;</span>url<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #003366; font-weight: bold;">var</span> flattrid <span style="color: #339933;">=</span> checkflattr<span style="color: #009900;">&#40;</span>url<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>flattrid<span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; execute<span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;tabopen https://flattr.com/thing/&quot;</span><span style="color: #339933;">+</span>flattrid<span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span> <span style="color: #000066; font-weight: bold;">else</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; io.<span style="color: #660066;">notify</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Flattr not available for this page!&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span><span style="color: #339933;">;</span><br />
<br />
signals.<span style="color: #660066;">connect</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;loadCommitted&quot;</span><span style="color: #339933;">,</span> <span style="color: #003366; font-weight: bold;">function</span><span style="color: #009900;">&#40;</span>wv<span style="color: #009900;">&#41;</span> <span style="color: #009900;">&#123;</span><br />
&nbsp; <span style="color: #000066; font-weight: bold;">if</span><span style="color: #009900;">&#40;</span>checkflattr<span style="color: #009900;">&#40;</span>wv.<span style="color: #660066;">uri</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#41;</span><span style="color: #009900;">&#123;</span><br />
&nbsp; &nbsp; io.<span style="color: #660066;">notify</span><span style="color: #009900;">&#40;</span><span style="color: #3366CC;">&quot;Flattr available!&quot;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span><br />
&nbsp; <span style="color: #009900;">&#125;</span><br />
<span style="color: #009900;">&#125;</span><span style="color: #009900;">&#41;</span><span style="color: #339933;">;</span></div></td></tr></tbody></table></div>
</li>
<p>Problem (fürs erste) solved <img src='http://www.project-insanity.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  Es erscheint eine kurze Meldung, dass man die Inhalte <em>flattrn</em> kann und mit dem Befehl <strong>:flattr</strong> ist dies auch getan. Wer Flattr nicht kennt? <a href="https://flattr.com" target=new>Klick</a>!</p>
<p>Mit ein wenig Kenntnis der <a href="http://portix.bitbucket.org/dwb/resources/jsapi.html" target=new>API</a> lassen sich schnell noch andere, weitere Extension-Ideen umsetzen, es würde sich da einiges anbieten (auto-dl bei 1-click-hostern, autotranslate webpage &#8230;).</p>
 <p><a href="http://www.project-insanity.org/?flattrss_redirect&amp;id=2693&amp;md5=9b5d05d563a00e2191516c405b204463" title="Flattr" target="_blank"><img src="http://pi.vpn/pub/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.project-insanity.org/2012/12/dwb-flattr-extension/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=8801&amp;popout=1&amp;url=http%3A%2F%2Fwww.project-insanity.org%2F2012%2F12%2Fdwb-flattr-extension%2F&amp;language=de_DE&amp;category=text&amp;title=Dwb+Flattr+Extension&amp;description=Wer+Vimperator+oder+Pentadactyl+unter+Firefox+nutzt%2C+wei%C3%9F+die+kompfortable+Bedienung+eines+%26%238220%3BVI-like%26%238221%3B-Browsers+zu+sch%C3%A4tzen.+Wem+mit+der+Zeit+Firefox+zu+gro%C3%9F+und+langsam+wurde%2C+kann+auch+auf+einem+minimalen...&amp;tags=chrome%2Cdwb%2Cextension%2Cfirefox%2Cflattr%2Cpentadactyl%2Cvimperator%2Cblog" type="text/html" />
	</item>
		<item>
		<title>Mainboard Elkos tauschen</title>
		<link>http://www.project-insanity.org/2012/11/mainboard-elkos-tauschen/</link>
		<comments>http://www.project-insanity.org/2012/11/mainboard-elkos-tauschen/#comments</comments>
		<pubDate>Thu, 08 Nov 2012 20:29:43 +0000</pubDate>
		<dc:creator>Neutrino</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Elektronik]]></category>

		<guid isPermaLink="false">http://www.project-insanity.org/?p=2640</guid>
		<description><![CDATA[Hab im Schrott ein Mainboard gefunden welches nicht so veraltet aussah (für mich) da es 4 SATA Ports und ein AMD Prozessor hat, also nahm ich das Motherboard mit nachause.  Dort sah ich dann warum es wahrscheinlich auf den Schrott landete, die meisten Elkos  waren aufgebläht, also defekt. Das passiert leider oft, dass die Elkos ihre [...]]]></description>
				<content:encoded><![CDATA[<p>Hab im Schrott ein Mainboard gefunden welches nicht so veraltet aussah (für mich) da es 4 SATA Ports und ein AMD Prozessor hat, also nahm ich das Motherboard mit nachause.  Dort sah ich dann warum es wahrscheinlich auf den Schrott landete, die meisten Elkos  waren aufgebläht, also defekt. Das passiert leider oft, dass die Elkos ihre Kapzität verlieren und dadurch das Gerät nichtmehr funktioniert weil die Spannung zu sehr schwankt, meistens oder immer sind es die (Schalt-)Spannungsregler wie bei Flachbildschirmen oder hier auf dem Mainboard wo die Elkos die Spannung glätten müssen, meistens funktionieren die Geräte wieder wenn man nur die defekten Elkos tauscht. Ich bestellte also irgendwann neue Kondensatoren für 9,34€ in den 2 verschiedenen Kapazitäten die offentsichtlich kaputt sind, insgesamt 24 von den langlebigsten/teuersten bei Reichelt: 14 mal <a title="RAD FR 1.000/16 :: Elko radial" href="https://secure.reichelt.de/?ARTICLE=121253">1000µF</a> und 10 mal <a title="RAD FR 1.800/10 :: Elko radial, 105°C, low ESR, RM 5,0mm" href="https://secure.reichelt.de/?ARTICLE=121247">1800µF</a>, die sind zwar etwas größer (wegen höherer Maximalspannung) aber das macht nix, wenn die Kapazitäten übereinstimmen. Nachfolgend  Bilder vor den Auslöten und nach den Einlöten der Elkos:</p>
<div id="attachment_2644" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2012/11/Vorher-c.jpg" rel="lightbox-2640"><img class="size-medium wp-image-2644 " title="Vorher-c" alt="" src="http://www.project-insanity.org/wp-content/uploads/2012/11/Vorher-c-300x225.jpg" width="300" height="225" /></a><p class="wp-caption-text">4 Elkos (braun) hab ich schon entlötet.</p></div>
<div id="attachment_2641" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2012/11/Nacher-c.jpg" rel="lightbox-2640"><img class="wp-image-2641 " title="Nacher-c" alt="" src="http://www.project-insanity.org/wp-content/uploads/2012/11/Nacher-c-300x225.jpg" width="300" height="225" /></a><p class="wp-caption-text">24 neue Elkos eingebaut, alte liegen daneben.</p></div>
<p><br style="clear: both;" /> </p>
<div id="attachment_2649" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2012/11/Vorher3-kl.jpg" rel="lightbox-2640"><img class="size-medium wp-image-2649" title="Vorher3-kl" alt="" src="http://www.project-insanity.org/wp-content/uploads/2012/11/Vorher3-kl-300x213.jpg" width="300" height="213" /></a><p class="wp-caption-text">Alte aufgeblähte Elektrolyt-Kondensatoren (gelb umkreist) müssen ersetzt werden.</p></div>
<div id="attachment_2648" class="wp-caption alignleft" style="width: 310px"><a href="http://www.project-insanity.org/wp-content/uploads/2012/11/Nacher3-kl.jpg" rel="lightbox-2640"><img class="size-medium wp-image-2648" title="Nacher3-kl" alt="" src="http://www.project-insanity.org/wp-content/uploads/2012/11/Nacher3-kl-300x213.jpg" width="300" height="213" /></a><p class="wp-caption-text">Neue langlebige (&gt;9000h) Kondensatoren von Panasonic.</p></div>
<p><br style="clear: both;" /> </p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2012/11/Vorher1.jpg" rel="lightbox-2640"><img class="alignleft size-medium wp-image-2647" title="Vorher1" alt="" src="http://www.project-insanity.org/wp-content/uploads/2012/11/Vorher1-300x225.jpg" width="300" height="225" /></a></p>
<p><a href="http://www.project-insanity.org/wp-content/uploads/2012/11/Nacher1.jpg" rel="lightbox-2640"><img class="size-medium wp-image-2642" title="Nacher1" alt="" src="http://www.project-insanity.org/wp-content/uploads/2012/11/Nacher1-300x225.jpg" width="300" height="225" /></a></p>
<p><br style="clear: both;" /> </p>
<p>&nbsp;</p>
<p>Das Mainboard ist ein <a href="http://msi.com/product/mb/K9A2VM-FD.html#/?div=Detail">MS-7501, K9A2VM-FD</a> mit einer <a title="AMD Athlon 64 X2 5200+" href="http://www.cpu-world.com/CPUs/K8/AMD-Athlon%2064%20X2%205200%2B%20-%20ADO5200IAA5DO%20%28ADO5200DOBOX%29.html">AMD Athlon 64 X2 5200+</a> CPU <img src='http://www.project-insanity.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>An ein 430W PC-Netzteil angeschlossen, welches ein Freund auch vom Schrott hat, und nachdem ich den richtigen Stecker für den Power-Taster gefunden habe, rennt das Motherboard mit Puppy-Linux <img src='http://www.project-insanity.org/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' />  es funktioniert! Nun kommt es in ein PC-Gehäuse rein.</p>
<p><strong>Update</strong> (13.12.12): Auch nach einen Monat im alltäglichen Gebrauch rennt das Motherboard.</p>
<p>Siehe auch das Video: <a title="Youtube: EEVblog #347 - Bad Cap LCD Monitor Repair" href="https://www.youtube.com/watch?v=Ytw57212X2o">EEVblog #347 &#8211; Bad Cap LCD Monitor Repair </a></p>
 <p><a href="http://www.project-insanity.org/?flattrss_redirect&amp;id=2640&amp;md5=6b2f56f97d66eace237e1f75273e1127" title="Flattr" target="_blank"><img src="http://pi.vpn/pub/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.project-insanity.org/2012/11/mainboard-elkos-tauschen/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=8801&amp;popout=1&amp;url=http%3A%2F%2Fwww.project-insanity.org%2F2012%2F11%2Fmainboard-elkos-tauschen%2F&amp;language=de_DE&amp;category=text&amp;title=Mainboard+Elkos+tauschen&amp;description=Hab+im+Schrott+ein+Mainboard+gefunden+welches+nicht+so+veraltet+aussah+%28f%C3%BCr+mich%29+da+es+4%C2%A0SATA+Ports+und+ein+AMD+Prozessor+hat%2C+also+nahm+ich+das+Motherboard+mit+nachause.%C2%A0+Dort...&amp;tags=Elektronik%2CHardware%2Cblog" type="text/html" />
	</item>
		<item>
		<title>Fonera &#8211; Störerhaftfreier Freifunk</title>
		<link>http://www.project-insanity.org/2012/10/fonera-storerhaftfreier-freifunk/</link>
		<comments>http://www.project-insanity.org/2012/10/fonera-storerhaftfreier-freifunk/#comments</comments>
		<pubDate>Sat, 27 Oct 2012 01:47:21 +0000</pubDate>
		<dc:creator>onny</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software/ Coding]]></category>
		<category><![CDATA[flashing]]></category>
		<category><![CDATA[freifunk]]></category>
		<category><![CDATA[ivacy]]></category>
		<category><![CDATA[openwrt]]></category>
		<category><![CDATA[pptp]]></category>
		<category><![CDATA[Routing]]></category>
		<category><![CDATA[störerhaftung]]></category>

		<guid isPermaLink="false">http://www.project-insanity.org/?p=2522</guid>
		<description><![CDATA[Mein Fonera 2100 ist leider zu alt für neuere OpenWRT-Versionen (Backfire, Attitude_Adjustment) und damit auch nicht besonders gut geeignet für Mesh-Experimente. Dennoch wollte Ich unbedingt ein Freifunk-AP in Karlsruhe aufmachen, der ein unverschlüsseltes WLAN bereitstellt (SSID: ka.freifunk.net) und allen Traffic durch einen VPN tunnelt. Der VPN-Anbieter ist in diesem Fall Ivacy.com. Das Tunneln ist insofern [...]]]></description>
				<content:encoded><![CDATA[<p>Mein Fonera 2100 ist leider zu alt für neuere OpenWRT-Versionen (Backfire, Attitude_Adjustment) und damit auch nicht besonders gut geeignet für <a href="http://open-mesh.org" target=new>Mesh-Experimente</a>. Dennoch wollte Ich unbedingt ein Freifunk-AP in Karlsruhe aufmachen, der ein unverschlüsseltes WLAN bereitstellt (SSID: ka.freifunk.net) und allen Traffic durch einen VPN tunnelt. Der VPN-Anbieter ist in diesem Fall <a href="http://ivacy.com" target="new">Ivacy.com</a>. Das Tunneln ist insofern wichtig, da man sich aufgrund einer <a href="http://de.wikipedia.org/wiki/St%C3%B6rerhaftung" target=new>unschönen Gesetzeslage</a> als Betreiber <a href="http://freifunkstattangst.de/" target=new>strafbar macht</a> für das Handeln siner &#8220;Kunden&#8221;.<br />
Nach sehr langem ausprobieren und rumbasteln ist das Setup, wenn auch nicht perfekt, einsatzbereit!</p>
<h1>1. Fonera &#8220;jailbreaken&#8221;</h1>
<p>Dazu gibt es schon einige Anleitungen im Netz, z.B. <a href="http://romain.novalan.fr/wiki/Flash_Fonera_2100_with_OpenWrt_by_console_port_and_redboot" target=new>diese hier</a>. Im Prinzip braucht man dazu einen USB-Serial-Adapter, wobei Ich den günstigen cp210x empfehlen kann (siehe Ebay, ~2€). Die RX/TX-Pins verbindet man mit den JTAG-Ports des Foneras. Mit z.B. minicom öffnet man die serielle Verbindung zum Gerät, nachdem man dieses gestartet hat und Konfiguriert den RedBoot-Bootloader so, dass dieser auch Images auf einer bestimmten IP-Adresse während des Startvorgangs entgegennimmt.</p>
<h1>2. OpenWRT flashen</h1>
<p>Zum flashen von OpenWRT auf dem Fonera benötigen wir zuerst die für dieses Gerät passenden und empfohlenen Images (Version: 8.09.2 Kamikaze) und das Programm <a href="http://www.gargoyle-router.com/download.php" target=new>fon-flash</a>. Das Fonera wird direkt via. Ethernet angeschlossen und nach dem ausführen von fon-flash (das nach dem Fonera &#8220;sucht&#8221;) angeschalten:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ <span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>downloads.openwrt.org<span style="color: #000000; font-weight: bold;">/</span>kamikaze<span style="color: #000000; font-weight: bold;">/</span>8.09.2<span style="color: #000000; font-weight: bold;">/</span>atheros<span style="color: #000000; font-weight: bold;">/</span>openwrt-atheros-root.jffs2-64k<br />
$ <span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>downloads.openwrt.org<span style="color: #000000; font-weight: bold;">/</span>kamikaze<span style="color: #000000; font-weight: bold;">/</span>8.09.2<span style="color: #000000; font-weight: bold;">/</span>atheros<span style="color: #000000; font-weight: bold;">/</span>openwrt-atheros-vmlinux.lzma<br />
$ yaourt <span style="color: #660033;">-S</span> fon-flash<br />
$ <span style="color: #c20cb9; font-weight: bold;">sudo</span> fon-flash <span style="color: #660033;">-i</span> eth0 <span style="color: #660033;">-c</span> openwrt openwrt-atheros-root.squashfs openwrt-atheros-vmlinux.lzma<br />
$ <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">ifconfig</span> eth0 192.168.1.23 up</div></td></tr></tbody></table></div>
<h1>3. Programme installieren</h1>
<p>Sobald das Gerät geflasht und neugestartet ist, kann man sich mit Telnet darauf verbinden und mit dem Befehl passwd ein Passwort setzen. Als nächstes benötigt man eine Internet-Verbindung in OpenWRT um wichtige Packete zu beziehen. Am einfachsten geht das über eine eingerichtete WLAN-Verbindung mit Hilfe des Web-Interfaces.<br />
In einer SSH-Verbindung, führt man dann folgende Befehle aus:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">opkg update<br />
opkg <span style="color: #c20cb9; font-weight: bold;">install</span> pptp kmod_mppe</div></td></tr></tbody></table></div>
<p>Nach der Installation des Kernel-Moduls, sollte man den Router neustarten.</p>
<h1>4. &#8220;Freifunk&#8221; konfigurieren</h1>
<p>Die Grundidee ist: Internet wird vom <b>WAN</b> (Ethernet-Port des Foneras) bereitgestellt, also der LAN-Port mit z.B. dem DSL-Router verkabelt. Das <b>WLAN</b>-Netzwerk stellt ein eigenes, vom WAN-Port unabhängiges Subnet bereit (192.168.1.0/24) und für WLAN-Clients werden dort auch IP-Adressen verteilt. Prinzipiell wird WIFI->WAN weitergeleitet (forward), jedoch ist für WAN keine Standard-Route gesetzt (default gateway) und erst der das zusätzlich konfigurierte <b>PPTP</b>-Interface erstellt dann eine Route. Somit ist für Freifunk-Teilnehmer nur eine Internet-Verbindung möglich, wenn das VPN verbunden ist <i>(yay, ein wenig dirty der workaround)</i>.<br />
Angepasst werden müssen die Zugangsdaten für das PPTP und die statische IP am WAN-Port. OpenVPN konnte Ich leider nicht als alternative zu PPTP verwenden, da die Version bei OpenWRT Kamikaze zu alt und inkompatibel war.</p>
<li><b>/etc/config/wireless</b>:
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">package <span style="color: #ff0000;">'wireless'</span><br />
<br />
config <span style="color: #ff0000;">'wifi-device'</span> <span style="color: #ff0000;">'wifi0'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'type'</span> <span style="color: #ff0000;">'atheros'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'channel'</span> <span style="color: #ff0000;">'auto'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'disabled'</span> <span style="color: #ff0000;">'0'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'diversity'</span> <span style="color: #ff0000;">'0'</span><br />
<br />
config <span style="color: #ff0000;">'wifi-iface'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'device'</span> <span style="color: #ff0000;">'wifi0'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'mode'</span> <span style="color: #ff0000;">'ap'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'ssid'</span> <span style="color: #ff0000;">'ka.freifunk.net'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'network'</span> <span style="color: #ff0000;">'freifunk'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'encryption'</span> <span style="color: #ff0000;">'none'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'isolate'</span> <span style="color: #ff0000;">'1'</span> <span style="color: #666666; font-style: italic;"># WLAN-Clients sehen sich gegenseitig nicht</span></div></td></tr></tbody></table></div>
</li>
<li><b>/etc/config/network</b>:
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">package <span style="color: #ff0000;">'network'</span><br />
<br />
config <span style="color: #ff0000;">'interface'</span> <span style="color: #ff0000;">'loopback'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'ifname'</span> <span style="color: #ff0000;">'lo'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'proto'</span> <span style="color: #ff0000;">'static'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'ipaddr'</span> <span style="color: #ff0000;">'127.0.0.1'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'netmask'</span> <span style="color: #ff0000;">'255.0.0.0'</span><br />
<br />
<span style="color: #666666; font-style: italic;"># Internet-&quot;Input&quot; :)</span><br />
config <span style="color: #ff0000;">'interface'</span> <span style="color: #ff0000;">'wan'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'ifname'</span> <span style="color: #ff0000;">'eth0'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'type'</span> <span style="color: #ff0000;">'bridge'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'proto'</span> <span style="color: #ff0000;">'static'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'ipaddr'</span> <span style="color: #ff0000;">'192.168.178.3'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'netmask'</span> <span style="color: #ff0000;">'255.255.255.0'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'dns'</span> <span style="color: #ff0000;">'192.168.178.1'</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;"># Wir setzen hier absichtlich keine Route, damit</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;"># Freifunk-Clients nur über den VPN das Internet</span><br />
&nbsp; &nbsp; <span style="color: #666666; font-style: italic;"># erreichen</span><br />
<br />
config <span style="color: #ff0000;">'interface'</span> <span style="color: #ff0000;">'pptp'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'proto'</span> <span style="color: #ff0000;">'pptp'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'username'</span> <span style="color: #ff0000;">'user'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'password'</span> <span style="color: #ff0000;">'password'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'peerdns'</span> <span style="color: #ff0000;">'0'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'ifname'</span> <span style="color: #ff0000;">'ppp0'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'server'</span> <span style="color: #ff0000;">'213.229.84.200'</span> <span style="color: #666666; font-style: italic;"># pptp-uk.ivacy.com</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'mtu'</span> <span style="color: #ff0000;">'1400'</span> <span style="color: #666666; font-style: italic;"># Extrem wichtig, damit überhaupt Traffic durchgeht :/</span><br />
<br />
<span style="color: #666666; font-style: italic;"># Eigenes Subnet fürs WLAN-Freifunk-Netzwerk</span><br />
config <span style="color: #ff0000;">'interface'</span> <span style="color: #ff0000;">'freifunk'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'proto'</span> <span style="color: #ff0000;">'static'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'ipaddr'</span> <span style="color: #ff0000;">'192.168.1.1'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'netmask'</span> <span style="color: #ff0000;">'255.255.255.0'</span><br />
<br />
<span style="color: #666666; font-style: italic;"># Wir &quot;verraten&quot; dem VPN unseren Gateway, damit dieser sich verbinden kann</span><br />
config <span style="color: #ff0000;">'route'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'interface'</span> <span style="color: #ff0000;">'wan'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'target'</span> <span style="color: #ff0000;">'213.229.84.200'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'gateway'</span> <span style="color: #ff0000;">'192.168.178.1'</span></div></td></tr></tbody></table></div>
</li>
<li><b>/etc/config/firewall</b>:
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br />47<br />48<br />49<br />50<br />51<br />52<br />53<br />54<br />55<br />56<br />57<br />58<br />59<br />60<br />61<br />62<br />63<br />64<br />65<br />66<br />67<br />68<br />69<br />70<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">package <span style="color: #ff0000;">'firewall'</span><br />
<br />
config <span style="color: #ff0000;">'defaults'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'syn_flood'</span> <span style="color: #ff0000;">'1'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'input'</span> <span style="color: #ff0000;">'ACCEPT'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'output'</span> <span style="color: #ff0000;">'ACCEPT'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'forward'</span> <span style="color: #ff0000;">'REJECT'</span><br />
<br />
config <span style="color: #ff0000;">'zone'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'name'</span> <span style="color: #ff0000;">'wan'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'network'</span> <span style="color: #ff0000;">'wan pptp'</span> <span style="color: #666666; font-style: italic;"># VPN Netzwerk hinzufügen</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'input'</span> <span style="color: #ff0000;">'REJECT'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'output'</span> <span style="color: #ff0000;">'ACCEPT'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'forward'</span> <span style="color: #ff0000;">'REJECT'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'masq'</span> <span style="color: #ff0000;">'1'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'mtu_fix'</span> <span style="color: #ff0000;">'1'</span><br />
<br />
config <span style="color: #ff0000;">'rule'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'src'</span> <span style="color: #ff0000;">'wan'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'proto'</span> <span style="color: #ff0000;">'udp'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'dest_port'</span> <span style="color: #ff0000;">'68'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'target'</span> <span style="color: #ff0000;">'ACCEPT'</span><br />
<br />
config <span style="color: #ff0000;">'include'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'path'</span> <span style="color: #ff0000;">'/etc/firewall.user'</span><br />
<br />
config <span style="color: #ff0000;">'zone'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'name'</span> <span style="color: #ff0000;">'freifunk'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'input'</span> <span style="color: #ff0000;">'REJECT'</span> <span style="color: #666666; font-style: italic;"># LuCI und SSH geblockt für Wifi-Clients</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'forward'</span> <span style="color: #ff0000;">'REJECT'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'output'</span> <span style="color: #ff0000;">'ACCEPT'</span><br />
<br />
<span style="color: #666666; font-style: italic;"># Zugriff aufs lokale Netzwerk unterbinden</span><br />
config <span style="color: #ff0000;">'rule'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'src'</span> <span style="color: #ff0000;">'freifunk'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'dest'</span> <span style="color: #ff0000;">'wan'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'proto'</span> <span style="color: #ff0000;">'all'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'dest_ip'</span> <span style="color: #ff0000;">'192.168.178.0/24'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'target'</span> <span style="color: #ff0000;">'DROP'</span><br />
<br />
<span style="color: #666666; font-style: italic;"># Internetzugriff fürs Freifunk-Netzwerk</span><br />
config <span style="color: #ff0000;">'forwarding'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'src'</span> <span style="color: #ff0000;">'freifunk'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'dest'</span> <span style="color: #ff0000;">'wan'</span><br />
<br />
config <span style="color: #ff0000;">'rule'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'src'</span> <span style="color: #ff0000;">'freifunk'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'dest_port'</span> <span style="color: #ff0000;">'53'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'proto'</span> <span style="color: #ff0000;">'tcpudp'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'target'</span> <span style="color: #ff0000;">'ACCEPT'</span><br />
<br />
config <span style="color: #ff0000;">'rule'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'src'</span> <span style="color: #ff0000;">'freifunk'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'src_port'</span> <span style="color: #ff0000;">'67-68'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'dest_port'</span> <span style="color: #ff0000;">'67-68'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'proto'</span> <span style="color: #ff0000;">'udp'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'target'</span> <span style="color: #ff0000;">'ACCEPT'</span><br />
<br />
<span style="color: #666666; font-style: italic;"># SSH und Web-Zugriff von WAN aus erlauben:</span><br />
config <span style="color: #ff0000;">'rule'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'src'</span> <span style="color: #ff0000;">'wan'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'proto'</span> <span style="color: #ff0000;">'tcp'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'dest_port'</span> <span style="color: #ff0000;">'22'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'target'</span> <span style="color: #ff0000;">'ACCEPT'</span><br />
<br />
config <span style="color: #ff0000;">'rule'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'src'</span> <span style="color: #ff0000;">'wan'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'proto'</span> <span style="color: #ff0000;">'tcp'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'dest_port'</span> <span style="color: #ff0000;">'80'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'target'</span> <span style="color: #ff0000;">'ACCEPT'</span></div></td></tr></tbody></table></div>
</li>
<li><b>/etc/ppp/options</b>:
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">#debug</span><br />
noauth<br />
logfile <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>null<br />
noaccomp<br />
nopcomp<br />
nocrtscts<br />
lock<br />
maxfail <span style="color: #000000;">0</span><br />
lcp-echo-failure <span style="color: #000000;">10</span><br />
lcp-echo-interval <span style="color: #000000;">1</span><br />
mppe required,stateless<br />
require-mschap-v2<br />
<span style="color: #666666; font-style: italic;">#refuse-chap</span><br />
<span style="color: #666666; font-style: italic;">#refuse-mschap</span><br />
<span style="color: #666666; font-style: italic;">#refuse-eap</span><br />
<span style="color: #666666; font-style: italic;">#refuse-pap</span><br />
nobsdcomp<br />
nodeflate<br />
idle <span style="color: #000000;">0</span></div></td></tr></tbody></table></div>
</li>
<li><b>/etc/init.d/pptp</b>:
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">#!/bin/sh /etc/rc.common</span><br />
<span style="color: #666666; font-style: italic;"># Copyright (C) 2006 OpenWrt.org</span><br />
<span style="color: #007800;">START</span>=70<br />
<span style="color: #007800;">STOP</span>=<span style="color: #000000;">30</span><br />
updown_pptp_interface <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; config_get proto <span style="color: #ff0000;">&quot;$1&quot;</span> proto<br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span> <span style="color: #7a0874; font-weight: bold;">&#91;</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$proto</span>&quot;</span> = <span style="color: #ff0000;">&quot;pptp&quot;</span> <span style="color: #7a0874; font-weight: bold;">&#93;</span>; <span style="color: #000000; font-weight: bold;">then</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">if</span>$<span style="color: #000000;">2</span> <span style="color: #ff0000;">&quot;$1&quot;</span> &nbsp; &nbsp; &nbsp; <br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">fi</span><br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span><br />
boot <span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; config_load network<br />
&nbsp; &nbsp; &nbsp; &nbsp; config_foreach updown_pptp_interface interface up<br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span><br />
start<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; config_load network<br />
&nbsp; &nbsp; &nbsp; &nbsp; config_foreach updown_pptp_interface interface up<br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span><br />
restart<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; config_load network<br />
&nbsp; &nbsp; &nbsp; &nbsp; config_foreach updown_pptp_interface interface down<br />
&nbsp; &nbsp; &nbsp; &nbsp; config_foreach updown_pptp_interface interface up<br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span><br />
stop<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; config_load network<br />
&nbsp; &nbsp; &nbsp; &nbsp; config_foreach updown_pptp_interface interface down<br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span></div></td></tr></tbody></table></div>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ <span style="color: #c20cb9; font-weight: bold;">chmod</span> +x <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>pptp<br />
$ <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>pptp <span style="color: #7a0874; font-weight: bold;">enable</span> <span style="color: #666666; font-style: italic;"># PPTP-Verbindung automatisch mit Systemstart ausführen</span></div></td></tr></tbody></table></div>
</li>
<li><b>/etc/config/dhcp</b>:
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">package <span style="color: #ff0000;">'dhcp'</span><br />
<br />
config <span style="color: #ff0000;">'dnsmasq'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'domainneeded'</span> <span style="color: #ff0000;">'1'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'boguspriv'</span> <span style="color: #ff0000;">'1'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'filterwin2k'</span> <span style="color: #ff0000;">'0'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'localise_queries'</span> <span style="color: #ff0000;">'1'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'local'</span> <span style="color: #ff0000;">'/lan/'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'domain'</span> <span style="color: #ff0000;">'lan'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'expandhosts'</span> <span style="color: #ff0000;">'1'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'nonegcache'</span> <span style="color: #ff0000;">'0'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'authoritative'</span> <span style="color: #ff0000;">'1'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'readethers'</span> <span style="color: #ff0000;">'1'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'leasefile'</span> <span style="color: #ff0000;">'/tmp/dhcp.leases'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'resolvfile'</span> <span style="color: #ff0000;">'/tmp/resolv.conf.auto'</span><br />
<br />
<span style="color: #666666; font-style: italic;"># Dhcp-Server fürs Freifunk-Netzwerk aktivieren.</span><br />
config <span style="color: #ff0000;">'dhcp'</span> <span style="color: #ff0000;">'lan'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'start'</span> <span style="color: #ff0000;">'100'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'limit'</span> <span style="color: #ff0000;">'150'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'leasetime'</span> <span style="color: #ff0000;">'12h'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'interface'</span> <span style="color: #ff0000;">'freifunk'</span><br />
<br />
config <span style="color: #ff0000;">'dhcp'</span> <span style="color: #ff0000;">'wan'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'interface'</span> <span style="color: #ff0000;">'wan'</span><br />
&nbsp; &nbsp; option <span style="color: #ff0000;">'ignore'</span> <span style="color: #ff0000;">'1'</span></div></td></tr></tbody></table></div>
</li>
<h1>Tipps und Tricks:</h1>
<li>Das VPN lässt sich starten/stoppen via Terminal mit folgendem Befehl:
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ ifup pptp <span style="color: #666666; font-style: italic;"># Starten</span><br />
$ ifdown pptp <span style="color: #666666; font-style: italic;"># Stoppen</span></div></td></tr></tbody></table></div>
</li>
<li>VPN-Verbindung via. Befehl in Terminal aufbauen:
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ pptp 123.123.123.123 user me<span style="color: #000000; font-weight: bold;">@</span>my.com password mypassword noauth lock debug</div></td></tr></tbody></table></div>
</li>
 <p><a href="http://www.project-insanity.org/?flattrss_redirect&amp;id=2522&amp;md5=937601ff05694204b9ef58bf1f9a0a53" title="Flattr" target="_blank"><img src="http://pi.vpn/pub/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.project-insanity.org/2012/10/fonera-storerhaftfreier-freifunk/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=8801&amp;popout=1&amp;url=http%3A%2F%2Fwww.project-insanity.org%2F2012%2F10%2Ffonera-storerhaftfreier-freifunk%2F&amp;language=de_DE&amp;category=text&amp;title=Fonera+%26%238211%3B+St%C3%B6rerhaftfreier+Freifunk&amp;description=Mein+Fonera+2100+ist+leider+zu+alt+f%C3%BCr+neuere+OpenWRT-Versionen+%28Backfire%2C+Attitude_Adjustment%29+und+damit+auch+nicht+besonders+gut+geeignet+f%C3%BCr+Mesh-Experimente.+Dennoch+wollte+Ich+unbedingt+ein+Freifunk-AP+in+Karlsruhe+aufmachen%2C...&amp;tags=flashing%2Cfreifunk%2Civacy%2Copenwrt%2Cpptp%2CRouting%2Cst%C3%B6rerhaftung%2Cblog" type="text/html" />
	</item>
		<item>
		<title>ArchLinux Touchscreen-CarPC mit XBMC-Frontend</title>
		<link>http://www.project-insanity.org/2012/10/archlinux-touchscreen-carpc-mit-xbmc-frontend/</link>
		<comments>http://www.project-insanity.org/2012/10/archlinux-touchscreen-carpc-mit-xbmc-frontend/#comments</comments>
		<pubDate>Wed, 10 Oct 2012 19:20:29 +0000</pubDate>
		<dc:creator>onny</dc:creator>
				<category><![CDATA[Hardware]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software/ Coding]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[archlinux]]></category>
		<category><![CDATA[automount]]></category>
		<category><![CDATA[car-pc]]></category>
		<category><![CDATA[carpc]]></category>
		<category><![CDATA[cmos]]></category>
		<category><![CDATA[freisprechanlage]]></category>
		<category><![CDATA[gps]]></category>
		<category><![CDATA[iGO]]></category>
		<category><![CDATA[navigation]]></category>
		<category><![CDATA[navigationssoftware]]></category>
		<category><![CDATA[navit]]></category>
		<category><![CDATA[openstreetmap]]></category>
		<category><![CDATA[osm]]></category>
		<category><![CDATA[touch]]></category>
		<category><![CDATA[touchscreen]]></category>
		<category><![CDATA[windows]]></category>
		<category><![CDATA[wireless]]></category>
		<category><![CDATA[xbmc]]></category>

		<guid isPermaLink="false">http://pi.vpn/pub/?p=1482</guid>
		<description><![CDATA[Hardware setup Die Idee hinter der Hardware des CarPCs war, das Ganze möglichst kostengünstig mit bereits vorhandenen Teilen zu realisieren. Deshalb sind einige der Komponenten nicht wirklich optimal. Außerdem hatte ich mir zum Motto gemacht im Zweifelsfall die Dinge lieber selbst zusammenzubasteln als etwas fertiges zu kaufen. Der Rechner selbst ist ein ASUS EeePC 1000H [...]]]></description>
				<content:encoded><![CDATA[<h1>Hardware setup</h1>
<p><a href="http://project-insanity.org/wp-content/uploads/2011/12/IMAG0069.jpg" rel="lightbox-1482"><img class="alignleft size-medium wp-image-1689" title="IMAG0069" src="http://project-insanity.org/wp-content/uploads/2011/12/IMAG0069-225x300.jpg" alt="" width="225" height="300" /></a>Die Idee hinter der Hardware des CarPCs war, das Ganze möglichst kostengünstig mit bereits vorhandenen Teilen zu realisieren. Deshalb sind einige der Komponenten nicht wirklich optimal. Außerdem hatte ich mir zum Motto gemacht im Zweifelsfall die Dinge lieber selbst zusammenzubasteln als etwas fertiges zu kaufen.</p>
<p>Der Rechner selbst ist ein <a href="http://eeepc.asus.com/au/product1000h-spec.html" target="_blank">ASUS EeePC 1000H</a> der wegen eines gesprungenen Display ausgemustert wurde. Um im Auto selbst Platz zu sparen wurde lediglich die Hauptplatine mit der Festplatte eingebaut. Die 160GB Festplatte ist mit SATA direkt auf der Platine angeschlossen und mit Heißkleb fixiert. Zur Kühlung des Netbooks wurde entfernt und durch eine Metallplatte, die auf dem Prozessor (Intel Atom) und dem Chipsatz der Motherboards aufliegt, ersetzt.</p>
<p>Das Auto in dem der CarPC verbaut wird ist ein Nissan Primera. Hier gibt es ein kleines, flaches Fach unter dem Lenkrad, in das die Platine hinein passt. Lediglich für die Stecker die rund um die Platine eingesteckt werden benötigen mehr Platz. <a href="http://project-insanity.org/wp-content/uploads/2011/12/IMAG0481.jpg" rel="lightbox-1482"><img class="alignright size-medium wp-image-1706" title="IMAG0481" src="http://project-insanity.org/wp-content/uploads/2011/12/IMAG0481-300x225.jpg" alt="" width="350" height="250" /></a>In dem Plastik oberhalb des Fachs wurde zusätzlich ein kleiner Lüfter angebracht der die Luft über der Kühlungsmetallplatte in Bewegung hält. Die Kühlung ist auch ohne Kühlrippen ausreichend, das die Wärmeentwicklung so gering ist.</p>
<p>Die Stromversorgung gestaltete sich relativ kompliziert, da der EeePC zwar 12 V Eingangsspannung braucht aber die Spannung des Bordnetzes im Auto zu stark schwankt und der Rechner früher oder später ausgeht. Außerdem stellt sich das Problem wie starke Spannungsabfälle, wie etwa beim Anlassen des Motors, abgefangen werden, damit der Rechner weiterläuft. Ein handelsübliches ATX-Netzteil für den Autobetrieb kann an den EeePC nicht angeschlossen werden und der Originalakku ist auch nicht mehr vorhanden. Für einen eventuellen Neu- oder Nachbau des CarPCs ist hier wahrscheinlich das größte Verbesserungspotential vorhanden.<br />
Letztendlich wird der Rechner von einem KFZ-Netzteil für Laptops mit konstanter 12V Spannung versorgt<br />
Zur Überbrückung von Spannungeinbrüchen wurde zusätzlich ein kleiner 12V Bleiakku mit 3.4 Ah verbaut und mit einer Diode der Stromrückfluss ins Bordnetz verhindert.</p>
<p>Der Plan ist mit einem Microcontroller noch ein automatisches Zuschalten des zusätzlichen Akkus sowie das An-/Abschalten der Rechners mit Drehen des Zündschlüsseln zu verwirklichen.</p>
<p><a href="http://project-insanity.org/wp-content/uploads/2011/12/IMAG0068.jpg" rel="lightbox-1482"><img class="alignleft size-thumbnail wp-image-1688" style="margin-right: 15px;" title="IMAG0068" src="http://project-insanity.org/wp-content/uploads/2011/12/IMAG0068-150x150.jpg" alt="" width="200" height="200" /></a>Angeschlossen an der Rechner sind:</p>
<ul>
<li>1x Line-Out (Klinke) zum Radio</li>
<li>1x USB Hub im vorderen Bereich des Autos</li>
<li>1x USB Hub im Kofferraum</li>
<li>1x USB für Touchscreen</li>
<li>1x VGA für Touchscreen</li>
</ul>
<p>Der Bildschirm ist ein resistiver 8&#8243; Touchscreen (lsusb -&gt; Bus 003 Device 006: ID 0eef:0001 D-WAV Scientific Co., Ltd eGalax TouchScreen) mit einer nativen Auflösung von 1024&#215;768 Pixeln. Eingelassen ist er in die Mittelconsole etwa auf Lenkrad Höhe. Für den Einbau des Touchscreens wurde das Radio nach unten in die Nähe des Schaltknüppels verschoben und die Lüftungsgitter wurden entfernt.</p>
<p>An den USB-Hub im Kofferaum ist ein GPS-Empfänger angeschlossen, der direkt unter der Heckscheibe befestigt und somit nicht durch die Karosserie behindert wird.</p>
<h1>Software setup</h1>
<p>Die Softwarebasis des CarPCs stellt eine unveränderte x86-<a href="http://www.archlinux.org" target="_blank">ArchLinux Distribution</a> dar, die nur &#8220;Core&#8221;-Software bereitstellt, also keine graphische Oberfläche oder unerwünschte, im Hintergrund laufende Daemons die garnicht benötigt werden. Das &#8220;Minimal&#8221;-Betriebssystem ist besonders praktisch, um eine sehr anpassungsfähige, von der Konfiguration nachvollziehbare und performance-orientierte Architektur unterhalb des eigentlichen <a href="http://www.xbmc.org">XBMC</a>-Frontends zu garantieren. Dieses Tutorial setzt eine mit Standarteinstellungen <a href="https://wiki.archlinux.org/index.php/Beginners%27_Guide" target="_blank">installierte ArchLinux-Version</a> (linux&gt;3.5,xbmc=11,xorg-server&gt;1.12,<a href="https://wiki.archlinux.org/index.php/Systemd" target=new>systemd</a>) voraus, auf <a href="https://wiki.archlinux.org/index.php/Installation_Guide<br />
" target=new>dessen Installation</a> hier aber nicht wieter eingegangen wird.</p>
<p>Wurde das Betriebssystem erfolgreich installiert, über LAN mit dem Internet verbunden und ist nach dem Root-Login einsatzbereit, kann die Konfiguration des Betriebssystems vorgenommen werden.</p>
<h2>Netzwerk einrichten, Packetquellen einstellen</h2>
<p>Mit einen der folgenden Befehle werden die Netzwerkeinstellungen gesetzt (entweder automatisch oder manuell) und danach extra Paketquellen in der Konfigurationsdatei des Paketmanagers hinzugefügt, indem vor der &#8220;[Extra]&#8220;- und der darunterstehenden &#8220;Include&#8221;-Zeile die &#8220;#&#8221;-Kommentarzeichen entfernt werden:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ dhclient eth0<br />
$ <span style="color: #c20cb9; font-weight: bold;">ifconfig</span> eth0 <span style="color: #ff0000;">&quot;IP&quot;</span> up <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> route add default gw <span style="color: #ff0000;">&quot;IP des Gateways&quot;</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">sh</span> <span style="color: #660033;">-c</span> <span style="color: #ff0000;">&quot;echo &quot;</span>nameserver 8.8.8.8<span style="color: #ff0000;">&quot; &gt; /etc/resolv.conf&quot;</span><br />
$ <span style="color: #c20cb9; font-weight: bold;">vi</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>pacman.conf</div></td></tr></tbody></table></div>
<p>Darauf hin können alle Software-Pakete heruntergeladen und installiert werden, darunter unter anderem:</p>
<ul>
<li>Video-Treiber und X-Server (Touchtreiber: xf86-input-evdev)</li>
<li>GPS-Daemon und eine grafische Statussoftware für denX-Server (gpsd, xgps)</li>
<li>Netzwerkmanager und Bluetooth-Daemon (wicd, bluez)</li>
<li>Audiotools und Audiocodecs (alsa-utils, libvorbis)</li>
<li>Xbmc-Mediacenter</li>
<li>Automount-Programm (udevils, beinhaltet devmon)</li>
</ul>
<p>Der Pacman-Wrapper Yaourt wird benötigt um zusätzliche Programme aus dem &#8220;Arch User Repository&#8221; (AUR) herunterzuladen, unter anderem:</p>
<ul>
<li>Das freie Navigationssystem Navit und für Windows Navigationsprogramme die Laufzeitumgebung Wine</li>
<li>ein Touchscreen-Kalibrierungsprogramm (xinput_calibrator)</li>
<li>ein Benachrichtigungsprogramm für ein mit Android betriebenes Smartphone (android-notifier-desktop)</li>
<li>und ein Freisprechgateway/eine Bluetooth Handsfree-Software namens hfpforlinux</li>
</ul>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ pacman <span style="color: #660033;">-Syu</span> wicd libvorbis <span style="color: #c20cb9; font-weight: bold;">sudo</span> rfkill xbmc xorg-server xorg-xinit alsa-utils\<br />
base-devel xf86-input-evdev xf86-video-intel xorg-utils xorg-server-utils bluez wine x11vnc tightvnc udevil xorg-server-xvfb udisks<br />
<span style="color: #666666; font-style: italic;"># gpsd xgps</span><br />
$ <span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>aur.archlinux.org<span style="color: #000000; font-weight: bold;">/</span>packages<span style="color: #000000; font-weight: bold;">/</span>package-query<span style="color: #000000; font-weight: bold;">/</span>package-query.tar.gz<br />
$ <span style="color: #c20cb9; font-weight: bold;">tar</span> zxvf package-query.tar.gz<br />
$ <span style="color: #7a0874; font-weight: bold;">cd</span> package-query<br />
$ makepkg <span style="color: #660033;">-si</span><br />
$ <span style="color: #7a0874; font-weight: bold;">cd</span> ..<br />
$ <span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>aur.archlinux.org<span style="color: #000000; font-weight: bold;">/</span>packages<span style="color: #000000; font-weight: bold;">/</span>yaourt<span style="color: #000000; font-weight: bold;">/</span>yaourt.tar.gz<br />
$ <span style="color: #c20cb9; font-weight: bold;">tar</span> zxvf yaourt.tar.gz<br />
$ <span style="color: #7a0874; font-weight: bold;">cd</span> yaourt<br />
$ makepkg <span style="color: #660033;">-si</span><br />
$ <span style="color: #7a0874; font-weight: bold;">cd</span> ..<br />
$ <span style="color: #c20cb9; font-weight: bold;">rm</span> <span style="color: #660033;">-r</span> yaourt<span style="color: #000000; font-weight: bold;">*</span> package-query<span style="color: #000000; font-weight: bold;">*</span><br />
$ yaourt <span style="color: #660033;">-S</span> navit xinput_calibrator android-notifier-desktop hfpforlinux</div></td></tr></tbody></table></div>
<h2>Benutzer erstellen, Zugriffsrechte erstellen</h2>
<p>Jetzt wird ein normaler Benutzer ohne administrative Rechte erstellt (der auch Xbmc ausführen soll) und zusätzlich in die sudoers-Datei eingetragen, um bei bedarf wieder &#8220;Superuser&#8221;-Rechte zu bekommen. Eine Anleitung für ein Autologin findet man <a href="https://wiki.archlinux.org/index.php/Automatic_login_to_virtual_console" target="_blank">hier</a>. Anmerkung: Anstatt <em>vi</em> kann auch z.B. <em>nano</em> als Editor benutzt werden. <em>Vim</em> muss jedoch erst mit dem Paketmanager <em>Pacman</em> installiert werden.</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ useradd carpc<br />
$ <span style="color: #000000; font-weight: bold;">for</span> x <span style="color: #000000; font-weight: bold;">in</span> audio video storage; <span style="color: #000000; font-weight: bold;">do</span> <span style="color: #c20cb9; font-weight: bold;">sudo</span> gpasswd <span style="color: #660033;">-a</span> carpc <span style="color: #007800;">$x</span>; <span style="color: #000000; font-weight: bold;">done</span><br />
$ <span style="color: #c20cb9; font-weight: bold;">vi</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>sudoers</div></td></tr></tbody></table></div>
<p>In <i>/etc/sudoers</i> nur folgende Zeile hinzufügen: (in diesem Beispiel heißt der Benutzer carpc!!)</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">carpc <span style="color: #007800;">ALL</span>=<span style="color: #7a0874; font-weight: bold;">&#40;</span>ALL<span style="color: #7a0874; font-weight: bold;">&#41;</span> ALL</div></td></tr></tbody></table></div>
<h2>XBMC und X-Server konfigurieren</h2>
<p>Mit folgenden Befehlen werden wichtige Addons für XBMC installiert (aber noch nicht aktiviert! <a href="http://wiki.xbmc.org/index.php?title=HOW-TO_install_and_use_plugins_in_XBMC" target="_blank">see</a> <a href="http://wiki.xbmc.org/index.php?title=Appearance_Settings" target="_blank">here</a>), wie z.B. ein Wicd-Frontend mit dem man sich innerhalb von XBMC mit WLAN-Netzwerken verbinden kann, sowie das eigentliche Touchscreen-Theme &#8220;carpc&#8221;:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ <span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>project-insanity.org<span style="color: #000000; font-weight: bold;">/</span>wp-content<span style="color: #000000; font-weight: bold;">/</span>uploads<span style="color: #000000; font-weight: bold;">/</span>2011<span style="color: #000000; font-weight: bold;">/</span>12<span style="color: #000000; font-weight: bold;">/</span>Script.linux_.wireless-0.0.5_offline_arch.zip<br />
$ <span style="color: #c20cb9; font-weight: bold;">unzip</span> Script.linux.wireless-0.0.5_offline_arch.zip .xbmc<span style="color: #000000; font-weight: bold;">/</span>addons<span style="color: #000000; font-weight: bold;">/</span><br />
$ <span style="color: #c20cb9; font-weight: bold;">wget</span> http:<span style="color: #000000; font-weight: bold;">//</span>onny.project-insanity.org<span style="color: #000000; font-weight: bold;">/</span>files<span style="color: #000000; font-weight: bold;">/</span>skin.carpc.tar.gz<br />
$ <span style="color: #c20cb9; font-weight: bold;">tar</span> <span style="color: #660033;">-C</span> .xbmc<span style="color: #000000; font-weight: bold;">/</span>addons <span style="color: #660033;">-xf</span> skin.carpc.tar.gz<br />
$ <span style="color: #c20cb9; font-weight: bold;">rm</span> Script.linux.wireless-0.0.5_offline_arch.zip skin.carpc.tar.gz <span style="color: #666666; font-style: italic;"># aufräumen</span></div></td></tr></tbody></table></div>
<div align="center"><a href="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-012045_1366x768_scrot.png" rel="lightbox-1482"><img class="aligncenter size-medium wp-image-1681" style="margin-left: 15px;" title="2011-12-17-012045_1366x768_scrot" src="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-012045_1366x768_scrot-300x168.png" alt="" width="300" height="168" /></a><a href="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-011847_1366x768_scrot.png" rel="lightbox-1482"><img class="aligncenter size-medium wp-image-1677" style="margin-left: 15px;" title="2011-12-17-011847_1366x768_scrot" src="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-011847_1366x768_scrot-300x168.png" alt="" width="300" height="168" /></a><a href="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-011818_1366x768_scrot.png" rel="lightbox-1482"><img class="aligncenter size-medium wp-image-1676" style="margin-left: 15px;" title="2011-12-17-011818_1366x768_scrot" src="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-011818_1366x768_scrot-300x168.png" alt="" width="300" height="168" /></a><a href="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-011910_1366x768_scrot.png" rel="lightbox-1482"><img class="aligncenter size-medium wp-image-1678" style="margin-left: 15px;" title="2011-12-17-011910_1366x768_scrot" src="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-011910_1366x768_scrot-300x168.png" alt="" width="300" height="168" /></a><a href="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-011925_1366x768_scrot.png" rel="lightbox-1482"><img class="aligncenter size-medium wp-image-1679" style="margin-left: 15px;" title="2011-12-17-011925_1366x768_scrot" src="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-011925_1366x768_scrot-300x168.png" alt="" width="300" height="168" /></a><a href="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-012012_1366x768_scrot.png" rel="lightbox-1482"><img class="aligncenter size-medium wp-image-1680" style="margin-left: 15px;" title="2011-12-17-012012_1366x768_scrot" src="http://project-insanity.org/wp-content/uploads/2011/12/2011-12-17-012012_1366x768_scrot-300x168.png" alt="" width="300" height="168" /></a></div>
<p>Die Datei .xinitrc dient dazu, Befehle nach bzw. mit dem X-Server start auf dessen aktivem Display auszuführen. Die hier aufgelisteten Befehle starten zum einen das Navigationssystem im Hintergrund via xvfb und zum anderen ein Automountscript (devmon/udevil) und XBMC. Datei <i>~/.xinitrc</i>:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #000000; font-weight: bold;">/</span>opt<span style="color: #000000; font-weight: bold;">/</span>iGO8.3_PC<br />
<span style="color: #007800;">DISPLAY</span>=:<span style="color: #000000;">99</span> wine iGO831_PC_110206.exe <span style="color: #000000; font-weight: bold;">&amp;</span> <span style="color: #666666; font-style: italic;"># Navigations-Software im Hintergrund starten</span><br />
<span style="color: #c20cb9; font-weight: bold;">xset</span> -dpms; <span style="color: #c20cb9; font-weight: bold;">xset</span> s off <span style="color: #666666; font-style: italic;"># Bildschirmsparmodus deaktivieren</span><br />
<span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">SDL_MOUSE_RELATIVE</span>=<span style="color: #000000;">0</span><br />
devmon <span style="color: #000000; font-weight: bold;">&amp;</span><br />
xbmc</div></td></tr></tbody></table></div>
<p>Folgende Service-Datei startet den X-Server automatisch (für den Benutzer <i>carpc</i>). Datei <i>/etc/systemd/system/graphical.target.wants/xinit.service</i> anlegen:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #7a0874; font-weight: bold;">&#91;</span>Unit<span style="color: #7a0874; font-weight: bold;">&#93;</span><br />
<span style="color: #007800;">Description</span>=Direct <span style="color: #c20cb9; font-weight: bold;">login</span> to X<br />
<span style="color: #007800;">After</span>=systemd-user-sessions.service<br />
<br />
<span style="color: #7a0874; font-weight: bold;">&#91;</span>Service<span style="color: #7a0874; font-weight: bold;">&#93;</span><br />
<span style="color: #007800;">ExecStart</span>=<span style="color: #000000; font-weight: bold;">/</span>bin<span style="color: #000000; font-weight: bold;">/</span><span style="color: #c20cb9; font-weight: bold;">su</span> carpc <span style="color: #660033;">-l</span> <span style="color: #660033;">-c</span> <span style="color: #ff0000;">&quot;/bin/bash --login -c xinit&quot;</span><br />
<br />
<span style="color: #7a0874; font-weight: bold;">&#91;</span>Install<span style="color: #7a0874; font-weight: bold;">&#93;</span><br />
<span style="color: #007800;">WantedBy</span>=graphical.target</div></td></tr></tbody></table></div>
<p>Für unseren Touchscreen wurde folgende Konfiguration benötigt. Die Kalibrierungswerte wurden mit dem Programm xinput_calibrator ermittelt, welches leider nach unserer Erfahrung einen Window-Manager benötigt wie Metacity um zuverlässig zu funktionieren (TTY1: export DISPLAY=:0 &amp;&amp; xinput_calibrator &amp;&amp; metacity &#8211;replace). Datei <i>/etc/X11/xorg.conf.d/10-evdev.conf</i>:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Section <span style="color: #ff0000;">&quot;InputClass&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Identifier <span style="color: #ff0000;">&quot;evdev pointer catchall&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; MatchIsPointer <span style="color: #ff0000;">&quot;on&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; MatchDevicePath <span style="color: #ff0000;">&quot;/dev/input/event*&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Driver <span style="color: #ff0000;">&quot;evdev&quot;</span><br />
EndSection<br />
<br />
Section <span style="color: #ff0000;">&quot;InputClass&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Identifier <span style="color: #ff0000;">&quot;evdev keyboard catchall&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; MatchIsKeyboard <span style="color: #ff0000;">&quot;on&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; MatchDevicePath <span style="color: #ff0000;">&quot;/dev/input/event*&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Driver <span style="color: #ff0000;">&quot;evdev&quot;</span><br />
EndSection<br />
<br />
Section <span style="color: #ff0000;">&quot;InputClass&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Identifier <span style="color: #ff0000;">&quot;evdev touchpad catchall&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; MatchIsTouchpad <span style="color: #ff0000;">&quot;on&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; MatchDevicePath <span style="color: #ff0000;">&quot;/dev/input/event*&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Driver <span style="color: #ff0000;">&quot;evdev&quot;</span><br />
EndSection<br />
<br />
Section <span style="color: #ff0000;">&quot;InputClass&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Identifier <span style="color: #ff0000;">&quot;evdev tablet catchall&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; MatchIsTablet <span style="color: #ff0000;">&quot;on&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; MatchDevicePath <span style="color: #ff0000;">&quot;/dev/input/event*&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Driver <span style="color: #ff0000;">&quot;evdev&quot;</span><br />
EndSection<br />
<br />
Section <span style="color: #ff0000;">&quot;InputClass&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Identifier <span style="color: #ff0000;">&quot;evdev touchscreen catchall&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; MatchIsTouchscreen <span style="color: #ff0000;">&quot;on&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; MatchDevicePath <span style="color: #ff0000;">&quot;/dev/input/event*&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Driver <span style="color: #ff0000;">&quot;evdev&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Option <span style="color: #ff0000;">&quot;InvertX&quot;</span> <span style="color: #ff0000;">&quot;on&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Option <span style="color: #ff0000;">&quot;InvertY&quot;</span> <span style="color: #ff0000;">&quot;on&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; Option <span style="color: #ff0000;">&quot;Calibration&quot;</span> <span style="color: #ff0000;">&quot;103 1890 157 1911&quot;</span><br />
EndSection</div></td></tr></tbody></table></div>
<h2>Navigations-Software</h2>
<p>Testweise verwenden wir hierfür die von Nav&amp;Go entwickelte Navigations-Software &#8220;iGO 8.3.1.59883 R3-Version PC&#8221;, von der es leider keine Updates mehr gibt (letzte Version vermutl. von 2008). Trotzdem ist diese unter Linux via <a href="http://winehq.org" target="_blank">Wine</a> <a href="http://appdb.winehq.org/objectManager.php?sClass=version&amp;iId=25145" target="_blank">lauffähig</a>, bietet eine hervorragende grafische Touch-Oberfläche, unterstüzt neuste Kartenformate (z.B. Maps Europa TomTom R3 (TeleAtlas)) und lässt sich auch gut in XBMC einbinden. Wine wurde schon vorher installiert, desweiteren müssen noch folgende Programme installiert werden (zum Zeitpunkt der Veröffentlichung des Beitrags, hatte winetricks noch <a href=http://code.google.com/p/winetricks/issues/detail?id=277 target=new>einen Bug bezüglich allfonts</a>):</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ yaourt <span style="color: #660033;">-S</span> wine winetricks xdotool<br />
$ winetricks allfonts<br />
$ lsusb<br />
Bus 003 Device 006: ID 067b:2303 Prolific Technology, Inc. PL2303 Serial Port<br />
$ <span style="color: #c20cb9; font-weight: bold;">ln</span> <span style="color: #660033;">-s</span> <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyUSB0 ~<span style="color: #000000; font-weight: bold;">/</span>.wine<span style="color: #000000; font-weight: bold;">/</span>dosdrives<span style="color: #000000; font-weight: bold;">/</span>com3<br />
$ <span style="color: #c20cb9; font-weight: bold;">ls</span> <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyUSB0 <span style="color: #660033;">-la</span><br />
crw-rw---- 1 root uucp 188, 0 Jan 13 02:51 <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyUSB0<br />
$ <span style="color: #c20cb9; font-weight: bold;">sudo</span> gpasswd <span style="color: #660033;">-a</span> <span style="color: #007800;">$USER</span> uucp<br />
$ <span style="color: #c20cb9; font-weight: bold;">cat</span> ~<span style="color: #000000; font-weight: bold;">/</span>.wine<span style="color: #000000; font-weight: bold;">/</span>dosdrives<span style="color: #000000; font-weight: bold;">/</span>com3 <span style="color: #666666; font-style: italic;"># als user testen, ob gps-stream ankommt</span></div></td></tr></tbody></table></div>
<p>Der Befehl <em>lsusb</em> zeigt das GPS-Device an, hier nur in Form eines USB-Serial-Wandlers. Desweiteren sollte auch ein ttyUSB0-Interface auftauchen, für das mittels gpasswd der User leserechte erhält (alternativ kann dies auch mit <a href="http://members.chello.pl/t.plataprzechlewski/blog/fc15-4.html" target="_blank">udev-rules</a> bewerkstelligt werden). Für die Windows-Anwendung iGO wird dieses Interface als virtuelle Schnittstelle in den dosdrives Ordner gesymlinkt. Welche Port-Nummer hierbei das Gerät hat ist irrelevant, solange iGO dieses noch automatisch finden kann (also ca. com1-com6). Mit <em>cat</em> lässt sich nun der GPS-NMEA Stream anschauen, der im roh-format die aktuelle Position beinhaltet.<br />
Die Baudrate des angeschlossenen GPS-Devices lässt sich mit <em>stty</em> ermitteln, falls man diese manuell später in iGO festlegen möchte:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">stty</span> <span style="color: #660033;">-F</span> <span style="color: #000000; font-weight: bold;">/</span>dev<span style="color: #000000; font-weight: bold;">/</span>ttyUSB0<br />
&nbsp;speed 9600 baud; line = <span style="color: #000000;">0</span>;<br />
&nbsp;<span style="color: #660033;">-brkint</span> <span style="color: #660033;">-imaxbel</span></div></td></tr></tbody></table></div>
<p>In <i>~/.wine/user.reg</i> müssen noch folgende zwei Zeilen hinzugefügt werden, um das Wine-Systray zu deaktivieren:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #660033;">-e</span> <span style="color: #ff0000;">&quot;[Software\\Wine\\X11 Driver] 4294967295<span style="color: #000099; font-weight: bold;">\n</span> <span style="color: #000099; font-weight: bold;">\&quot;</span>ShowSystray<span style="color: #000099; font-weight: bold;">\&quot;</span>=<span style="color: #000099; font-weight: bold;">\&quot;</span>False<span style="color: #000099; font-weight: bold;">\&quot;</span>&quot;</span> <span style="color: #000000; font-weight: bold;">&gt;&gt;</span> ~<span style="color: #000000; font-weight: bold;">/</span>.wine<span style="color: #000000; font-weight: bold;">/</span>user.reg<br />
$ <span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">chown</span> <span style="color: #660033;">-R</span> <span style="color: #007800;">$USER</span> <span style="color: #000000; font-weight: bold;">/</span>opt<span style="color: #000000; font-weight: bold;">/</span>iGO8.3_PC<span style="color: #000000; font-weight: bold;">/</span>save<br />
$ <span style="color: #c20cb9; font-weight: bold;">sed</span> <span style="color: #660033;">-i</span> <span style="color: #ff0000;">'s/DESKTOP/WINDOW/g'</span> ~<span style="color: #000000; font-weight: bold;">/</span>.xbmc<span style="color: #000000; font-weight: bold;">/</span>userdata<span style="color: #000000; font-weight: bold;">/</span>guisettings.xml<br />
$ <span style="color: #7a0874; font-weight: bold;">cd</span> ~.<span style="color: #000000; font-weight: bold;">/</span>xbmc<span style="color: #000000; font-weight: bold;">/</span>addons<span style="color: #000000; font-weight: bold;">/</span>skin.carpc<span style="color: #000000; font-weight: bold;">/</span>script<span style="color: #000000; font-weight: bold;">/</span> <span style="color: #000000; font-weight: bold;">&amp;&amp;</span> <span style="color: #c20cb9; font-weight: bold;">make</span><br />
$ <span style="color: #c20cb9; font-weight: bold;">sed</span> <span style="color: #660033;">-i</span> <span style="color: #ff0000;">&quot;s|yourusername|<span style="color: #007800;">$HOME</span>|g&quot;</span> ~<span style="color: #000000; font-weight: bold;">/</span>.xbmc<span style="color: #000000; font-weight: bold;">/</span>addons<span style="color: #000000; font-weight: bold;">/</span>skin.carpc<span style="color: #000000; font-weight: bold;">/</span>4x3Hirez<span style="color: #000000; font-weight: bold;">/</span>Home.xml</div></td></tr></tbody></table></div>
<p>In dem Script, das gestartet wird, wenn man in XBMC den Menüpunkt Navigation auswählt, muss in den ersten Zeilen auch der Pfad zu der iGO.exe angegeben werden. Dieses Tutorial geht, wie vielleicht bei Befehlen zuvor schon gemerkt von einer Installation in <i>/opt/iGO8.3_PC</i> aus: <i>~/.xbmc/addons/skin.carpc/script/script</i><br />
Es muss zudem sichergestellt sein, dass der WM XBMC nicht in den &#8220;floating&#8221; o.ä. Mode setzt, sondern wie ein normales Fenster behandelt. Ansonsten starten iGO aus dem Skript nicht ordnungsgemäß heraus. Mittels der &#8220;\&#8221;-Taste (Backslash) kann in XBMC der Modus zwischen Vollbild und Fenstermodus gewechselt werden. Falls die rc.conf noch nicht editiert wurde (wie später beschrieben) und auch noch kein Neustart durchgeführt wurde, kann der virtuelle X-Server, in dem iGO dann ausgeführt wird, auch manuell schon gestartet werden via: <i>sudo /etc/rc.d/xvfbd start</i></p>
<div align=center><a href="http://project-insanity.org/wp-content/uploads/2012/03/navigation_igo.png" rel="lightbox-1482"><img class="aligncenter size-medium wp-image-1677" style="margin-left: 15px;" title="navigation_igo" src="http://project-insanity.org/wp-content/uploads/2012/03/navigation_igo-300x225.png" alt="" width="300" height="225" /></a><a href="http://project-insanity.org/wp-content/uploads/2012/03/navigation_menu.png" rel="lightbox-1482"><img class="aligncenter size-medium wp-image-1677" style="margin-left: 15px;" title="navigation_menu" src="http://project-insanity.org/wp-content/uploads/2012/03/navigation_menu-300x168.png" alt="" width="300" height="168" /></a></div>
<p>Anmerkung: Laut einem <a href="http://www.mp3car.com/linux/128951-garmin-mobilepc-being-tested-so-far-so-good.html" target="_blank">Beitrag bei mp3car.com</a> ist es für andere Anwendungen wie Garmin PC Mobile oder Sygic Drive notwendig eine Devicemap der Serial-Ports in der Wine-Registry anzulegen.</p>
<h2>Kleinere Systemeinstellungen</h2>
<p>Für ein deutsches Keyboard-Layout innerhalb des X-Servers muss folgende Datei <i>/etc/X11/xorg.conf.d/keyboard.conf</i> angelegt werden:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">Section <span style="color: #ff0000;">&quot;InputClass&quot;</span><br />
Identifier <span style="color: #ff0000;">&quot;Keyboard Defaults&quot;</span><br />
MatchIsKeyboard <span style="color: #ff0000;">&quot;yes&quot;</span><br />
Option <span style="color: #ff0000;">&quot;XkbLayout&quot;</span> <span style="color: #ff0000;">&quot;de&quot;</span><br />
EndSection</div></td></tr></tbody></table></div>
<p>Zuletzt sollte noch mit einem Befehl die aktuell, mit z.B. <em>alsamixer</em> gesetzte Lautstärke persistent gespeichert werden. Mit dem Befehl <i>systemctl enable</i> werden die Dienste <i>bluez</i> und <i>wicd</i> automatisch gestartet:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">$ alsactl store <span style="color: #666666; font-style: italic;"># oder sudo alsactl store</span><br />
$ <span style="color: #c20cb9; font-weight: bold;">sudo</span> systemctl <span style="color: #7a0874; font-weight: bold;">enable</span> bluez wicd</div></td></tr></tbody></table></div>
<h1>Work in progress &#8230;</h1>
<p>Die nächsten Schritte des Projektes sind:<br />
<a href="http://project-insanity.org/wp-content/uploads/2011/12/IMAG0482.jpg" rel="lightbox-1482"><img class="alignleft size-medium wp-image-1707" style="margin-right: 15px;" title="IMAG0482" src="http://project-insanity.org/wp-content/uploads/2011/12/IMAG0482-300x225.jpg" alt="" width="300" height="225" /></a></p>
<ul>
<li>Eine Freisprechanlage, realisiert mit <a href="target=_blank">hfpforlinux</a> (<a href="http://nohands.sourceforge.net/index.html" target="_blank">Projektseite</a>), die sich via. Bluetooth mit dem Android-Handy des Fahrers verbindet.</li>
<li>Sprachausgabe für Navit.</li>
<li>Alternatives Navigations-System <a href="http://navigatorfree.mapfactor.com/" target="new">Navigator 11 von Mapfactor</a> (ist kostenlos!)</li>
<li>Alternative Setups mit <a href="http://www.android-x86.org/" target="_blank">Android 4.0 x84</a> (es gibt auch schon <a href="http://androvm.org/blog/download/" target=new>VBox-Images für 4.1</a>), Win7 (<a href="http://www.car-pc.info/wiki/CPOS">CPOS CarPC-Software</a> / <a href="http://ict.cartft.com/">iCT</a>(inCar Terminal) /<a href="http://www.centrafuse.com" target="_blank">Centrafuse</a>) und <a href="http://www.heise.de/download/windows-8-1185799.html" target="_blank">Windows 8 mit MetroUI</a></li>
<li>Automount funktioniert leider noch nicht ganz.</li>
<li>XBMC-Theme fertigstellen</li>
<li>Gpsd.conf fehlt noch</li>
<li>Android-Telefon automatisch mti Obexfs mounten und Multimediadateien in XBMC einbinden und z.B. einen Bluetooth-Audiogateway für Handys bereitstellen.</li>
<li>Bluetooth-Audiogateway mit PulseAudio, um die Audioausgabe eines Mobiltelefons direkt an den CarPC weiterzuleiten.</li>
<li>(Infrarot)Webcam, um z.B. schwer einsehbare Straßenabschnitte auf dem CarPC sichtbar zu machen oder auch um in bestimmten Zeitintervallen einzelne Bilder aufzunehmen (für Zeitraffervideos)</li>
</ul>
<h1>Credits:</h1>
<ul>
<li>Original skin: <a href="http://forum.xbmc.org/showthread.php?t=105142" target="_blank">http://forum.xbmc.org/showthread.php?t=105142</a> (thx Jezz_X!)</li>
<li>Original wicd-plugin: <a href="http://forum.xbmc.org/showthread.php?t=90410" target="_blank">http://forum.xbmc.org/showthread.php?t=90410</a> (thx vikjon0!)</li>
</ul>
<h1>Anmerkungen:</h1>
<p>Ich bitte darum, Kritiken, Verbesserungsvorschläge oder Alternativkonzepte in den Kommentarbereich zu schreiben. Es ist nicht einfach, einen Überblick über vorhandene CarPC-Projekte und dazugehörige Software im Internet zu finden, deswegen würden wir uns über jede Anregung freuen, danke.</p>
<h2>Weiterführende Links:</h2>
<ul>
<li><a href="http://www.car-pc.info" target="_blank">Car-PC.info</a> &#8211; Webseite mit Forum, Wiki (Anleitungen) und einer Übersicht (zum Teil veraltet) zu verschiedener CarPC-Software.</li>
<li><a href="http://code.google.com/p/android-notifier/" target="_blank">Android-Notifier</a> Google-Code Projektseite</li>
<li><a href="http://www.mp3car.com/linux/ target=">Mp3Car.com</a> &#8211; Forum mit vielen hilfreichen Beiträgen zum Thema CarPC</li>
<li><a href="http://www.mp3car.com/software-and-software-development/34218-list-of-front-ends-other-useful-apps.html" target="_blank">Liste mit alternativen CarPC-Systemen sowie weitere Software</a></li>
<li><a href="https://aur.archlinux.org/packages.php?ID=56104" target="_blank">nghost2</a> &#8211; Eine leider seit 2008 nicht mehr weiterentwickelte, native CarPC-Software. Benutzt SDL++-Library für die grafische Darstellung (<a href="http://sourceforge.net/projects/nghost/">SourceForge Projektseite</a>)</li>
<li><a href="https://aur.archlinux.org/packages.php?ID=56188" target="_blank">nghost3</a> &#8211; Ein relativ aktueller Prototyp und kompletter rewrite von nghost2 auf Basis von QT4 und Clutter (<a href="https://github.com/BillyGalbreath/nGhost3">GitHub Projektseite</a>)</li>
<li><a href="https://aur.archlinux.org/packages.php?ID=55596" target="_blank">centrafuseauto 4.0 beta</a> gibt es auch für Linux, zwar noch in der Beta, aber schön zu sehen, dass sich die Entwickler die Mühe machen, so ein großes Projekt auch für andere Systeme lauffähig zu machen. Da es sich um eine frühe Beta-Version handelt, ist es in diesem Fall abzuraten, die Software als Alternative schon einzusetzen. Wohingegen die Windows-Version schon richtig gut funktioniert, aber leider noch nicht so viele Modifizierungsmöglichkeiten anbietet. (<a href="https://www.centrafuse.com" target="_blank">Projektwebseite</a>)</li>
</ul>
<h2>Changelog:</h2>
<ul>
<li>23.12.2011 &#8211; Originaler Beitrag</li>
<li>10.10.2012 &#8211; Aktualisierte Version, mit: Xbmc 11, Kernel 3.5, Xorg 1.13, Systemd, iGO 8.3 (Navigations-System), skin.carpc 1.0</li>
</ul>
 <p><a href="http://www.project-insanity.org/?flattrss_redirect&amp;id=1482&amp;md5=2f018c3cd37b22ce6a2570e1ede71394" title="Flattr" target="_blank"><img src="http://pi.vpn/pub/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.project-insanity.org/2012/10/archlinux-touchscreen-carpc-mit-xbmc-frontend/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=8801&amp;popout=1&amp;url=http%3A%2F%2Fwww.project-insanity.org%2F2012%2F10%2Farchlinux-touchscreen-carpc-mit-xbmc-frontend%2F&amp;language=de_DE&amp;category=text&amp;title=ArchLinux+Touchscreen-CarPC+mit+XBMC-Frontend&amp;description=Hardware+setup+Die+Idee+hinter+der+Hardware+des+CarPCs+war%2C+das+Ganze+m%C3%B6glichst+kosteng%C3%BCnstig+mit+bereits+vorhandenen+Teilen+zu+realisieren.+Deshalb+sind+einige+der+Komponenten+nicht+wirklich+optimal.+Au%C3%9Ferdem+hatte...&amp;tags=android%2Carchlinux%2Cautomount%2Ccar-pc%2Ccarpc%2Ccmos%2Cfreisprechanlage%2Cgps%2CiGO%2Cnavigation%2Cnavigationssoftware%2Cnavit%2Copenstreetmap%2Cosm%2Ctouch%2Ctouchscreen%2Cwindows%2Cwireless%2Cxbmc%2Cblog" type="text/html" />
	</item>
		<item>
		<title>Install Sage 5.3 on Debian Squeeze + InitScript</title>
		<link>http://www.project-insanity.org/2012/09/install-sage-5-3-on-debian-squeeze-initscript/</link>
		<comments>http://www.project-insanity.org/2012/09/install-sage-5-3-on-debian-squeeze-initscript/#comments</comments>
		<pubDate>Thu, 27 Sep 2012 16:39:14 +0000</pubDate>
		<dc:creator>onny</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software/ Coding]]></category>
		<category><![CDATA[algorithms]]></category>
		<category><![CDATA[books]]></category>
		<category><![CDATA[cryptogeaphy]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[how-to]]></category>
		<category><![CDATA[initscript]]></category>
		<category><![CDATA[install]]></category>
		<category><![CDATA[mathematics]]></category>
		<category><![CDATA[notebook]]></category>
		<category><![CDATA[sage]]></category>
		<category><![CDATA[server]]></category>
		<category><![CDATA[university]]></category>

		<guid isPermaLink="false">http://www.project-insanity.org/?p=2486</guid>
		<description><![CDATA[One virtual machine on our private network runs an instance of Sage, which is an open-source alternative to Matlab, Maple or Mathematica. In fact it&#8217;s a very powerful framwork using Python as primary language for describing (for example) mathematical, algorithmic or topological problems. It comes handy for practices at university in algorithms or cryptography courses [...]]]></description>
				<content:encoded><![CDATA[<p>One virtual machine on our private network runs an instance of <a href=http://sagemath.org target=new>Sage</a>, which is an open-source alternative to Matlab, Maple or Mathematica. In fact it&#8217;s a very powerful framwork using Python as primary language for describing (for example) mathematical, algorithmic or topological problems. It comes handy for practices at university in algorithms or cryptography courses and there&#8217;s already a lot of sage related documentation and material <a href=https://code.google.com/p/graphbook/ target=new>out</a> <a href=https://code.google.com/p/crypto-book/ target=new>there</a>.<br />
Still, there&#8217;s one problem with distribution packaging to solve to make Sage available to a broader audience. Because Sage consists of various Python libraries and toolkits, which are packed with Sage, it&#8217;s difficult to maintain and distribute it, especially if you don&#8217;t want to serve one monolithic program instead of seperating the libs as dependency.<br />
Nevertheless, installing Sage (even as a daemon) is easy and here&#8217;s a short how-to for Debian Squeeze:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">useradd sage<br />
<span style="color: #c20cb9; font-weight: bold;">mkdir</span> <span style="color: #000000; font-weight: bold;">/</span>home<span style="color: #000000; font-weight: bold;">/</span>sage <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>local<span style="color: #000000; font-weight: bold;">/</span>sage <span style="color: #666666; font-style: italic;"># Home-Dir contains all preferences and project-files of Sage</span><br />
<span style="color: #c20cb9; font-weight: bold;">chown</span> <span style="color: #660033;">-R</span> sage:sage <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>local<span style="color: #000000; font-weight: bold;">/</span>sage <span style="color: #000000; font-weight: bold;">/</span>home<span style="color: #000000; font-weight: bold;">/</span>sage<br />
<span style="color: #c20cb9; font-weight: bold;">su</span> sage<br />
<span style="color: #7a0874; font-weight: bold;">cd</span> <span style="color: #000000; font-weight: bold;">/</span>usr<span style="color: #000000; font-weight: bold;">/</span>local<span style="color: #000000; font-weight: bold;">/</span>sage<br />
aria2c <span style="color: #ff0000;">&quot;http://www.sagemath.org/mirror/src/meta/sage-5.3.tar.torrent&quot;</span><br />
<span style="color: #c20cb9; font-weight: bold;">tar</span> xvf sage-5.3.tar <span style="color: #660033;">--strip-components</span>=1<br />
<span style="color: #7a0874; font-weight: bold;">export</span> <span style="color: #007800;">MAKE</span>=<span style="color: #ff0000;">&quot;make -j4&quot;</span><br />
<span style="color: #c20cb9; font-weight: bold;">make</span><br />
<span style="color: #c20cb9; font-weight: bold;">mkdir</span> <span style="color: #000000; font-weight: bold;">/</span>var<span style="color: #000000; font-weight: bold;">/</span>log<span style="color: #000000; font-weight: bold;">/</span>sage<br />
<span style="color: #c20cb9; font-weight: bold;">chown</span> <span style="color: #660033;">-R</span> sage:sage <span style="color: #000000; font-weight: bold;">/</span>var<span style="color: #000000; font-weight: bold;">/</span>log<span style="color: #000000; font-weight: bold;">/</span>sage<br />
.<span style="color: #000000; font-weight: bold;">/</span>sage <span style="color: #660033;">-upgrade</span><br />
.<span style="color: #000000; font-weight: bold;">/</span>sage<br />
sage: optional_packages<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
sage: install_package<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #ff0000;">'openmpi-XXX'</span><span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
sage: install_package<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #ff0000;">'mpi4py-YYY'</span><span style="color: #7a0874; font-weight: bold;">&#41;</span></div></td></tr></tbody></table></div>
<p>You&#8217;ll have to install <em>aria2</em> using <em>aptitude</em> to download Sage via Bittorrent. Then create a InitScript file <em>/etc/init.d/sage</em> with following content:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;height:400px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br />11<br />12<br />13<br />14<br />15<br />16<br />17<br />18<br />19<br />20<br />21<br />22<br />23<br />24<br />25<br />26<br />27<br />28<br />29<br />30<br />31<br />32<br />33<br />34<br />35<br />36<br />37<br />38<br />39<br />40<br />41<br />42<br />43<br />44<br />45<br />46<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #666666; font-style: italic;">#!/bin/bash</span><br />
<br />
<span style="color: #666666; font-style: italic;">### BEGIN INIT INFO</span><br />
<span style="color: #666666; font-style: italic;"># Provides: &nbsp; &nbsp; &nbsp; &nbsp; &nbsp;sage</span><br />
<span style="color: #666666; font-style: italic;"># Required-Start: &nbsp; &nbsp;$local_fs $remote_fs $network $syslog</span><br />
<span style="color: #666666; font-style: italic;"># Required-Stop: &nbsp; &nbsp; $local_fs $remote_fs $network $syslog</span><br />
<span style="color: #666666; font-style: italic;"># Default-Start: &nbsp; &nbsp; 2 3 4 5</span><br />
<span style="color: #666666; font-style: italic;"># Default-Stop: &nbsp; &nbsp; &nbsp;0 1 6</span><br />
<span style="color: #666666; font-style: italic;"># Short-Description: starts sage-mathematics server</span><br />
<span style="color: #666666; font-style: italic;"># Description: &nbsp; &nbsp; &nbsp; starts sage-mathematics server using start-stop-daemon</span><br />
<span style="color: #666666; font-style: italic;">### END INIT INFO</span><br />
<br />
<span style="color: #666666; font-style: italic;"># configuration</span><br />
<span style="color: #007800;">SAGE_HOME</span>=<span style="color: #ff0000;">&quot;/usr/local/sage&quot;</span><br />
<span style="color: #007800;">SAGE_OPTS</span>=<span style="color: #ff0000;">&quot;-notebook interface=10.25.0.105 port=8081&quot;</span><br />
<span style="color: #007800;">SAGE_LOG</span>=<span style="color: #ff0000;">&quot;/var/log/sage/sage.log&quot;</span><br />
<span style="color: #666666; font-style: italic;"># commands</span><br />
<span style="color: #007800;">USER</span>=<span style="color: #ff0000;">&quot;sage&quot;</span><br />
<span style="color: #007800;">NAME</span>=<span style="color: #ff0000;">&quot;sage&quot;</span><br />
<br />
sage_start<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Starting Sage...&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; start-stop-daemon <span style="color: #660033;">--start</span> <span style="color: #660033;">--background</span> <span style="color: #660033;">--chuid</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$USER</span>&quot;</span> <span style="color: #660033;">--chdir</span> <span style="color: #ff0000;">&quot;<span style="color: #007800;">$SAGE_HOME</span>&quot;</span> <span style="color: #660033;">--exec</span> <span style="color: #007800;">$SAGE_HOME</span><span style="color: #000000; font-weight: bold;">/</span>sage <span style="color: #660033;">--</span> <span style="color: #007800;">$SAGE_OPTS</span> <span style="color: #666666; font-style: italic;"># -- $SAGE_LOG</span><br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span><br />
sage_stop<span style="color: #7a0874; font-weight: bold;">&#40;</span><span style="color: #7a0874; font-weight: bold;">&#41;</span> <span style="color: #7a0874; font-weight: bold;">&#123;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Stopping Sage...&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">kill</span> <span style="color: #000000; font-weight: bold;">`</span><span style="color: #c20cb9; font-weight: bold;">ls</span> <span style="color: #ff0000;">&quot;/home/<span style="color: #007800;">$USER</span>/.sage/temp/application/&quot;</span><span style="color: #000000; font-weight: bold;">`</span><br />
<span style="color: #7a0874; font-weight: bold;">&#125;</span><br />
<span style="color: #000000; font-weight: bold;">case</span> $1 <span style="color: #000000; font-weight: bold;">in</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; start<span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sage_start<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">;;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; stop<span style="color: #7a0874; font-weight: bold;">&#41;</span> &nbsp;<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sage_stop<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">;;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; restart<span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sage_stop<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #c20cb9; font-weight: bold;">sleep</span> 5<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; sage_start<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">;;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">*</span><span style="color: #7a0874; font-weight: bold;">&#41;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">echo</span> <span style="color: #ff0000;">&quot;Use: $0 {start|stop|restart}&quot;</span><br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #7a0874; font-weight: bold;">exit</span> 1<br />
&nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; &nbsp; <span style="color: #000000; font-weight: bold;">;;</span><br />
<span style="color: #000000; font-weight: bold;">esac</span><br />
<span style="color: #7a0874; font-weight: bold;">exit</span> <span style="color: #000000;">0</span></div></td></tr></tbody></table></div>
<p>Adjust the variable SAGE_OPTS for the parameters passed to Sage. In most cases &#8220;-notebook&#8221; should be enough, if you only want to use Sage locally. The sage_stop function is a bit hacky but it works for me.<br />
To autostart the daemon at boot time, run:</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap"><span style="color: #c20cb9; font-weight: bold;">chmod</span> +x <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>sage<br />
update-rc.d sage defaults <span style="color: #000000;">95</span><br />
<span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>init.d<span style="color: #000000; font-weight: bold;">/</span>sage start</div></td></tr></tbody></table></div>
<p>You can access Sage with your browser (considering default settings) on <a href="http://127.0.0.1:8080" target=new>http://127.0.0.1:8080</a>.</p>
 <p><a href="http://www.project-insanity.org/?flattrss_redirect&amp;id=2486&amp;md5=37314f88d4efd24b76e11182c856c69e" title="Flattr" target="_blank"><img src="http://pi.vpn/pub/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.project-insanity.org/2012/09/install-sage-5-3-on-debian-squeeze-initscript/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=8801&amp;popout=1&amp;url=http%3A%2F%2Fwww.project-insanity.org%2F2012%2F09%2Finstall-sage-5-3-on-debian-squeeze-initscript%2F&amp;language=de_DE&amp;category=text&amp;title=Install+Sage+5.3+on+Debian+Squeeze+%2B+InitScript&amp;description=One+virtual+machine+on+our+private+network+runs+an+instance+of+Sage%2C+which+is+an+open-source+alternative+to+Matlab%2C+Maple+or+Mathematica.+In+fact+it%26%238217%3Bs+a+very+powerful+framwork+using...&amp;tags=algorithms%2Cbooks%2Ccryptogeaphy%2Cdebian%2Chow-to%2Cinitscript%2Cinstall%2Cmathematics%2Cnotebook%2Csage%2Cserver%2Cuniversity%2Cblog" type="text/html" />
	</item>
		<item>
		<title>CUPS SSH-LPR Backend einrichten</title>
		<link>http://www.project-insanity.org/2012/09/cups-ssh-lpr-backend-einrichten/</link>
		<comments>http://www.project-insanity.org/2012/09/cups-ssh-lpr-backend-einrichten/#comments</comments>
		<pubDate>Thu, 27 Sep 2012 09:36:22 +0000</pubDate>
		<dc:creator>onny</dc:creator>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Software/ Coding]]></category>
		<category><![CDATA[atis]]></category>
		<category><![CDATA[backend]]></category>
		<category><![CDATA[cups]]></category>
		<category><![CDATA[debugging]]></category>
		<category><![CDATA[drucker]]></category>
		<category><![CDATA[einrichten]]></category>
		<category><![CDATA[fakultät]]></category>
		<category><![CDATA[informatik]]></category>
		<category><![CDATA[karlsruhe]]></category>
		<category><![CDATA[kit]]></category>
		<category><![CDATA[lpd]]></category>
		<category><![CDATA[lpr]]></category>
		<category><![CDATA[poolraum]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[uni]]></category>

		<guid isPermaLink="false">http://www.project-insanity.org/?p=2463</guid>
		<description><![CDATA[Eines der Möglichkeiten bei uns in der KIT Infofakultät zu drucken, ist neben dem Benutzen des Pool-Rechner vor Ort, auch der externe Zugriff via. SSH. Dabei kopiert man mit SCP sein Dokument auf das Benutzerkonto der ATIS, sucht sich einen Drucker aus und startet mit lpd/lpr einen Druckauftrag. Jedoch kann man mit einem CUPS-Backend soetwas [...]]]></description>
				<content:encoded><![CDATA[<p>Eines der Möglichkeiten bei uns in der <a href=http://www.atis.uka.de/1168.php target=new>KIT Infofakultät</a> zu drucken, ist neben dem Benutzen des Pool-Rechner vor Ort, auch der externe Zugriff via. SSH. Dabei kopiert man mit SCP sein Dokument auf das <a href=http://www.atis.uka.de/501.php target=new>Benutzerkonto der ATIS</a>, sucht sich einen Drucker aus und startet mit <a href=http://www.cups.org/documentation.php/options.html target=new><em>lpd/lpr</em></a> einen Druckauftrag.<br />
Jedoch kann man mit einem CUPS-Backend soetwas automatisieren und im Netz lassen sich dazu auch <a href=http://nonblocking-random.blogspot.de/2009/10/ssh-over-lpr.html target=new>schon</a> <a href=http://www.masella.name/technical/sshlpr.html target=new>Scripte</a> finden. Durch Debuggen von Cups habe Ich jedoch festgestellt, das keines der Backends von CUPS einen 6. Parameter (<em>File to print</em>) gestellt bekommt. Vermutlich habe Ich einfach den falschen Treiber bei der Einrichtung des SSH-LPR-Backends ausgewählt. Zumindest habe Ich dann <a href=http://twofoos.org/content/labprinting/ target=new>ein Backend gefunden</a>, der besser Dokumentiert wurde und selber auch eine sehr ausführliche Fehlerausgabe hat. Für ArchLinux lässt sich das ganze Setup dann relativ kurz zusammenfassen (es wird der Paketmanager-Wrapper <a href=https://wiki.archlinux.org/index.php/Yaourt target=new>Yaourt</a> und <a href="https://wiki.archlinux.org/index.php/Systemd" target=new>SystemD</a> verwendet):</p>
<div class="codecolorer-container bash projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br />7<br />8<br />9<br />10<br /></div></td><td><div class="bash codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">yaourt <span style="color: #660033;">-S</span> sshldp<br />
systemctl restart cupsd.service<br />
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">mkdir</span> <span style="color: #000000; font-weight: bold;">/</span>sbin<span style="color: #000000; font-weight: bold;">/</span>.ssh<br />
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #c20cb9; font-weight: bold;">chown</span> daemon:daemon <span style="color: #000000; font-weight: bold;">/</span>sbin<span style="color: #000000; font-weight: bold;">/</span>.ssh<br />
<span style="color: #c20cb9; font-weight: bold;">sudo</span> <span style="color: #660033;">-u</span> daemon <span style="color: #c20cb9; font-weight: bold;">ssh</span> s_xxx<span style="color: #000000; font-weight: bold;">@</span>i08fs1.ira.uka.de<br />
<span style="color: #666666; font-style: italic;"># accept host/fingerprint for the user daemon</span><br />
<span style="color: #666666; font-style: italic;"># adjust the lpd path for the remote machine in /usr/lib/cups/backend/sshlpd</span><br />
<span style="color: #c20cb9; font-weight: bold;">mkdir</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>sshpassword<br />
<span style="color: #c20cb9; font-weight: bold;">vim</span> <span style="color: #000000; font-weight: bold;">/</span>etc<span style="color: #000000; font-weight: bold;">/</span>sshpassword<span style="color: #000000; font-weight: bold;">/</span>s_xxx<span style="color: #000000; font-weight: bold;">@</span>i08fs1.ira.uka.de<br />
<span style="color: #666666; font-style: italic;"># insert your user password (plain), yeah its creepy</span></div></td></tr></tbody></table></div>
<p>Vermutlich nicht die schönste Variante für einen Backend (Perl, speichern eines unverschlüsselten Passwortes und das ganze noch bei einem unterpriviligierten User wie <em>daemon</em>), aber immerhin hats damit mal funktioniert <img src='http://www.project-insanity.org/wp-includes/images/smilies/icon_wink.gif' alt=';)' class='wp-smiley' /><br />
Das Einrichten des Druckers ist relativ einfach, sobald CUPS läuft und der Backend richtig erkannt wurde. Zu erst <a href=http://127.0.0.1:631 target=new>http://127.0.0.1:631</a> im Browser aufrufen um die Konfigurationsoberfläche von CUPS zu erreichen. Dort auf <em>Administration</em> klicken, mit <em>root</em> einloggen und Drucker hinzufügen.<br />

<a href='http://www.project-insanity.org/2012/09/cups-ssh-lpr-backend-einrichten/2012-09-27-091644_1024x768_scrot/' title='2012-09-27-091644_1024x768_scrot'><img width="150" height="150" src="http://www.project-insanity.org/wp-content/uploads/2012/09/2012-09-27-091644_1024x768_scrot-150x150.png" class="attachment-thumbnail" alt="2012-09-27-091644_1024x768_scrot" /></a>
<a href='http://www.project-insanity.org/2012/09/cups-ssh-lpr-backend-einrichten/2012-09-27-091716_1024x768_scrot/' title='2012-09-27-091716_1024x768_scrot'><img width="150" height="150" src="http://www.project-insanity.org/wp-content/uploads/2012/09/2012-09-27-091716_1024x768_scrot-150x150.png" class="attachment-thumbnail" alt="2012-09-27-091716_1024x768_scrot" /></a>
<a href='http://www.project-insanity.org/2012/09/cups-ssh-lpr-backend-einrichten/2012-09-27-091814_1024x768_scrot/' title='2012-09-27-091814_1024x768_scrot'><img width="150" height="150" src="http://www.project-insanity.org/wp-content/uploads/2012/09/2012-09-27-091814_1024x768_scrot-150x150.png" class="attachment-thumbnail" alt="2012-09-27-091814_1024x768_scrot" /></a>
<a href='http://www.project-insanity.org/2012/09/cups-ssh-lpr-backend-einrichten/2012-09-27-091832_1024x768_scrot/' title='2012-09-27-091832_1024x768_scrot'><img width="150" height="150" src="http://www.project-insanity.org/wp-content/uploads/2012/09/2012-09-27-091832_1024x768_scrot-150x150.png" class="attachment-thumbnail" alt="2012-09-27-091832_1024x768_scrot" /></a>
<a href='http://www.project-insanity.org/2012/09/cups-ssh-lpr-backend-einrichten/2012-09-27-091850_1024x768_scrot/' title='2012-09-27-091850_1024x768_scrot'><img width="150" height="150" src="http://www.project-insanity.org/wp-content/uploads/2012/09/2012-09-27-091850_1024x768_scrot-150x150.png" class="attachment-thumbnail" alt="2012-09-27-091850_1024x768_scrot" /></a>
<br />
Bei der darauf folgenden Liste wählt man den Backend <em>LPD over SSH Login</em>, dann die Ziel-Adresse, also quasi Benutzername@UNI-Server/Druckername. In meinem Fall wäre das <em>sshlpd://s_xxx@i08fs1.ira.uka.de/pool-farb1</em>. Die verfügbaren Drucker lassen sich auf dem remote Server auch ausgeben:</p>
<div class="codecolorer-container text projectinsanity" style="overflow:auto;white-space:nowrap;border:1px solid #9F9F9F;width:435px;"><table cellspacing="0" cellpadding="0"><tbody><tr><td style="padding:5px;text-align:center;color:#888888;background-color:#EEEEEE;border-right: 1px solid #9F9F9F;font: normal 12px/1.4em Monaco, Lucida Console, monospace;"><div>1<br />2<br />3<br />4<br />5<br />6<br /></div></td><td><div class="text codecolorer" style="padding:5px;font:normal 12px/1.4em Monaco, Lucida Console, monospace;white-space:nowrap">s_xxx@i08fs1(~)$ lpstat -p<br />
printer auskunft-sw1 is idle. &nbsp;enabled since So 23 Sep 2012 07:25:23 CEST<br />
printer pool-farb1 now printing pool-farb1-49. &nbsp;enabled since Do 27 Sep 2012 09:09:40 CEST<br />
printer pool-sw1 is idle. &nbsp;enabled since Di 18 Sep 2012 19:27:32 CEST<br />
printer pool-sw2 is idle. &nbsp;enabled since Di 18 Sep 2012 18:02:18 CEST<br />
printer pool-sw3 is idle. &nbsp;enabled since Di 18 Sep 2012 18:01:55 CEST</div></td></tr></tbody></table></div>
<p>Der &#8220;Druckertreiber&#8221; ist dann: <em>Generic -> Generic PostScript Printer Foomatic/Postscript (recommended) (en)</em>.</p>
<h2>Debugging</h2>
<p>In <em>/etc/cups/cupsd.conf</em> kann das <em>LogLevel</em> auf <em>debug2</em> gestellt werden (even more verbose!). Dann findet man in <em>/var/log/cups/error_log</em> auch die Ausgaben des Backends. Ob der Druckauftrag auf dem remote Server angekommen ist, kann man dort mit dem Befehl <em>lpstat -o</em> überprüfen.</p>
 <p><a href="http://www.project-insanity.org/?flattrss_redirect&amp;id=2463&amp;md5=56dbe7ebf1f2f6875f1a61596056bb61" title="Flattr" target="_blank"><img src="http://pi.vpn/pub/wp-content/plugins/flattr/img/flattr-badge-large.png" alt="flattr this!"/></a></p>]]></content:encoded>
			<wfw:commentRss>http://www.project-insanity.org/2012/09/cups-ssh-lpr-backend-einrichten/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<atom:link rel="payment" title="Flattr this!" href="https://flattr.com/submit/auto?user_id=8801&amp;popout=1&amp;url=http%3A%2F%2Fwww.project-insanity.org%2F2012%2F09%2Fcups-ssh-lpr-backend-einrichten%2F&amp;language=de_DE&amp;category=text&amp;title=CUPS+SSH-LPR+Backend+einrichten&amp;description=Eines+der+M%C3%B6glichkeiten+bei+uns+in+der+KIT+Infofakult%C3%A4t+zu+drucken%2C+ist+neben+dem+Benutzen+des+Pool-Rechner+vor+Ort%2C+auch+der+externe+Zugriff+via.+SSH.+Dabei+kopiert+man+mit+SCP...&amp;tags=atis%2Cbackend%2Ccups%2Cdebugging%2Cdrucker%2Ceinrichten%2Cfakult%C3%A4t%2Cinformatik%2Ckarlsruhe%2Ckit%2Clpd%2Clpr%2Cpoolraum%2Cssh%2Cuni%2Cblog" type="text/html" />
	</item>
	</channel>
</rss>
