Skip to main content

A Bluetooth scale integration for coffee machines

Project description

pyfelicita

Felicita integration package for python

Example code:

import asyncio
from pyfelicita import Felicita

async def main():
    addresses = await Felicita.find_felicita_devices()
    
    if not addresses:
        print("No devices found")
        return
        
    address = addresses[0]
    
    client = await Felicita.create(address)
        
    if not client:
        print("Failed to connect to the scale")
        return
    
    try:
        await client.set_weight_and_timer_mode()
        await asyncio.sleep(0.1)
        await client.tare()
        await asyncio.sleep(0.1)
        await client.reset_timer()
        await asyncio.sleep(0.1)
        await client.start_timer()
        
        while client.is_connected():
            await asyncio.sleep(0.1)
            print(
                f"Weight: {client.current_weight} {client.current_scale_unit}, "
                f"Battery: {client.current_battery_level:.2f}%"
            )
            
            if(client.is_timer_running):
                print(f"Time elapsed: {client.timer_time_elapsed}")
                
            if(client.current_weight > 69):
                await client.stop_timer()
                print("Criteria met, stopping program")
                break
                    
    finally:
        if client.is_connected():
            await client.disconnect()
        else:
            print("Scale stopped responding")

asyncio.run(main())

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pyfelicita-0.1.3.tar.gz (4.3 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

pyfelicita-0.1.3-py3-none-any.whl (4.8 kB view details)

Uploaded Python 3

File details

Details for the file pyfelicita-0.1.3.tar.gz.

File metadata

  • Download URL: pyfelicita-0.1.3.tar.gz
  • Upload date:
  • Size: 4.3 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for pyfelicita-0.1.3.tar.gz
Algorithm Hash digest
SHA256 98d4e4c92d91ec59660d720f121cbd15b49f7aa60b10e334de8de9ab7794149e
MD5 e13ea4352fe0f683704ed120264a1085
BLAKE2b-256 00da7f4bcf2083f869015a92af02ba0bb324ac18b5b0fb74f8b5c621867d6c7c

See more details on using hashes here.

File details

Details for the file pyfelicita-0.1.3-py3-none-any.whl.

File metadata

  • Download URL: pyfelicita-0.1.3-py3-none-any.whl
  • Upload date:
  • Size: 4.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/5.1.1 CPython/3.12.7

File hashes

Hashes for pyfelicita-0.1.3-py3-none-any.whl
Algorithm Hash digest
SHA256 042da1c9fc9884b8af33fa834a6f5dd2f9a7c518bf30ecae62d0f3164036d991
MD5 567e6b71a4ef55512b3b3492306f4efe
BLAKE2b-256 41f43d3b3a978c0e0afcd76c1b9b162736297f3f044ef4964144e563c02e880c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page