Introducing Oh! smart vibrator

Meet Oh!

Firmware 4 is here!

·

Ohdoki is glad to announce a slow rollout to our newest Firmware that aims to enhance the experience with our devices even further, Firmware 4 is now available to users!

Introducing Firmware 4 Beta

In this text, you will be able to find a log with details on the new features, changes and more we have done with this new version.

But before that, a quick word from one the team members directly involved with it’s development!

We are excited to introduce a new firmware version that marks a significant milestone in our company’s growth. As we evolve from a startup to an established player with multiple innovative products, this firmware will serve as the foundation for our future. Moving beyond a single product, our new lineup brings unique solutions to an industry long overdue for innovation. The firmware has been designed with ease and efficiency in mind, simplifying driver management for developers while streamlining build processes and rollouts through automation.

In response to feedback from our development community, we’ve added new features and laid the groundwork for future enhancements. This firmware is part of a larger transition to a new platform, which also includes updates to our backend infrastructure, APIs, app portal, and onboarding process—all built from the ground up to support our expanding ecosystem. The transition to the new platform will happen gradually, and we’re starting by inviting all Handy users to update via our new app portal: new.handyfeeling.com.

Changes in Operation

  • Persistent Boot mode setting
    • You can now select the device’s startup Online mode:
      • WiFi
      • BLE (Bluetooth)
      • WiFi+BLE
      • Legacy BLE
      • Offline
  • No need to single-click the WiFi button to go online after setting the Boot mode
    • Long-pressing the WiFi button will always start BLE and toggle WiFi
    • The WiFi button’s single-click is now available for other uses, hence its renaming to “Action” button
      • Developers can integrate this button into their apps
      • In the future, users can program the button to trigger device behaviors
  • Simplified onboarding
    • We’re lowering the barrier to online device use. With FW4, we’ve introduced tools to streamline the setup process.
    • Note: You must use the “Handy onboarding” app (iOS/Android/web)

Messaging

  • Devices now send notifications for state changes.
    • Simplifies app logic by eliminating the need for constant information polling
    • Developers can make their apps react to unused button mappings
      • Single click on ACTION button is currently unused on all devices
  • Switched from JSON to protobuf communications
    • Significantly reduced message size and memory usage
  • Message bundling
    • Multiple messages can be combined
    • Reduces message latency and speeds up applications
    • Example: Moving the Handy to a specific pattern can now be done in one message bundle:
      • Set up HSP mode
      • Add points to the buffer
      • Play HSP

New Modes

  • Audio Mode
    • Connect as a Bluetooth headset and control the motor based on audio input.
      • Only supports devices with external memory (currently only Oh)
  • Handy Vibrate Protocol (HVP)
    • Only supports devices with external memory (currently only Oh)
    • Supports LRA, ERM, and slider devices
  • Handy Streaming Protocol (HSP)
    • “One mode to rule them all”
    • Stream points to a buffer
    • Add points while playing
    • Enables new use cases such as:
      • Games
      • Live data from sensor input
    • Replaces HSSP
      • HSSP is in the new API but uses HSP under the hood
      • Reduces HSSP setup time from seconds to milliseconds

New features

  • Battery handling
    • Now supports devices that run on battery
  • HMI control
    • You can now manipulate the device’s Human-Machine Interface (HMI)
      • Currently limited to the RGB LED

Other improvements

  • Handy Direct Streaming Protocol (HDSP)
    • Added stop command
    • Implemented state change notification
    • Introduced control capability using XaVp
  • Enhanced timing functions to improve video sync accuracy

Under the Hood

  • FW build infrastructure
    • Automatic testing
    • Automatic distribution
    • Opt-in rollouts
    • Rollout filters
      • Can target hardware models, country, or city
  • Hardware variant handling
    • Support for Oh and future new hardware projects
    • Simplified config system that allows building different hardware configurations from one project
  • OTA updates over WebSocket and Protocol Buffers
  • Switched from Bluedroid to NimBLE to save device memory
    • Now possible to use the device with Wi-Fi and Bluetooth simultaneously
      • Simplified onboarding
  • Doubled WebSocket buffer size

API v3

All these firmware changes have contributed to a massive improvement to the API. The most notable addition is the SSE event notification. You can read more about the changes by clicking this link for our developer documentation