mcpbeat

Matlab Simulate Bluetooth Network

matlab/matlab-simulate-bluetooth-network

>

9k tokens
context cost
the whole folder, loaded on every use
7
files
instructions only
0
copies elsewhere
how many repositories repackaged it
865
stars on the repo
on the repository, not the skill itself

Install

one command, takes just this skill from the repository
npx skills add https://github.com/matlab/matlab-agentic-toolkit --skill matlab-simulate-bluetooth-network

The instruction itself

9 sections, as written by the author

Bluetooth System-Level Simulation

Entry point for all Bluetooth system-level simulation. All Bluetooth simulations use sim = wirelessNetworkSimulator.init and follow the workflow defined in matlab-simulate-wireless-network (simulator init, traffic, mobility, instrumentation, addNodes, run).

When to Use

  • BLE ACL point-to-point or star network connections
  • LE Audio unicast with CIS/CIG (stereo speakers, hearing aids)
  • BLE GAP connection establishment (advertising, scanning, connection timing)
  • Classic BR/EDR piconets with ACL data or SCO voice
  • BLE + BR/EDR coexistence with adaptive frequency hopping
  • Any simulation using bluetoothLENode, bluetoothNode

When Not to Use

  • Non-Bluetooth wireless simulations (use matlab-simulate-wireless-network instead)
  • PHY-layer or link level Bluetooth waveform generation, receiver analysis or BER analysis
  • Generic simulator setup, traffic models, or mobility (use matlab-simulate-wireless-network)

Scenario → Reference Routing

| Scenario | Reference |

|----------|-----------|

| BLE realistic connection setup (advertising, scanning, GAP) | references/ble-gap-connection.md |

| BLE point-to-point data, star network, ACL connections | references/ble-connection.md |

| LE Audio unicast (stereo speakers, hearing aids, CIS/CIG) | references/ble-cis.md |

| Classic Bluetooth earbuds, SCO voice, ACL data | references/bluetooth-bredr.md |

| BLE + BR/EDR coexistence, adaptive frequency hopping | references/bluetooth-coexistence.md |

| Capture and visualization (PCAP, IQ, event tracing, traffic viewer) | See matlab-simulate-wireless-network skill |

Node Roles

  • BLE (ACL, CIS): bluetoothLENode("central"), bluetoothLENode("peripheral")
  • BR/EDR: bluetoothNode("central"), bluetoothNode("peripheral") — max 7 peripherals per central

Traffic Attachment Rules

addTrafficSource(sourceNode, traffic, ...):

  • ACL/CIS/BR/EDR: DestinationNode=peer required. CIS also needs CISConfig=cfgCISOut.
  • BR/EDR SCO: No traffic call — implicit via SCOPacketType in connection config.

kpi() Availability

| Topology | "throughput" | "latency" | "PLR" / "PDR" | Layer |

|----------|:-:|:-:|:-:|-------|

| BLE ACL | LL only | App only | Both LL and App | "LL" or "App" |

| BLE CIS | LL only | App only | Both LL and App | "LL" or "App" |

| BR/EDR | Baseband | — | Baseband | "Baseband" |

Connection/Configuration Setup

| Topology | Config Object | Function | Notes |

|----------|--------------|----------|-------|

| BLE ACL | bluetoothLEConnectionConfig | configureConnection(cfg, central, peripheral) | Per-peripheral in loop; unique AccessAddress per connection |

| BLE CIS | bluetoothLEConnectionConfig + bluetoothLECISConfig | [~, cfgCISOut] = configureConnection(cfg, central, peripheral, CISConfig=cfgCIS) | Pass cfgCISOut to addTrafficSource(..., CISConfig=cfgCISOut) |

| BR/EDR | bluetoothConnectionConfig | configureConnection(cfg, central, peripherals) | Single call with vector of peripherals |

Common Mistakes

  • bluetoothNode for BLE (or vice versa): BR/EDR = bluetoothNode, BLE = bluetoothLENode
  • Wrong kpi Layer: BLE throughput → "LL", BLE latency → "App", BR/EDR → "Baseband" only
  • Properties locked after run(): Node/connection properties cannot change mid-sim. Use updateChannelList for mid-sim channel updates.
  • configureConnection with peripheral vector for BLE: Must call per-peripheral in loop (BR/EDR accepts vector)
  • Unique AccessAddress per connection: Each BLE connection on same central needs different AccessAddress
  • DataRate in Kbps: DataRate=100 means 100 Kbps, not 100 bps
  • GeneratePacket=true is not valid: Not applicable for network-level simulation. Use OnTime=Inf for continuous traffic.

<!-- Copyright 2026 The MathWorks, Inc. -->

How to use it

Copy the folder

Take matlab/matlab-simulate-bluetooth-network from the repository into ~/.claude/skills for personal use, or into .claude/skills inside a project.

Check the name does not clash

The agent identifies a skill by the name field in its header. Two skills with the same name cannot sit side by side — one of them will be ignored.