CasebackCode and licences

Code and licences

What is published

The design, code and tests of Caseback are in one public repository. You can read all of it.

Three layers are open source and can be used for any purpose, selling products included. Hardware, firmware and the app are source-available: you can read, run and change them, but not use them to sell a product that competes with Caseback.

Source-available

Functional Source License (FSL 1.1). Read, run, change and share it, but not in a competing product. Each version becomes Apache 2.0 two years after it is published.

  1. HardwareBoard, enclosure and microsuction pad
    FSL 1.1
  2. FirmwareZephyr on the nRF52840
    FSL 1.1
  3. AppiOS, SwiftUI
    FSL 1.1

Open source

Use it for any purpose, selling products included, keeping the licence notices.

  1. ProtocolThe Bluetooth messages, byte by byte, in Python, Swift and C
    Apache 2.0
  2. AlgorithmsPulse, HRV, sleep and steps
    Apache 2.0
  3. Tools, tests and websiteScripts that draw the illustrations and the app captures, the tests and this site
    Apache 2.0
The Swift and C versions of the protocol sit inside apps/ and firmware/ and keep the Apache 2.0 licence.

What the licence allows

The source-available layers use the Functional Source License. You can use them for anything except a competing use, which means making them available in a commercial product or service that does the same job as Caseback.

We publish the code and the drawings so that anyone can check what the disc does and how it is built. The licence keeps a copy from reaching the market before the original does. Each version becomes Apache 2.0 two years after it is published, so the restriction ends.

PublishedTwo years laterSource-availableFunctional Source LicenseApache 2.0Open sourceApache 2.0PublishedTwo years laterSource-availableFunctional Source LicenseApache 2.0Open sourceApache 2.0

You can

  • Read, run and change the code and the drawings.
  • Build a disc or a bracelet for yourself.
  • Use them to teach or for non-commercial research.
  • Charge for installing or repairing a Caseback for someone who also uses the files under this licence.
  • Share your changes, with the licence attached.

You cannot

  • Sell a product or service that does the same job as Caseback using these files.
  • Call a product Caseback if it is not ours. You may say it is based on, compatible with or a fork of Caseback.
  • Remove the licence or the copyright notices from a copy you share.
Versions published before 28 October 2026 keep the licences they came with: Apache 2.0 for the software and CERN-OHL-S 2.0 for the hardware.Read the full licence

Run the tests yourself

These commands run the tests on your own computer. The Python ones need Python 3.12 or newer; the Swift one needs a Mac.

  1. Protocol testsThe Python implementation, against the reference bytes
    cd caseback-protocol/python && pip install -e ".[dev]" && pytest
  2. Pulse and HRV testsFiltering, beat detection and HRV
    cd algorithms/ppg && pip install -e ".[dev]" && pytest
  3. Steps, sleep and readiness testsModels and rules for steps, sleep, skin temperature and readiness
    cd algorithms/wellness && pip install -e ../ppg -e ".[dev]" && pytest
  4. Swift protocol testsThe Swift implementation, against the same reference bytes. Needs a Mac
    cd apps/ios/CasebackProtocol && swift test
Each command runs from the root of the repository.Open the repositoryHow to contribute