Python API for ASMB6-iKVM remote management.
Project description
ASMB6 API
A Python interface for interacting with the ASMB6-iKVM remote management module.
This library provides programmatic access to authentication, session handling, hardware monitoring, and basic power management functions through the module’s HTTP management interface.
Overview
The ASMB6 API is designed as a lightweight Python wrapper around the module’s web-based management interface. It enables automation and integration into scripts or monitoring systems without relying on the WebUI.
The library provides:
- Session-based authentication
- Structured sensor objects
- Power and host state queries
- Programmatic power control operations
The goal is to expose a clean and predictable Python interface suitable for automation and monitoring tasks.
Features
Authentication & Session Management
- Login and logout support
- Session validation
- Explicit return codes for API calls
Hardware Monitoring
- Temperature sensors
- Voltage sensors
- Fan speed monitoring
- Power supply status
- Structured
Sensorscontainer with parsed values - Access to raw sensor payload for debugging
Host Control & Status
- Retrieve host power state
- Query power button status
- Power control operations (shutdown, power on, reset, cycle)
Installation
Clone the repository:
git clone https://github.com/Grifonice99/asmb6-api
cd asmb6-api
Install required dependency:
pip install requests
Basic Usage
from apmi import APMI
apmi = APMI("192.168.1.100")
# Authenticate
status = apmi.login("admin", "password")
if status != 0:
raise RuntimeError(f"Login failed with code {status}")
# Query host power state
powered_on = apmi.status()
print("Host is on" if powered_on else "Host is off")
# Retrieve sensors
sensors = apmi.sensors()
print(sensors.cpu1.reading)
# Logout
apmi.logout()
Design Notes
- Command execution methods return explicit status codes.
- Device state queries return domain-level values (e.g.,
bool). - Sensor data is exposed through structured objects rather than raw dictionaries.
- Raw sensor payload data remains accessible for debugging or inspection purposes.
Disclaimer
This project was developed and tested on an ASUS Z9PE-D16 motherboard equipped with an ASMB6-iKVM module.
Compatibility with other motherboards, firmware versions, or ASMB6 variants is not guaranteed. Behavior may differ depending on firmware revisions or platform-specific implementations.
Users are encouraged to test carefully in their own environment before relying on this library in production systems.
License
This project is licensed under the terms defined in the LICENSE file.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file asmb6_api-1.0.1.tar.gz.
File metadata
- Download URL: asmb6_api-1.0.1.tar.gz
- Upload date:
- Size: 5.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
5989995dff107c4907866c5942a20658f2f6e00c5f3802944a635bdd5e0be46d
|
|
| MD5 |
4be6f42cb1d7d6988d6e0a5a57305f5d
|
|
| BLAKE2b-256 |
5f39a1b45199d748ad3c76ae98dd1f3b7fc2b018157cc7e37a5b8e34e7644643
|
File details
Details for the file asmb6_api-1.0.1-py3-none-any.whl.
File metadata
- Download URL: asmb6_api-1.0.1-py3-none-any.whl
- Upload date:
- Size: 5.7 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.4
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
47f7281412bac9dd23496f3e6430394241a404963c20534cbe16c91ec51dc3eb
|
|
| MD5 |
c83ef1cb5133f8692de37f64472cdc3a
|
|
| BLAKE2b-256 |
65b0a74f8e932b1082564a175294235ff4404c77dd43946cc1bd4f8c8fc11e1b
|