Benutzer-Werkzeuge

Webseiten-Werkzeuge


public:recalbox

Unterschiede

Hier werden die Unterschiede zwischen zwei Versionen angezeigt.

Link zu dieser Vergleichsansicht

Beide Seiten der vorigen Revision Vorhergehende Überarbeitung
Nächste Überarbeitung
Vorhergehende Überarbeitung
public:recalbox [07.05.2018 14:57]
se [Kühlung]
public:recalbox [15.05.2018 09:31] (aktuell)
se
Zeile 11: Zeile 11:
   * Welcher Emulator auf welcher Plattform: [[https://github.com/recalbox/recalbox-os/wiki/Board-Compatibility-%28EN%29|Board Compatibility]]   * Welcher Emulator auf welcher Plattform: [[https://github.com/recalbox/recalbox-os/wiki/Board-Compatibility-%28EN%29|Board Compatibility]]
 \\ \\
-:!: **Offene Punkte:** 
-  * [[#Kühlung]] in Arbeit 
-    * Zweipunkt-Regelung läuft 
-    * Pappmuster im Lego Gehäuse funktioniert gut 
-    * Restarbeiten: 3D-Druck 
-  * <del>Raspberry Pi 3 mit internem Bluetooth verwenden</del> 
-    * läuft 1A mit originalen PS3 Controller 
  
 ===== Teileliste ===== ===== Teileliste =====
Zeile 28: Zeile 21:
 |:?: Offizielles Raspberry Gehäuse|7,98 €|[[https://www.amazon.de/dp/B01CCPKCSK|Amazon]]|Belüftung?| |:?: Offizielles Raspberry Gehäuse|7,98 €|[[https://www.amazon.de/dp/B01CCPKCSK|Amazon]]|Belüftung?|
 |:?: NES Retro-Case / Lüftung mies|21,99 €|[[https://www.amazon.de/dp/B076BJBLZD|Amazon]]|Integrierter Lüfter wirkungslos!| |:?: NES Retro-Case / Lüftung mies|21,99 €|[[https://www.amazon.de/dp/B076BJBLZD|Amazon]]|Integrierter Lüfter wirkungslos!|
-|:?: NES LEGO Case| ??? €|[[https://moc.bricklink.com/pages/moc/mocitem.page?idmocitem=3075|BL-Shop]]|Belüftung?|+|:?: NES LEGO Case| 15-20 €|[[https://moc.bricklink.com/pages/moc/mocitem.page?idmocitem=3075|BL-Shop]]|Preis inkl. Versand @ [[https://www.bricklink.com/v2/main.page|Bricklink]]|
 ===== Software-Liste ===== ===== Software-Liste =====
   * **Recalbox** Image: [[https://archive.recalbox.com/|archive @ recalbox.com]].   * **Recalbox** Image: [[https://archive.recalbox.com/|archive @ recalbox.com]].
Zeile 212: Zeile 205:
 \\ \\
 Status: Status:
-  * Aktive Kühlung für Raspi nötig! (s.u.) +  * 5 V Lüfter mit 3,3 Ohm Vorwiderstand 
-    * Luftkanal Druckfreundlich +  * Zweipunkt-Regelung über Python-Script 
-      * {{:public:fanductv2raspi.png?direct&200|}} +  * Luftkanal 3D-gedruckt: 
-    * positioniert zwischen USB-Buchsen und SoC +    * {{:public:rpi_fan.jpg|}} 
-    * pustet innenluft über den SoC Kühler nach außen +    * {{:public:rpi_fan_assembled.jpg|}}
-      * ob die Luft wirklich außen ankommt mal nachmessen, sofern messbar +
-    * Lüfter an 5 V mit Vorwiderstand von ca. 27 - 51 Ohm +
-      * warum nicht gleich [[https://sourceforge.net/p/raspberry-gpio-python/wiki/PWM/|PWM]] ? +
-      * Testen -> Widerstand raus -> VorteilNerfpegel per Software einstellbar +
-    * Temperaturgeregelt +
-      * [[https://github.com/recalbox/recalbox-os/wiki/Temperaturgeregelte-L%C3%BCftersteuerung-(DE)|aus dem Wiki]] +
-      * umgebaut zum "Bang-Bang-Control" (Zweipunktregler): +
-        * Temp_on = 75°C <- evtl. auf 80°C setzen +
-        * Temp_off = 60 °C+
   * Beobachtungen:   * Beobachtungen:
     * Kein wahrnehmbarer Unterschied zwischen "ohne Kühlung" und "mit passiven Kühlkörper"     * Kein wahrnehmbarer Unterschied zwischen "ohne Kühlung" und "mit passiven Kühlkörper"
Zeile 235: Zeile 219:
  
 Temp-Untersuchung: Raspi 3 mit passiven Kühlkörper (so groß wie der Chip) im LEGO Gehäuse.\\ Temp-Untersuchung: Raspi 3 mit passiven Kühlkörper (so groß wie der Chip) im LEGO Gehäuse.\\
-Netzwerk über RJ45 mit USB Funkempfänger für Tastatur. Bedienung nur über Bluetooth Pad.+Netzwerk über RJ45 mit USB Funkempfänger für Tastatur. Bedienung nur über Bluetooth Pad.\\ 
 +Auslesen der CPU-Temp alle 5 s. Zeitachse in Sekunden.
 {{:public:tempversuch1.png?nolink|}} {{:public:tempversuch1.png?nolink|}}
  
 +**Scripte auf dem Raspi ablegen**\\
 +Medium schreibbar machen und Pfad zu den scripten:
 <code> <code>
 mount -o remount rw, / mount -o remount rw, /
-/recalbox/scripts+cd /recalbox/scripts 
 +</code> 
 +Dort eines der fan_ctrl...py scripte hinkopieren (pscp) oder neu anlegen und abtippen.\\ 
 +Mit pscp (putty secure copy) wenn das script "fan_ctrl_pwm.py" unter d:\ liegt. 
 +<code> 
 +pscp d:\fan_ctrl_pwm.py pi@<RPI IP>:/recalbox/scripts/
 </code> </code>
  
-Startup-Script anlegen:+**Startup-Script anlegen** 
 +Aktuelle Scripte mit "ls" anzeigen. S+Zahl zeigt Startreihenfolge.
 <code> <code>
 mount -o remount rw, / mount -o remount rw, /
Zeile 251: Zeile 244:
 </code> </code>
  
-Im Script eintragen: +**Im Script eintragen:** 
-<code>+<code python>
 #!/usr/bin/python #!/usr/bin/python
  
Zeile 258: Zeile 251:
  
 try: try:
-subprocess.Popen(["python","/recalbox/scripts/fan_ctrl.py"])+    subprocess.Popen(["python","/recalbox/scripts/fan_ctrl.py"])
  
 except KeyboardInterrupt: except KeyboardInterrupt:
-print "Quit"+    print "Quit"
 </code> </code>
  
-Danach noch:+**Danach noch die Datei ausführbar machen:**
 <code> <code>
 chmod +x S33StartTempCtrl.py chmod +x S33StartTempCtrl.py
-Test:+</code> 
 +Bei Bedarf testen: 
 +<code>
 /etc/init.d/S32StartFanControl.py start /etc/init.d/S32StartFanControl.py start
 </code> </code>
  
-Script für Temp-Logging:+**Anschluss an den Raspi:**\\ 
 +(Mit vorwiderstand für den 5 V Lüfter. Muss bei PWM weg) 
 +{{ :public:fanctrlhw.png?nolink |}} 
 + 
 +===== Bekannte Probleme  ===== 
 +==== Mauszeiger träge ==== 
 +Standardmäßig läuft der Mauszeiger sehr träge beim Raspberry Pi. Um dies abzustellen wieder eine [[#Einrichten|SSH-Verbindung]] aufbauen. Dann: 
 +<code>mount -o remount, rw /boot 
 +nano /boot/cmdline.txt</code> 
 +Die Datei besteht aus nur einer Zeile. Das muss so bleiben!\\ 
 +Am Ende dieser Zeile mit einem Leerzeichen getrennt das hier eintippen: 
 +<code>usbhid.mousepoll=0</code> 
 +Dann wieder Speichern (STRG+O), NANO beenden (STRG+X) und neustarten: 
 +<code>reboot</code> 
 + 
 +==== DVI-Monitor zeigt kein Bild ==== 
 +Sondereinstellung für Anschluss eines DVI Displays ([[https://github.com/recalbox/recalbox-os/wiki/Connect-your-recalbox-to-a-DVI-screen-%28EN%29|Link]]):\\ 
 +Über [[#Einrichten|SSH verbinden]] und config.txt bearbeiten: 
 +<code>mount -o remount, rw /boot 
 +nano /boot/config.txt</code> 
 +Nano ist ein minimalistischer Editor unter LINUX. Dort dann das hier auskommentieren: 
 +<code>hdmi_drive=2</code> 
 +Speichern mit STRG+O und beenden mit STRG+X. Anschließend den RPI neustarten: 
 +<code>reboot</code> 
 +Am Fernseher hat diese Einstellung keine auswirkungen. 
 + 
 +==== Boot-Video austauschen ==== 
 +//**ALT!** -> aktuelle Versionen haben ein zufälliges Bootvideo.//\\ 
 +Im release (Stand 4.3.2018) wurde ein Weihnachts-Start-Video eingeführt. Etwas spät für Februar ...\\ 
 +Infos aus dem [[https://forum.recalbox.com/topic/12671/recalbox-18-02-09-is-out/27|Forum]] entnommen.\\ 
 +Als erstes das Filesystem umstellen, Standard ist read-only. Und die Animation löschen/umbenennen: 
 +<code> 
 +mount -o remount rw / 
 +cd /recalbox/system/resources/splash/ 
 +cp recalboxintro.mp4 recalboxintro_alt.mp4 
 +</code> 
 + 
 +Das neue Video dann von Youtube runterladen, umbenennen nach "recalboxintro.mp4" und per pscp auf den Raspi kopieren: 
 +<code> 
 +pscp d:\pfad\recalboxintro.mp4 root@recalbox:/recalbox/system/resources/splash 
 +</code> 
 +Dann des Raspi neustarten. (Der Scheibzugriff wird wieder umgestellt!) 
 + 
 +===== Eigene Scripte ===== 
 +==== Temperatur-Logging ==== 
 +Dieses Script liest alle X (hier5) sekunden die CPU Temperatur aus und schreibt diese mit einem Zeitstempel in eine txt-Datei im csv Format. Bei Excel einfach über "Daten" importieren und "." durch "," ersetzen.
 <file python temp_log.py> <file python temp_log.py>
 # Templogging Script # Templogging Script
Zeile 308: Zeile 348:
 </file> </file>
  
-Script für Lüftersteuerung:+==== Lüfterregelung ==== 
 +Die super einfache Zweipunkt-Regelung schaltet den Lüfter an Pin X bei überschreiten der Temperatur Y ein und bei unterschreiten der Temperatur Z wieder aus.\\ 
 +Der Pin X schaltet natürlich einen Transistor durch, welcher den Lüfter schaltet... 
 <file python fan_ctrl.py> <file python fan_ctrl.py>
 # Fan bang-bang control # Fan bang-bang control
Zeile 353: Zeile 396:
 </file> </file>
  
-Anschluss an den Raspi: 
-{{ :public:fanctrlhw.png?nolink |}} 
-===== Bekannte Probleme  ===== 
-==== Mauszeiger träge ==== 
-Standardmäßig läuft der Mauszeiger sehr träge beim Raspberry Pi. Um dies abzustellen wieder eine [[#Einrichten|SSH-Verbindung]] aufbauen. Dann: 
-<code>mount -o remount, rw /boot 
-nano /boot/cmdline.txt</code> 
-Die Datei besteht aus nur einer Zeile. Das muss so bleiben!\\ 
-Am Ende dieser Zeile mit einem Leerzeichen getrennt das hier eintippen: 
-<code>usbhid.mousepoll=0</code> 
-Dann wieder Speichern (STRG+O), NANO beenden (STRG+X) und neustarten: 
-<code>reboot</code> 
  
-==== DVI-Monitor zeigt kein Bild ==== +==== Lüfterregelung mit PWM==== 
-Sondereinstellung für Anschluss eines DVI Displays ([[https://github.com/recalbox/recalbox-os/wiki/Connect-your-recalbox-to-a-DVI-screen-%28EN%29|Link]]):\\ +Gleicher Ablauf wie oben, jedoch kann die Lüftergeschwindigkeit im ON-Zustand über den Parameter "DC" eingestellt werden.\\ 
-Über [[#Einrichten|SSH verbinden]] und config.txt bearbeiten: +Getestetfunktioniert prinzipiellmacht aber Geräusche unabhängig von der FrequenzGlättung für Lüfter nötig -mehr Teile -mehr Bauraum nötigAufwand für den Nutzen nicht sinnvoll.
-<code>mount -o remountrw /boot +
-nano /boot/config.txt</code> +
-Nano ist ein minimalistischer Editor unter LINUX. Dort dann das hier auskommentieren: +
-<code>hdmi_drive=2</code> +
-Speichern mit STRG+O und beenden mit STRG+XAnschließend den RPI neustarten: +
-<code>reboot</code> +
-Am Fernseher hat diese Einstellung keine auswirkungen.+
  
-==== Boot-Video austauschen ==== +<file python fan_ctrl_pwm.py> 
-Im letzten release (Stand 4.3.2018) wurde ein Weihnachts-Start-Video eingeführt. Etwas spät für Februar ...\\ +# Fan bang-bang control with pwm 
-Infos aus dem [[https://forum.recalbox.com/topic/12671/recalbox-18-02-09-is-out/27|Forum]] entnommen.\\ +import os 
-Als erstes das Filesystem umstellen, Standard ist read-only. Und die Animation löschen/umbenennen: +import time 
-<code> +import RPi.GPIO as GPIO
-mount -o remount rw / +
-cd /recalbox/system/resources/splash/ +
-cp recalboxintro.mp4 recalboxintro_alt.mp4 +
-</code>+
  
-Das neue Video dann von Youtube runterladenumbenennen nach "recalboxintro.mp4und per pscp auf den Raspi kopieren+# Settings 
-<code+M_TIME = 5     # Measure time interval 
-pscp d:\pfad\recalboxintro.mp4 root@recalbox:/recalbox/system/resources/splash +ON_TEMP = 70   # upper temp value -> Fan turned on 
-</code> +OFF_TEMP = 60  # lower temp value -> Fan turned off 
-Dann des Raspi neustarten. (Der Scheibzugriff wird wieder umgestellt!)+FAN_PIN = 14   # Transistor for the cooling fan is connected to pin 14 
 +PWM_F = 1000   # PWM frequency in kHz. Change only when fan makes fancy noises 
 +DC = 50        # PWM duty cycle for the FAN (0 ... 100where 100 is the maximum) 
 + 
 +# setup GPIO 
 +GPIO.setwarnings(False) 
 +GPIO.setmode(GPIO.BCM) 
 +GPIO.setup(FAN_PIN, GPIO.OUT) 
 + 
 +# Activate PWM on the FAN_PIN 
 +p = GPIO.PWM(FAN_PIN, PWM_F) 
 + 
 +# funtion for reading the cpu temperatur and return it as float 
 +def getCPUtemp(): 
 +    res = os.popen('vcgencmd measure_temp').readline() 
 +    return (res.replace("temp=", "").replace("'C\n", "")) 
 + 
 +# main loop for the bang-bang control 
 +while True
 +    # get temperature 
 +    temp_float = float(getCPUtemp()) 
 + 
 +    try: 
 +        # if actual temp axceeded the upper value, turn fan on 
 +        if (temp_float ON_TEMP): 
 +            p.start(DC) 
 +        # if actual temp drop below the lower value, turn fan off 
 +        elif (temp_float < OFF_TEMP): 
 +            p.stop() 
 + 
 +    except
 +        # for debugging 
 +        print "ERROR" 
 + 
 +    # cycle time of the controlfor temperature it dont have to be fast 
 +    time.sleep(M_TIME) 
 +</file>
/hp/bi/ab/sf/www/wiki/data/attic/public/recalbox.1525697826.txt.gz · Zuletzt geändert: 07.05.2018 14:57 von se