Skip to content

Add support for Deebot N20 Combo (eup9ax)#1586

Open
Johan854 wants to merge 1 commit into
DeebotUniverse:devfrom
Johan854:patch-2
Open

Add support for Deebot N20 Combo (eup9ax)#1586
Johan854 wants to merge 1 commit into
DeebotUniverse:devfrom
Johan854:patch-2

Conversation

@Johan854

@Johan854 Johan854 commented May 9, 2026

Copy link
Copy Markdown

🧹 Device information

  • Device name: DEEBOT N20 COMBO
  • Device class: eup9ax
  • Model: N20_COMBO_INT
  • Country: FR
  • UILogicId: y2combo_ww_h_y2h5

❌ Problem

The device is detected but not supported:
Device class "eup9ax" not recognized

Result:

  • devices_.mqtt = []
  • device appears in not_supported
  • commands cannot be executed

🔧 Working workaround (tested and confirmed)

I managed to make the device fully working by cloning an existing hardware file.

Steps:

  1. Go to: site-packages/deebot_client/hardware

  2. Copy an existing hardware file: gwtll7.py → eup9ax.py

  3. Restart the script


✅ Result after workaround

  • Device is correctly detected ✅
  • MQTT configuration is populated ✅
  • Device no longer appears in not_supported

Example:

Capabilities found for eup9ax
Devices(mqtt=[DeviceInfo(...)], xmpp=[], not_supported=[])


✅ Working features (fully tested)

After applying the workaround, the following features work correctly:

  • ✅ Clean command (start cleaning)
  • ✅ Battery status
  • ✅ Position updates
  • ✅ Stats (area, time)
  • ✅ Charge / dock state
  • ✅ Network info
  • ✅ Device state (cleaning, docked)

Commands return success:

cmdName: clean → code: 0 (OK)


⚠️ Known limitations

  • MQTT unstable on Windows (aiomqtt limitation)
  • Requires:

asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())


💡 Proposed solution (simple)

The device appears fully compatible with an existing model.

👉 Suggested fix:

  • Add eup9ax as an alias of gwtll7
  • OR clone gwtll7.py into eup9ax.py

This alone is sufficient to make the device fully functional.


🤝 Why this should work

  • Same command set works without modification
  • Same JSON protocol
  • No additional capability adjustments required
  • Hardware behavior matches existing supported model

🙏 Additional notes

  • Happy to provide full logs if needed
  • Happy to test a patch or PR
  • Device is stable once recognized

Thanks for the project 👍

## 🧹 Device information

- Device name: DEEBOT N20 COMBO
- Device class: eup9ax
- Model: N20_COMBO_INT
- Country: FR
- UILogicId: y2combo_ww_h_y2h5

---

## ❌ Problem

The device is detected but not supported:
Device class "eup9ax" not recognized

Result:
- devices_.mqtt = []
- device appears in `not_supported`
- commands cannot be executed

---

## 🔧 Working workaround (tested and confirmed)

I managed to make the device fully working by cloning an existing hardware file.

### Steps:

1. Go to:
site-packages/deebot_client/hardware
2. Copy an existing hardware file:
gwtll7.py → eup9ax.py

3. Restart the script

---

## ✅ Result after workaround

- Device is correctly detected ✅
- MQTT configuration is populated ✅
- Device no longer appears in `not_supported` ✅

Example:


Capabilities found for eup9ax
Devices(mqtt=[DeviceInfo(...)], xmpp=[], not_supported=[])

---

## ✅ Working features (fully tested)

After applying the workaround, the following features work correctly:

- ✅ Clean command (start cleaning)
- ✅ Battery status
- ✅ Position updates
- ✅ Stats (area, time)
- ✅ Charge / dock state
- ✅ Network info
- ✅ Device state (cleaning, docked)

Commands return success:


cmdName: clean → code: 0 (OK)

---

## ⚠️ Known limitations

- MQTT unstable on Windows (aiomqtt limitation)
- Requires:


asyncio.set_event_loop_policy(asyncio.WindowsSelectorEventLoopPolicy())

---

## 💡 Proposed solution (simple)

The device appears fully compatible with an existing model.

👉 Suggested fix:

- Add `eup9ax` as an alias of `gwtll7`
- OR clone `gwtll7.py` into `eup9ax.py`

This alone is sufficient to make the device fully functional.

---

## 🤝 Why this should work

- Same command set works without modification
- Same JSON protocol
- No additional capability adjustments required
- Hardware behavior matches existing supported model

---

## 🙏 Additional notes

- Happy to provide full logs if needed
- Happy to test a patch or PR
- Device is stable once recognized

Thanks for the project 👍
@edenhaus edenhaus changed the title Create eup9ax.py Add support for Deebot N20 Combo (eup9ax) May 28, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant