Skip to content

@mega-yfue/eufy-sdk / VacuumMapPlane

Interface: VacuumMapPlane ​

A map frame — the vendor's Map, with its pixel plane decompressed.

Properties ​

cells ​

ts
readonly cells: Buffer;

The cell plane, decompressed: four cells per byte, two bits each, low bits first, in one run with no row padding. The cell at (col, row) is at bit (i & 3) * 2 of byte i >> 2, where i = row * width + col, and its value indexes MAP_CELL_VALUES.

Handed over packed rather than expanded. A large map is a megabyte once every cell is its own byte.


frame ​

ts
readonly frame: "full" | "incremental";

Whether this frame is the whole map or an amendment to the last one.

How an "incremental" frame is applied is not known. Nothing states whether it replaces a region, carries its own origin, or assumes the previous frame's geometry. A stale-but-correct map beats one assembled by a guessed rule.


geometry ​

ts
readonly geometry: VacuumMapGeometry;

index ​

ts
readonly index: number;

The frame's position in a sequence, as the device counts it. Zero on a lone frame.


mapId ​

ts
readonly mapId: number | undefined;

The device's id for this map. undefined when it sent none.


name ​

ts
readonly name: string | undefined;

The map's name, as the user set it. undefined when unnamed.


releases ​

ts
readonly releases: number;

The map's revision counter. It advances whenever the map is edited.

Independent and unofficial. Not affiliated with, endorsed by, or sponsored by Anker Innovations, Anker eufy, or eufy. "Anker eufy", "eufy" and "Anker" are trademarks of their respective owners. Use responsibly — rapid or failed logins can trigger captcha or temporary cooldowns.