Repository navigation
Releases
USBArc 1.0.1 — Unsigned HAP
USBArc 1.0.1
- Bundle:
io.github.rockymtnwolf.usbarc - Vendor:
RockyMtnWolf - Target: HarmonyOS API 26, PC / 2-in-1 (
2in1) - Version:
1.0.1/1000001
Changes
- DDK device discovery no longer relies on a VID/PID allowlist. Devices are matched by physical bus/address identity while keeping readable USBManager names when available.
- USBManager storage-interface claim failures now explain that a local mount may be involved and point users to safe ejection and the explicit Force Claim setting. Force Claim is never enabled or retried automatically.
- Device-query failures no longer crash application startup; cached status remains visible and enumeration can recover on a later refresh.
Validation
- API 26 full build succeeded and all 66 local tests passed.
- On real hardware, the user confirmed device connection and server-side sharing through the current Worker-based DDK implementation. Windows USB/IP enumeration through USBManager independently listed Kingston
0951:1666storage and a Realtek RTL9210B enclosure. - Storage client attach, disk I/O, and file transfer were not verified. Release-mode packages were built and checked but were not installed for hardware testing; the real-device results came from the Debug build of the same implementation.
- The Worker-based DDK path remains experimental and requires an approved
ohos.permission.ACCESS_DDK_USBACL. Its NDK calls run directly from an ArkTS Worker; this result does not establish compatibility with all devices.
Signing and distribution
The public release provides an unsigned HAP only. Sign it yourself with a profile and credentials you are authorized to use before installing. No signing certificate, provisioning profile, private key, or signed AppGallery .app bundle is included.
Asset: USBArc-1.0.1-api26-release-unsigned.hap
SHA-256: ced509bf22d7c4c8a5c9f06d0bf4ff3001fca6687b74ee9b746d86ae27697944
USBArc 1.0.0 — Unsigned HAP
USBArc 1.0.0 is a native USB/IP sharing server for HarmonyOS API 26 PC / 2-in-1 (2in1) devices.
Assets are unsigned Release-mode builds. They cannot be installed directly without an accepted signature. No developer certificate, provisioning profile, private key, or password is distributed in this release.
USBArc-1.0.0-api26-release-unsigned.hap: unsigned application module for signing and installation.
AppGallery .app bundles and all signing materials are kept local and are not published in this release.
Features include manual/automatic USB authorization requests, per-device sharing, saved VID/PID rules, IPv4/IPv6 listening, tray integration, optional background task requests, and light/dark/system appearance.
Optional USB DDK requires an approved ohos.permission.ACCESS_DDK_USB ACL in a matching signing profile. The combined package declares this restricted permission and includes its driver extension even when USBManager is selected in settings. Installation with a profile lacking that ACL has not been validated. A generic self-signature does not grant DDK access. See permissions and signing.
The installed Debug build from the same application source was tested with Windows usbip-win2: CH340 and ST-Link V2 were simultaneously present with PnP problem code 0; CH340 appeared as COM4. The user confirmed STM32CubeProgrammer reads through ST-Link. An initial ST-Link startup timeout recovered after reconnecting; its cause remains unconfirmed. The Release-mode artifacts themselves have not been installed or hardware-tested. Other peripheral models, storage I/O, long-duration reliability and large transfers remain unverified. Isochronous transfers are unsupported.
USB/IP itself has no authentication or encryption. Use a trusted network or a separately secured tunnel, and approve inbound access where required.
Bundle: io.github.rockymtnwolf.usbarc; vendor: RockyMtnWolf; app version: 1.0.0 / 1000000.
SHA-256 (USBArc-1.0.0-api26-release-unsigned.hap):
857d931bd07c6ce646a7537b3c4f9c4d10ff66d12ee5d6c31a50918b3cf25e67