Dieser Artikel wurde archiviert. Das bedeutet, dass er nicht mehr auf Richtigkeit überprüft oder anderweitig gepflegt wird. Der Inhalt wurde für keine aktuell unterstützte Ubuntu-Version getestet. Wenn du Gründe für eine Wiederherstellung siehst, melde dich bitte in der Diskussion zum Artikel. Bis dahin bleibt die Seite 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 ()
Befehl zum Installieren der Pakete:
sudo apt-get 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).