Native macOS driver, CUPS raster filter & control utility for the HP Smart Tank 500 series on Apple Silicon.
Printing, scanning, device diagnostics and InkSaver™ continuous mode — 100% local-first and zero telemetry.
Independent project. TankControl is not affiliated with, sponsored by or endorsed by HP Inc. HP and Smart Tank are trademarks of their respective owner.
TankControl is an independent macOS project focused on interoperability with the HP Smart Tank 500 series (0x03F0:0x2B54). The repository combines native SwiftUI tooling, C/CUPS components, USB helpers and local diagnostic utilities.
The project is designed around three principles:
- local-first operation — no cloud account is required for the core tooling;
- technical transparency — capabilities and limitations should be inspectable in source;
- hardware caution — maintenance operations that can consume ink or affect the device must remain explicit and user-confirmed.
| Model | Connectivity | Status | Verified Capabilities |
|---|---|---|---|
| HP Smart Tank 500 | USB (0x03F0:0x2B54) |
✅ Full Support | Printing (PCL3GUI), USB Scanner (eSCL), Ink levels, Alignment & Purge |
| HP Smart Tank 515 Wireless | USB / Wi-Fi | ✅ Verified | PCL3GUI raster printing, AirScan/eSCL scanner, InkSaver™ continuous mode |
| HP Smart Tank 516 / 519 | USB / Wi-Fi | ✅ Compatible | Identical ASIC/print engine; full CUPS printing and scanning |
| HP Smart Tank 530 | USB / Wi-Fi | ✅ Compatible | Printing + Flatbed scanner verified |
| HP Ink Tank 315 / 415 | USB | 🟡 Experimental | PCL3GUI raster engine compatible; scanner via Image Capture |
Tested your printer model? Join the Hardware Survey on GitHub Discussions to share your device setup!
| Area | Status |
|---|---|
| Native ARM64 build | ✅ Reproducible in GitHub Actions |
| App bundle integrity | ✅ Verified in CI |
| HP Smart Tank 500 target | ✅ Project target |
| Release | ✅ v1.1.0 published |
| License | ✅ MIT |
| Full local test suite | |
| Apple notarization |
The public CI intentionally validates the reproducible source build, bundle signature integrity and ARM64 linkage. The complete local suite contains additional integration fixtures and hardware-oriented material that are not currently suitable for the public GitHub runner.
- CUPS-oriented native printing components.
- PCL3GUI raster tooling written in C.
- Print presets and local queue management.
- Local raster processing and ink-density controls.
- Dedicated USB scanner helper.
- eSCL/AirScan bridge components.
- Integration work targeting standard macOS scanning workflows.
- Native SwiftUI interface for Apple Silicon.
- Printer status, diagnostics and maintenance surfaces.
- Ink-related controls and local presets.
- Mock/offline mode for development and interface testing.
TankControl is designed to perform its core functions locally. See SECURITY.md for the current security and vulnerability-reporting policy.
| Dashboard | Ink / maintenance |
|---|---|
![]() |
![]() |
Additional screenshots and design assets are kept under Brand/.
Use the published assets from the current release:
The current package is unsigned/not notarized with an Apple Developer ID. Review the release notes before installation. Avoid disabling Gatekeeper globally; use macOS's normal per-app approval flow when required.
- Apple Silicon Mac (
arm64) - macOS 12 or newer for the application target
- Xcode Command Line Tools (
swiftc,clang) libusb- Python 3 for the test tooling
brew install libusb
make buildThe build produces the native C helpers and TankControl.app under the project's build workspace.
make testThe full suite currently contains 205 tests. Some tests depend on local corpus, packaging, sanitizer or hardware-validation fixtures that are deliberately excluded from the public repository, so make test is not used as the public CI success criterion yet.
make pkg
make dmgRelease artifacts should be distributed through GitHub Releases, not committed as binary build output in the repository.
apps/ Native macOS application
src/ Core source components
tools/ Driver / hardware tooling
tests/ Automated test suite
docs/ Technical and design documentation
Brand/ Product identity and screenshots
.github/ CI, issue templates and repository metadata
research/ Engineering fixtures and supporting material
Build products, private captures, large corpora and local staging directories are excluded through .gitignore.
ARCHITECTURE.md— system architectureCHANGELOG.md— release historyCONTRIBUTING.md— contribution workflowCODE_OF_CONDUCT.md— community code of conductSECURITY.md— security policy.github/SUPPORT.md— support scopedocs/BRAND-GUIDE.md— product visual systemdocs/TROUBLESHOOTING-TREE.md— troubleshooting flow
Issues and pull requests are welcome when they are reproducible and within project scope. Use the provided issue templates and remove personal information, printer serial numbers, document contents, credentials and other sensitive material from logs or screenshots.
For security vulnerabilities, do not open a public issue containing exploit details. Follow SECURITY.md.
TankControl is distributed under the MIT License.
ATELIER MINUIT
Independent software, tools & experiments. · 00:00

