Usually this issue occurs when the scale pairs, but then no data is received. Focus on last red sentence, timing issue. 



1. Check Registration Status:

    - In the `didDiscoverPeripheral` callback, use `kCBAdvDataManufacturerData` to check if the scale device is already registered.

 

2. Handle Registration:

    - If the scale device is not registered, the SDK sends a registration request and waits for a registration response.

    - If the scale device is already registered, the SDK waits for a Scale Login request.

 

3. Post-Registration Process:

    - After successful registration, the scale device sends a login request.

    - The app accepts this request and replies back.

 

4. User Binding:

    - The app sends a Bind User request.

    - The scale device accepts this request and replies back (this is done only once during binding).

 

5. Set Time:

    - The app sends a Set Time UTC request.

    - The scale device accepts this request and replies back.

 

6. Initialisation:

    - The scale device sends an Init request.

    - The app accepts this request and replies back.

 

7. Data Synchronisation:

    - The app sends a Data Sync request.

    - The scale device accepts this request and replies back.

    - The scale device starts the data synchronization process.

 

Add a microsecond delay between operations to ensure proper synchronization.