Skip to content
This repository was archived by the owner on Dec 29, 2022. It is now read-only.
This repository was archived by the owner on Dec 29, 2022. It is now read-only.

How to change TX power level on eddystone-UID protocol #252

@SimonCrA

Description

@SimonCrA

HI, Greetings.

I am emulating a beacon with ESP32, and i want to change TX power level to reach differents distances. how can i change TX power level?

I've already tried with estimote beacons and with them I can change TX power level from -18dbm to 4dbm. But i haven't be able to do it with ESP32 chip.

I am doing this with Eddystone protocol, more specific Eddystone-UID.

EddystoneUid::EddystoneUid(const std::string& nid, const std::string& bid) { frame.len16bitServiceUuidPart = 0x03; // <- 1 (data type value) + 2 (16-bit Eddystone UUID) frame.type16bitServiceUuid = 0x03; // 16-bit Service UUID frame.eddystoneUuid = EDDYSTONE_SERVICE_UUID; frame.lenServiceDataPart = 0x17; // Eddystone-UID full length (23bytes) frame.typeServiceData = 0x16; // Service Data frame._eddystoneUuid = EDDYSTONE_SERVICE_UUID; frame.frameType = EDDYSTONE_FRAME_TYPE_UID; frame.ranging = 0x00; // TODO: ranging data memset(frame.nid, 0, sizeof(frame.nid)); memset(frame.bid, 0, sizeof(frame.bid)); memset(frame.rfu, 0, sizeof(frame.rfu)); setBeaconId(nid, bid); }

That example code shows eddystone-uid frame, but I don't know how to change the TX power level.

in the line.

frame.ranging = 0x00; // TODO: ranging data

This is to change de level of RSSI at 1 meter, It isn't what i want.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions