Dieser Artikel wurde archiviert, da er - oder Teile daraus - nur noch unter einer älteren Ubuntu-Version nutzbar ist. Diese Anleitung wird vom Wiki-Team weder auf Richtigkeit überprüft noch anderweitig gepflegt. Zusätzlich wurde der Artikel für weitere Änderungen gesperrt.
m4api ist ein Programm (CLI und API) für die Überwachung und die Konfiguration des Mini-Box M4-ATX-Netzteils . Dieses 250W DC-DC Breiteingangsbereichs-(6-30V)-ATX-Netzteil besitzt einen Mikrocontroller, der über USB mit dem Computer verbunden werden kann. Damit können die Temperatur und einige Spannungswerte ausgelesen werden. Außerdem können über die USB-Verbindung einzelne Einstellungen des Mikrocontrollers im Netzteil auf das Einsatzgebiet (z.B.Car-PC, Tischnetzteil, verschiedene Batterietypen) angepasst werden.
Fremdsoftware kann das System gefährden.
Anmerkung: Dieses Programm ist nur für Originalgerätehersteller oder fortgeschrittene Benutzer gedacht. Mini-Box.com und der Autor dieses Programms haftet nicht für etwaige Schäden an dem Netzteil oder weiteren Computerteilen, die durch die Benutzung dieses Programms entstehen. (M4-ATX-Einstellungen können verändert werden)
m4api benötigt einen C-Compiler und die libusb-dev 0.1.x zum Kompilieren. Außerdem kann noch das git-core-Paket installiert[1] werden, wenn der Quellcode darüber bezogen wird.
build-essential
git-core (main)
libusb-dev ()
mit apturl
Paketliste zum Kopieren:
sudo apt-get install build-essential git-core libusb-dev
sudo aptitude install build-essential git-core libusb-dev
Der aktuelle Quellcode wird mittels git
[3] im Terminal[2] heruntergeladen:
git clone git://ram.umd.edu/bits/m4api.git ~/m4api
Alternativ kann der Quellcode von m4api bei mini-box bzw. ram.umd.edu heruntergeladen werden und dann ins Verzeichnis ~/m4api entpackt[6] werden.
Man startet ein Terminal[2] und wechselt in das Verzeichnis, in dem der Quellcode gespeichert ist und startet make
[5] mit dem gewünschtem Argument:
cd ~/m4api make all
Zur Auswahl stehen all
, m4
, example
und zum Entfernen der kompilierten Programme clean
.
Die Initialisierung des Gerätes benötigt Root-Rechte.
Überwachen der Temperatur und Spannungswerte mit m4
:
sudo ./m4 -diag sudo ./m4 -diag loop
Die Ausgabe beinhaltet folgende Werte:
VIN: 13.70 IGN: 0.00 33V: 3.28 5V: 4.94 12V: 12.05 TEMP: +30
VIN
= Eingangsspannung, IGN
= Zündspannung, 33V/5V/12V
= 3,3V/5V/12V Leitungen, TEMP
= Temperatur des Netzteils
Die Ausgabe von m4
mit dem Parameter -diag loop
gibt die fortlaufenden Werte mit einem Zeitstempel aus.
Anzeige aller Einstellungen des Netzteils:
sudo ./m4 -config
M4-ATX-Einstellungen | |||
m4 Argument | Einheit | Option | Erklärung |
IGN_HIGH | V | Ignition HIGH limit | Above this voltage IGN is considered ON |
IGN_LOW | V | Ignition LOW limit | Below this voltage IGN is considered OFF |
IGN_DBC | ms | Ignition debounce | Ignition filter de-bouncing at PSU startup |
PSU_DELAY | sec | Delay before PSU startup | Initial startup delay to avoid re-cranking problems |
VIN_MIN_START | V | Min. VIN voltage at PSU startup | Input voltage STARTUP ZONE threshold [11.24V] |
VIN_MIN_ON | V | Min. VIN voltage while all rails are on | Input voltage RUNNING ZONE threshold [7.02V] |
VIN_MIN_5V | V | Min. VIN voltage while 5VSB is on | Input voltage STOPPING ZONE threshold [11.24V] |
VIN_MAX | V | Max. allowed VIN voltage | Input voltage HIGH SHUTDOWN threshold [29.86V] |
12V_MAX | V | Max. limit for 12V | 12V Rail MAX voltage threshold |
12V_MIN | V | Min. limit for 12V | 12V Rail MIN voltage threshold |
5V_MAX | V | Max. limit for 5V | 5V Rail MAX voltage treshold |
5V_MIN | V | Min. limit for 5V | 5V Rail MIN voltage threshold |
33V_MAX | V | Max. limit for 3.3V | 3.3V Rail MAX voltage threshold |
33V_MIN | V | Min. limit for 3.3V | 3.3V Rail MIN voltage threshold |
12V_TIME | ms | 12V rail startup time | 12V Rail STARTUP time |
33V_TIME | ms | 3.3V rail startup time | 3.3V Rail STARTUP time |
PWRSW | ms | PWRSW 'push-down' time | How long the ON/OFF button is pressed down |
PSU_ON_TIME | tries | Try to turn ON the PSU for N time | Startup RETRY number (try n time to startup the motherboard) |
ON_DELAY | sec | Delay between ON tries | Interval between two adjacent startup retry |
PSU_OFF_TIME | tries | Try to turn OFF the PSU for N time | Shutdown RETRY number (try n time to shutdown the motherboard) |
OFF_DELAY | sec | Delay between OFF tries | Interval between two consecutive shutdown retries |
EMG_TIME_5VSB | sec | Emergency shutdown timer for 5VSB | 5VSB OFF timer (EMERGENCY) in case ON/OFF pulse not detected by motherboard |
EMG_TIMER | sec | Emergency shutdown timer | Rails OFF timer (EMERGENCY) in case ON/OFF pulse not detected by motherboard |
PS_ON_0 | ms | PS ON 0 threshold | PSON 0 stage threshold value |
PS_ON_1 | ms | PS ON 1 threshold | PSON 1 stage threshold value |
THUMP | ms | Thump timeout | THUMP timeout, switching off the audio amplifier during motherboard startup/shutdown |
TEMP_MAX | °C | Max. temperature | Maximum temperature |
TEMP_MIN | °C | Min. temperature | Minimum temperature |
EMG_OFF_MODE | mode | Emergency OFF mode selector | Emergency OFF mode (0 = immediate turn OFF the motherboard, 1 = keep sending ON/OFF pulses to M/B) |
5V_SBY_DLY | ms | 5V standby PSW-on delay | Delay between 5v Standby startup and Power Switch On Pulse |
OFF_DELAY_0 | hh:mm:ss | Off-delay MODE 0 | Rails OFF timer value in MODE 0 (max. 17:59:59 or Never) |
OFF_HARD_0 | hh:mm:ss | Hard-off MODE 0 | 5VSB OFF timer value in MODE 0 (max. 17:59:59 or Never) |
OFF_DELAY_1 | hh:mm:ss | Off-delay MODE 1 | Rails OFF timer value in MODE 1 (max. 17:59:59 or Never) |
OFF_HARD_1 | hh:mm:ss | Hard-off MODE 1 | 5VSB OFF timer value in MODE 1 (max. 17:59:59 or Never) |
OFF_DELAY_2 | hh:mm:ss | Off-delay MODE 2 | Rails OFF timer value in MODE 2 (max. 17:59:59 or Never) |
OFF_HARD_2 | hh:mm:ss | Hard-off MODE 2 | 5VSB OFF timer value in MODE 2 (max. 17:59:59 or Never) |
OFF_DELAY_3 | hh:mm:ss | Off-delay MODE 3 | Rails OFF timer value in MODE 3 (max. 17:59:59 or Never) |
OFF_HARD_3 | hh:mm:ss | Hard-off MODE 3 | 5VSB OFF timer value in MODE 3 (max. 17:59:59 or Never) |
OFF_DELAY_4 | hh:mm:ss | Off-delay MODE 4 | Rails OFF timer value in MODE 4 (max. 17:59:59 or Never) |
OFF_HARD_4 | hh:mm:ss | Hard-off MODE 4 | 5VSB OFF timer value in MODE 4 (max. 17:59:59 or Never) |
OFF_DELAY_5 | hh:mm:ss | Off-delay MODE 5 | Rails OFF timer value in MODE 5 (max. 17:59:59 or Never) |
OFF_HARD_5 | hh:mm:ss | Hard-off MODE 5 | 5VSB OFF timer value in MODE 5 (max. 17:59:59 or Never) |
OFF_DELAY_6 | hh:mm:ss | Off-delay MODE 6 | Rails OFF timer value in MODE 6 (max. 17:59:59 or Never) |
OFF_HARD_6 | hh:mm:ss | Hard-off MODE 6 | 5VSB OFF timer value in MODE 6 (max. 17:59:59 or Never) |
OFF_DELAY_7 | hh:mm:ss | Off-delay MODE 7 | Rails OFF timer value in MODE 7 (max. 17:59:59 or Never) |
OFF_HARD_7 | hh:mm:ss | Hard-off MODE 7 | 5VSB OFF timer value in MODE 7 (max. 17:59:59 or Never) |
RESET | Reset to factory defaults | Reset all settings to factory defaults (results visible only on next restart of the M4Atx) |
Zum Überprüfen bzw. Setzen einzelner Argumente (auf eigene Gefahr):
sudo ./m4 -config VIN_MIN_ON sudo ./m4 -config VIN_MIN_ON 9.55
Bei der Kompilierung mittels make all
wird im Verzeichnis ~/m4api das Skript example
erstellt.
Bitte beachten: Bei der Ausführung des Beispiels werden die Werte VIN_MIN_ON auf 10 gesetzt und IGN_DBC um 10 erhöht (Werte aus example.c).
Diese Revision wurde am 29. Dezember 2011 15:31 von Heinrich_Schwietering erstellt.