pylibfranka-macos
Unofficial macOS build of pylibfranka, the Python bindings for libfranka, from younghyopark/libfranka, a fork with macOS support.
This package is not affiliated with or endorsed by Franka Robotics GmbH. On Linux, use the official pylibfranka.
Installation
pip install pylibfranka-macos
It needs an Apple Silicon Mac with macOS 15 or newer and Python 3.10 to 3.14. The wheels bundle their native dependencies, such as Poco, pinocchio and Boost, so they need no Homebrew.
The package installs the same pylibfranka module as the official package, so do not install both into one environment:
import pylibfranka
robot = pylibfranka.Robot("172.16.0.2")
See the pylibfranka documentation for the API.
Changes from libfranka
- Build on macOS.
- Busy-wait for robot states in a thread with the QoS class
USER_INTERACTIVEinstead of sleeping between control cycles. A thread that sleeps is often woken on an efficiency core or a clocked-down core, which slows down the following cycle several times and makes the robot drop commands. Set the environment variableLIBFRANKA_MACOS_BUSY_WAIT=0to sleep in a Mach time constraint thread instead. - Detect TCP connections that the robot closed, which macOS reports differently from Linux.
- Do not hang when cancelling a motion that already ended, for example with
Robot.stop().
Real-time notes
macOS is not a real-time operating system. Busy-waiting keeps one performance core fully busy while a control loop runs, so plug in the Mac when controlling the robot. Only the thread that creates the Robot gets the highest scheduling priority, so run the control loop on that thread. Connect the robot via wired Ethernet and watch RobotState.control_command_success_rate to check that your setup keeps up with the 1 kHz control loop.
License
Apache-2.0, like libfranka. Each wheel includes the license and notice of libfranka and the licenses of the bundled libraries in its .dist-info/licenses directory.
Release files for pylibfranka-macos 0.21.3
For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.
Built distributions (wheels)
| File | Reset | |||
|---|---|---|---|---|
| pylibfranka_macos-0.21.3-cp314-cp314-macosx_15_0_arm64.whl | CPython 3.14 | CPython 3.14 | macOS 15.0+ ARM64 | Details |
| pylibfranka_macos-0.21.3-cp313-cp313-macosx_15_0_arm64.whl | CPython 3.13 | CPython 3.13 | macOS 15.0+ ARM64 | Details |
| pylibfranka_macos-0.21.3-cp312-cp312-macosx_15_0_arm64.whl | CPython 3.12 | CPython 3.12 | macOS 15.0+ ARM64 | Details |
| pylibfranka_macos-0.21.3-cp311-cp311-macosx_15_0_arm64.whl | CPython 3.11 | CPython 3.11 | macOS 15.0+ ARM64 | Details |
| pylibfranka_macos-0.21.3-cp310-cp310-macosx_15_0_arm64.whl | CPython 3.10 | CPython 3.10 | macOS 15.0+ ARM64 | Details |
Total release size: 41.9 MB
Release files / pylibfranka_macos-0.21.3-cp314-cp314-macosx_15_0_arm64.whl
| Download URL | pylibfranka_macos-0.21.3-cp314-cp314-macosx_15_0_arm64.whl |
|---|---|
| Size | 8.4 MB |
| Tags | CPython 3.14 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
272f4793a420dfa4afa1365322bced9edd21ac8b46253661d1743e58559f502f
|
|
BLAKE2b-256 checksum How to use checksums |
71221563bf108cc97dcebbcc59f2ed7f279d860b0e1bcee4f2ef9426783deb88
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.
Transparency logRelease files / pylibfranka_macos-0.21.3-cp313-cp313-macosx_15_0_arm64.whl
| Download URL | pylibfranka_macos-0.21.3-cp313-cp313-macosx_15_0_arm64.whl |
|---|---|
| Size | 8.4 MB |
| Tags | CPython 3.13 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
79aa81d22ab49dda3d4fbec9296f3f22fa77070a3ba55bb8054aecede2113be0
|
|
BLAKE2b-256 checksum How to use checksums |
caf7e4ec2fcc58d86000685b941cc6e6d11d34b7e2e587abccbc1d9380925885
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.
Transparency logRelease files / pylibfranka_macos-0.21.3-cp312-cp312-macosx_15_0_arm64.whl
| Download URL | pylibfranka_macos-0.21.3-cp312-cp312-macosx_15_0_arm64.whl |
|---|---|
| Size | 8.4 MB |
| Tags | CPython 3.12 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
7fc50f09a24b5ab500227bb4caf13f148d901b6ddff5a72a0ebb7a712d1fd3ee
|
|
BLAKE2b-256 checksum How to use checksums |
42f5c8a43d116c609a139de58ae6b8c6be4ad1c2a3543d6754b9afeb4a22104a
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.
Transparency logRelease files / pylibfranka_macos-0.21.3-cp311-cp311-macosx_15_0_arm64.whl
| Download URL | pylibfranka_macos-0.21.3-cp311-cp311-macosx_15_0_arm64.whl |
|---|---|
| Size | 8.4 MB |
| Tags | CPython 3.11 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
1f8d47517ec6646d6886e817eb0a0d327bfe021f12d058bb2aa3d671ec72b62a
|
|
BLAKE2b-256 checksum How to use checksums |
c3a51fdf85a6f21eee42740d41773b487ab4c0c51c8347ca3f54e8b065ee6d03
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.
Transparency logRelease files / pylibfranka_macos-0.21.3-cp310-cp310-macosx_15_0_arm64.whl
| Download URL | pylibfranka_macos-0.21.3-cp310-cp310-macosx_15_0_arm64.whl |
|---|---|
| Size | 8.4 MB |
| Tags | CPython 3.10 macOS 15.0+ ARM64 |
|
SHA-256 checksum How to use checksums |
dc7e1efdaa011648ed0b95459f4c8fd7e81cead3ab11b897058ac4e0374a150f
|
|
BLAKE2b-256 checksum How to use checksums |
398d11392c1a9a299293a6c283cf492caa711fd5f18ba7c0fe7f7a35bea958ec
|
| Upload date | |
|
Uploaded using Trusted Publishing? What is trusted publishing? |
Yes |
| Uploaded via |
twine/7.0.0 CPython/3.13.14
|
Provenance
Provenance describes where a file came from. On PyPI, provenance is shared via attestations, which provide a verifiable record of the build or publishing details. View details, limitations and caveats.
PyPI Publish Attestation
PyPI verified that this artifact, at this checksum, originated from the publisher listed below.
Signed by GitHub Actions, verified by PyPI on Sep 28, 2026.
Transparency log