Skip to main content
W
Warsha Everything Mobile
← All Products / Warsha BLE Studio for macOS
Emulator Direct download

Warsha BLE Studio for macOS

Turn your Mac into a Bluetooth LE peripheral and explore the devices around you, with the editor, the runtime and the radio on one machine.

Free Pro $29.99 once · Launch price

Pro launches at $29.99 for a one-time license for every 1.x release, on up to two Macs, with a 14-day trial. Compare plans ↓

Signed and notarized by Apple · Apple silicon, macOS 14 or newer

Free

Everything you need to stand in for real hardware

  • Ready-made peripherals such as Heart Rate, Battery, Glucose and Current Time
  • The Treadmill: four linked peripherals whose speed, heart rate and distance move together
  • On-air over your Mac's Bluetooth, or in local simulation
  • Live controls, inspector and event log
  • Explore: scan and connect to nearby devices, with decoded values, recordings and traces
  • Write, import and export scripts in the built-in editor

Pro

$29.99 launch price, once for every 1.x release, with a 14-day trial

  • Run your own JavaScript peripherals
  • Behavior hooks that steer a composed device's simulation
  • Every composed device the Mac can host, including Indoor Bike, Rower and BLE-MIDI
  • The GATT profile library and import from URL
  • Networking, storage and state machines for scripts
  • Real-time shaping and fault injection

AI automation (MCP)

In development for the first release

  • Connect an AI assistant that supports the Model Context Protocol
  • It writes a script, runs it in local simulation, reads the logs and state, and revises
  • You approve every session, and can take back control at any time
  • Simulation only: it never touches the radio or a real device

The device your app talks to, on the Mac you already work on

Building an app that connects to a heart-rate strap, a treadmill or a fitness machine usually means buying the hardware first. Warsha BLE Studio makes your Mac that hardware: it advertises as the peripheral over the Mac’s own Bluetooth, serves its GATT services, and lets your app connect to it like the real thing. It works the other way round too: Explore scans for the devices around you and connects to them.

On a Mac everything sits on one machine. The editor, the runtime and the radio share a window, so there is nothing to deploy: save a script and run it.

A 35-second tour. AI automation is in development. Playing it loads the video from YouTube.

Run a ready-made device

Pick a peripheral from the catalog and press Run. The free catalog covers everyday single peripherals such as Heart Rate, Battery, Glucose and Current Time, and the Treadmill: Fitness Machine, Heart Rate, Battery and Device Information linked into one device, so raising the speed makes the heart rate climb and the distance add up.

Each target can run in two places. On-air BLE advertises over the Mac’s Bluetooth for a real central to find. Local simulation runs the same peripheral inside the app, with no Bluetooth permission and nothing to pair, which is the quickest way to try something out. Starting values such as speed, battery level or charging state are saved per target and applied to the next run.

Explore the devices around you

Explore is the other side of the radio. Scan for nearby devices, see what each one advertises, and follow its signal over time. Connect to read, write and subscribe: standard values are decoded, and you can describe a custom characteristic’s bytes once so its values read as named fields.

To repeat a test, record a sequence of actions and replay it, export a trace, or compare two runs side by side. Point Explore at Local simulation and it finds a peripheral running in the app itself, so you can try the whole loop with no second device.

macOS asks once for Bluetooth access. It never reveals a device’s Bluetooth address, so the identifier Explore shows is one macOS assigns for this Mac only. What Explore finds stays on the Mac unless you export it.

Script your own peripheral Pro

When the catalog does not have the device you need, write it. A script defines services and characteristics in JavaScript and answers reads, writes and subscriptions itself. It runs in a sandbox: networking and storage are off until you allow them for that script.

The editor is built into the app, next to the session it drives. Choose where a script runs, save, and it is running; control variables declared in the script appear as live controls while it does. A behavior hook attached to a composed device can react to what a central writes and steer its simulation.

Let an AI assistant do the loop In development

The first release adds a local Model Context Protocol server, so an AI assistant that supports MCP can work with Studio directly. It can look up the profile catalog, write a peripheral script, run it in local simulation, read the logs and the live state, then revise and run it again, the same loop you would follow by hand.

Studio stays in charge of what the assistant may do:

  • You approve each session. Studio asks before an assistant takes control, and a banner shows while it has it. Take back control ends the session at once and stops what it started.
  • One controller at a time. While the assistant works, the workspace shows what it is doing but does not accept edits, so you and the assistant never change the same thing at once.
  • Simulation only. The assistant’s runs stay inside the app. It never advertises on the radio or connects to a real device.
  • No purchases or settings. It never opens a checkout, starts a trial day or changes your saved preferences. Running a script needs Pro, as it does by hand, and a script’s networking or storage still needs your approval.

Everything runs on your Mac: the server is part of the app and is not reachable from the network. Which assistants are supported will be listed here at release.

What a Mac can’t broadcast

macOS’s Bluetooth stack does not let an app advertise manufacturer data or service data, or offer the HID service. That rules out three kinds of target when running on-air from a Mac:

  • Beacons (iBeacon, AltBeacon, Eddystone): their payload is not broadcast.
  • HID Keyboard and HID Mouse: they cannot run on a Mac.
  • Any custom peripheral whose advertising relies on manufacturer or service data.

The catalog marks the affected entries. Everything else, including the composed fitness devices, runs on-air from the Mac. Warsha BLE Studio for Android broadcasts all of them.

Plans

PlanUS price
Free$0Explore, ready-made single peripherals and the Treadmill, with the inspector
Pro 1.x license$29.99 once (launch price)14 active-use days of free trial
  • One purchase, every 1.x release. The license is for one user and permanently unlocks Pro in every eligible 1.x release, on up to two Macs at a time: a desktop and a laptop. A future 2.x family may be a separate purchase.
  • A trial that counts the days you use it. You start the trial when you choose to, and a day is used only when a Pro run starts. Several runs on the same day count once, and an expiring trial never stops a session that is running.
  • Your files stay yours. Without Pro, scripts stay available to view, edit, import and export.

Buy Pro in the app under Settings → Plan & License, or buy a license here. The key arrives by email; activate it in the same place.

The launch price has no scheduled end date or automatic increase. A later price change applies only to new purchases and never changes a license you already own.

US prices are shown before any applicable sales tax. The checkout shows the price, currency and tax for your region before you pay. The pricing and licensing FAQ has the details.

Availability

Warsha BLE Studio for macOS is a direct download from this site, signed and notarized by Apple. Open the download and the app offers to move itself to Applications; from then on it updates itself.

It needs a Mac with Apple silicon and macOS 14 Sonoma or newer.

Getting started · Explore · Scripting quickstart