Skip to main content
Glama
bmw-ediabas

bmw-ediabas

by ChizimInc

bmw-mcp

Instrumente de diagnostic BMW (EDIABAS, motor N46 / calculator Bosch MEV9) în Python, doar citire:

  • server.py: server MCP (bmw-ediabas) care lasă un asistent AI să citească date de la calculatoarele mașinii.

  • bmwdiag/: logger cu interfață web locală (profile TOML, salvare automată în CSV, marcaje și steaguri) pentru a înregistra date la rece și la cald.

Interfața și mesajele sunt în limba română.

Avertisment

Proiectul e făcut pentru citire. Garda din bmwdiag/guard.py și server.py permite doar joburi de tip STATUS_*, *_LESEN, IDENT, INFO, LESE_* și refuză orice conține LOESCH, SCHREIB, STEUERN, FLASH, PROGRAM, RESET, SET_, WRITE, ERASE, DELETE. Nu slăbi garda: o scriere greșită într-un calculator poate strica mașina. Folosești codul pe propria răspundere (vezi licența).

Related MCP server: Remapdb MCP Server

Cerințe

  • Windows, cablu K+DCAN (de ex. cu cip FTDI) și EDIABAS instalat separat (în C:\EDIABAS). EDIABAS și fișierele SGBD sunt proprietatea BMW și NU fac parte din acest repo.

  • Python 3.13 pe 32 de biți (api32.dll din EDIABAS e pe 32 de biți). Nu merge cu Python pe 64 de biți.

  • Pachetele: pydiabas și mcp. mcp se instalează cu --no-deps, pentru că cryptography nu are pachet pentru Python pe 32 de biți; setup.bat face tot (mediu virtual .venv, pydiabas, mcp și dependențele lui).

Pornire rapidă

setup.bat                 :: creează .venv și instalează dependențele
start_logger.bat fake     :: interfața web cu date simulate, fără mașină (http://127.0.0.1:8765)
start_logger.bat          :: mașina reală (cablu în priza OBD, contact pus)

Datele se salvează în Documents\bmw-data\sesiuni\.... Folderul se poate schimba cu variabila de mediu BMW_DATA_DIR sau cu --date.

Cât timp loggerul înregistrează, nu folosi serverul MCP: EDIABAS acceptă o singură sesiune pe port.

Server MCP

Serverul rulează cu .venv\Scripts\python.exe server.py (transport stdio). Variabilele EDIABAS_BIN și EDIABAS_ECU pot înlocui căile implicite C:\EDIABAS\Bin și C:\EDIABAS\ECU. Unelte: ediabas_check, list_ecus, list_jobs, describe_job, read_faults, run_job.

Teste

.venv\Scripts\python.exe -m unittest discover -s tests -t .

TMODE (ECU simulat din EDIABAS) permite testul de integrare fără mașină.

Licență

MIT, vezi LICENSE.

Tool Schema Changelog

Recent tool additions, removals, and schema changes observed during successful MCP inspections.

Loading tool schema changelog…

    Related MCP Connectors

    Related MCP Servers

    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables LLMs to interact with vehicle CAN bus and OBD-II data through a simulated ECU environment. Provides tools for reading frames, decoding messages via DBC files, monitoring signals, and querying automotive diagnostics without requiring physical hardware.
      23 PyPI
      26
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Connects AI tools to Remapdb vehicle tuning data, enabling search and retrieval of manufacturers, models, engines, and tuning information.
      8 npm
      MIT
    • A
      license
      Not graded
      quality
      B
      maintenance
      Enables AI-powered automotive diagnostics by connecting LLMs to vehicle ECUs over UDS/CAN, indexing workshop manuals locally, and augmenting with web search, while enforcing a human-in-the-loop approval gate for any write operations.
      MIT
    • A
      license
      Not graded
      quality
      C
      maintenance
      Enables AI agents to control TriCore/AURIX debug sessions, including workspace loading, target connection, flashing, run control, breakpoints, and reading variables, registers, memory, and call stacks via the UDE Object Model.
      MIT