omi icon indicating copy to clipboard operation
omi copied to clipboard

omi SDK ($1100)

Open kodjima33 opened this issue 9 months ago • 4 comments

omi needs an SDK so that developers could build directly with the omi device without our app

best SDK examples

SDKs we need:

  • python
  • swift
  • react native

How should it be for users (please disagree with me)

  1. install sdk (smth like pip install omi)
  2. connect device to computer / mobile phone
  3. Start streaming audio bytes and get battery level
  4. the user sees real-time transcription

-- thinh's comment: update the requirements https://github.com/BasedHardware/omi/issues/2073#issuecomment-2749976946

Minimum requirements(2):

  1. Build an SDK that can connect with the Omi device and perform the current actions that the Omi AI app has - focus on mic, button, battery. Code: https://github.com/BasedHardware/omi/blob/main/app/lib/services/devices/omi_connection.dart

  2. Build examples for using the SDK to:

  • Stream audio bytes from the Omi device and send it to the Deepgram API to receive the transcript.
  • Stream audio bytes from the Omi device and save it locally.
  • Trigger the button click (hold the button, check the Omi AI app with Omi device firmware 2.0.8) and capture the audio bytes, then send it to Deepgram to receive the transcript.
  • Listen to the battery level of the Omi device and notify the user if the battery level is < 20%.

Nice to have on the first version of omi SDK (v0.0.1):

  • Work with sdcard (storage)
  • Work with speaker, haptic
  • Work with accel(imu 6dots)

kodjima33 avatar Mar 25 '25 01:03 kodjima33

Minimum requirements(2):

  1. Build an SDK that can connect with the Omi device and perform the current actions that the Omi AI app has - focus on mic, button, battery. Code: https://github.com/BasedHardware/omi/blob/main/app/lib/services/devices/omi_connection.dart

  2. Build examples for using the SDK to:

  • Stream audio bytes from the Omi device and send it to the Deepgram API to receive the transcript.
  • Stream audio bytes from the Omi device and save it locally.
  • Trigger the button click (hold the button, check the Omi AI app with Omi device firmware 2.0.8) and capture the audio bytes, then send it to Deepgram to receive the transcript.
  • Listen to the battery level of the Omi device and notify the user if the battery level is < 20%.

Nice to have on the first version of omi SDK (v0.0.1):

  • Work with sdcard (storage)
  • Work with speaker, haptic
  • Work with accel(imu 6dots)

beastoin avatar Mar 25 '25 03:03 beastoin

The python SDK only works for macos due to pyobjc dependency.

PyObjC is specifically designed for macOS and does not support other operating systems like Linux or Windows.

Is this dependency required?

AnkushMalaker avatar Mar 26 '25 05:03 AnkushMalaker

This issue will need access to the omi device right ?

ibrahimnd2000 avatar Mar 26 '25 09:03 ibrahimnd2000

completed

kodjima33 avatar Mar 28 '25 06:03 kodjima33