Skip to content

BLESPloit/device-library

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Device library is a collection of definitions (JSON format) and optional dynamic scripts (LUA) that can act in various BLE roles.

Overview

A library entry is a folder on the filesystem that describes BLE device roles (each optional):

  • Observer - for recognizing the device based on advertised data: matching conditions, decoding logic
  • Central - for connecting and controlling the peripheral device: quick action or full menu scripts
  • Peripheral - for device simulation: its BLE GATT profile (services + characteristics), advertising data, UI, interface, and scripting logic.

Device folder layout

my-device/
  manifest.json         ← identity, role declarations, asset paths
  ble.json              ← GATT services, characteristics, descriptors, pairing
  vars.json             ← runtime variables (strings, numbers, bools)
  uuids.json            ← symbolic name → UUID map
  assets/
    icon.svg
    other_graphic.png
    graphics.json
  observer/
    adv_decode.lua      ← Lua script executed during BLE scan
  central/
    dynamic.lua         ← Lua script executed on the GATT client
    menu.json           ← GATT-client menu tree with Lua snippet hooks
  peripheral/
    adv.json            ← advertising profiles (raw hex, scan response)
    interface.json      ← peripheral "physical" interface
    dynamic.lua         ← peripheral Lua script

More information

Device Library documentation

Device Profile Sharing Policy

About

Device Library

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages