v0.42.0
Browse filesSee https://github.com/quic/ai-hub-models/releases/v0.42.0 for changelog.
EasyOCR_EasyOCRDetector_float.dlc
DELETED
|
@@ -1,3 +0,0 @@
|
|
| 1 |
-
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:7da4f239ec20dd05230579d910504e6f143d23d3a8a3abccaa7c63e40972cf0f
|
| 3 |
-
size 83123996
|
|
|
|
|
|
|
|
|
|
|
|
EasyOCR_EasyOCRDetector_float.onnx.zip
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
size 77379537
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:672d81094fc47789757e1f8dd0d80d9bc3388b45b1b81137082841e5aa16226c
|
| 3 |
size 77379537
|
EasyOCR_EasyOCRRecognizer_float.dlc
DELETED
|
@@ -1,3 +0,0 @@
|
|
| 1 |
-
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:36855939e8be72cfa2b33344792756934db7f58ac0069d2b02233fb2843af346
|
| 3 |
-
size 22804812
|
|
|
|
|
|
|
|
|
|
|
|
EasyOCR_EasyOCRRecognizer_float.onnx.zip
CHANGED
|
@@ -1,3 +1,3 @@
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
-
oid sha256:
|
| 3 |
size 14075043
|
|
|
|
| 1 |
version https://git-lfs.github.com/spec/v1
|
| 2 |
+
oid sha256:b48f2564ae78e2bb8fed62035054796fdd8cd449c551ec6a4dceefa7b0362a70
|
| 3 |
size 14075043
|
README.md
CHANGED
|
@@ -37,58 +37,40 @@ More details on model performance across various devices, can be found
|
|
| 37 |
|
| 38 |
| Model | Precision | Device | Chipset | Target Runtime | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit | Target Model
|
| 39 |
|---|---|---|---|---|---|---|---|---|
|
| 40 |
-
| EasyOCRDetector | float | QCS8275 (Proxy) | Qualcomm® QCS8275 (Proxy) | TFLITE | 272.
|
| 41 |
-
| EasyOCRDetector | float | QCS8450 (Proxy) | Qualcomm® QCS8450 (Proxy) | TFLITE |
|
| 42 |
-
| EasyOCRDetector | float |
|
| 43 |
-
| EasyOCRDetector | float | QCS8550 (Proxy) | Qualcomm® QCS8550 (Proxy) |
|
| 44 |
-
| EasyOCRDetector | float |
|
| 45 |
-
| EasyOCRDetector | float |
|
| 46 |
-
| EasyOCRDetector | float |
|
| 47 |
-
| EasyOCRDetector | float |
|
| 48 |
-
| EasyOCRDetector | float |
|
| 49 |
-
| EasyOCRDetector | float |
|
| 50 |
-
| EasyOCRDetector | float |
|
| 51 |
-
| EasyOCRDetector | float |
|
| 52 |
-
| EasyOCRDetector | float |
|
| 53 |
-
| EasyOCRDetector | float |
|
| 54 |
-
| EasyOCRDetector | float |
|
| 55 |
-
| EasyOCRDetector | float |
|
| 56 |
-
| EasyOCRDetector | float |
|
| 57 |
-
|
|
| 58 |
-
|
|
| 59 |
-
|
|
| 60 |
-
|
|
| 61 |
-
|
|
| 62 |
-
|
|
| 63 |
-
|
|
| 64 |
-
|
|
| 65 |
-
|
|
| 66 |
-
| EasyOCRRecognizer | float |
|
| 67 |
-
| EasyOCRRecognizer | float |
|
| 68 |
-
| EasyOCRRecognizer | float |
|
| 69 |
-
| EasyOCRRecognizer | float |
|
| 70 |
-
| EasyOCRRecognizer | float |
|
| 71 |
-
| EasyOCRRecognizer | float |
|
| 72 |
-
| EasyOCRRecognizer | float |
|
| 73 |
-
| EasyOCRRecognizer | float |
|
| 74 |
-
| EasyOCRRecognizer | float | SA8255 (Proxy) | Qualcomm® SA8255P (Proxy) | TFLITE | 101.803 ms | 8 - 10 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 75 |
-
| EasyOCRRecognizer | float | SA8255 (Proxy) | Qualcomm® SA8255P (Proxy) | QNN_DLC | 24.83 ms | 0 - 129 MB | NPU | [EasyOCR.dlc](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.dlc) |
|
| 76 |
-
| EasyOCRRecognizer | float | SA8295P ADP | Qualcomm® SA8295P | TFLITE | 223.277 ms | 11 - 29 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 77 |
-
| EasyOCRRecognizer | float | SA8295P ADP | Qualcomm® SA8295P | QNN_DLC | 40.68 ms | 0 - 195 MB | NPU | [EasyOCR.dlc](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.dlc) |
|
| 78 |
-
| EasyOCRRecognizer | float | SA8650 (Proxy) | Qualcomm® SA8650P (Proxy) | TFLITE | 100.96 ms | 8 - 10 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 79 |
-
| EasyOCRRecognizer | float | SA8650 (Proxy) | Qualcomm® SA8650P (Proxy) | QNN_DLC | 24.749 ms | 0 - 120 MB | NPU | [EasyOCR.dlc](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.dlc) |
|
| 80 |
-
| EasyOCRRecognizer | float | SA8775P ADP | Qualcomm® SA8775P | TFLITE | 378.609 ms | 10 - 21 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 81 |
-
| EasyOCRRecognizer | float | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | TFLITE | 96.781 ms | 9 - 29 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 82 |
-
| EasyOCRRecognizer | float | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | QNN_DLC | 18.626 ms | 0 - 462 MB | NPU | [EasyOCR.dlc](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.dlc) |
|
| 83 |
-
| EasyOCRRecognizer | float | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | ONNX | 26.523 ms | 0 - 273 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 84 |
-
| EasyOCRRecognizer | float | Samsung Galaxy S25 | Snapdragon® 8 Elite For Galaxy Mobile | TFLITE | 116.293 ms | 11 - 26 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 85 |
-
| EasyOCRRecognizer | float | Samsung Galaxy S25 | Snapdragon® 8 Elite For Galaxy Mobile | QNN_DLC | 16.329 ms | 0 - 473 MB | NPU | [EasyOCR.dlc](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.dlc) |
|
| 86 |
-
| EasyOCRRecognizer | float | Samsung Galaxy S25 | Snapdragon® 8 Elite For Galaxy Mobile | ONNX | 21.433 ms | 0 - 278 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 87 |
-
| EasyOCRRecognizer | float | Snapdragon 8 Elite Gen 5 QRD | Snapdragon® 8 Elite Gen5 Mobile | TFLITE | 74.689 ms | 14 - 25 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 88 |
-
| EasyOCRRecognizer | float | Snapdragon 8 Elite Gen 5 QRD | Snapdragon® 8 Elite Gen5 Mobile | QNN_DLC | 17.489 ms | 0 - 509 MB | NPU | [EasyOCR.dlc](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.dlc) |
|
| 89 |
-
| EasyOCRRecognizer | float | Snapdragon 8 Elite Gen 5 QRD | Snapdragon® 8 Elite Gen5 Mobile | ONNX | 19.727 ms | 0 - 304 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 90 |
-
| EasyOCRRecognizer | float | Snapdragon X Elite CRD | Snapdragon® X Elite | QNN_DLC | 24.652 ms | 100 - 100 MB | NPU | [EasyOCR.dlc](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.dlc) |
|
| 91 |
-
| EasyOCRRecognizer | float | Snapdragon X Elite CRD | Snapdragon® X Elite | ONNX | 36.052 ms | 12 - 12 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 92 |
|
| 93 |
|
| 94 |
|
|
@@ -103,9 +85,9 @@ pip install "qai-hub-models[easyocr]"
|
|
| 103 |
```
|
| 104 |
|
| 105 |
|
| 106 |
-
## Configure Qualcomm® AI Hub to run this model on a cloud-hosted device
|
| 107 |
|
| 108 |
-
Sign-in to [Qualcomm® AI Hub](https://
|
| 109 |
Qualcomm® ID. Once signed in navigate to `Account -> Settings -> API Token`.
|
| 110 |
|
| 111 |
With this API token, you can configure your client to run models on the cloud
|
|
@@ -113,7 +95,7 @@ hosted devices.
|
|
| 113 |
```bash
|
| 114 |
qai-hub configure --api_token API_TOKEN
|
| 115 |
```
|
| 116 |
-
Navigate to [docs](https://
|
| 117 |
|
| 118 |
|
| 119 |
|
|
@@ -224,7 +206,7 @@ With the output of the model, you can compute like PSNR, relative errors or
|
|
| 224 |
spot check the output with expected output.
|
| 225 |
|
| 226 |
**Note**: This on-device profiling and inference requires access to Qualcomm®
|
| 227 |
-
AI Hub. [Sign up for access](https://myaccount.qualcomm.com/signup).
|
| 228 |
|
| 229 |
|
| 230 |
|
|
|
|
| 37 |
|
| 38 |
| Model | Precision | Device | Chipset | Target Runtime | Inference Time (ms) | Peak Memory Range (MB) | Primary Compute Unit | Target Model
|
| 39 |
|---|---|---|---|---|---|---|---|---|
|
| 40 |
+
| EasyOCRDetector | float | QCS8275 (Proxy) | Qualcomm® QCS8275 (Proxy) | TFLITE | 272.633 ms | 0 - 38 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 41 |
+
| EasyOCRDetector | float | QCS8450 (Proxy) | Qualcomm® QCS8450 (Proxy) | TFLITE | 66.837 ms | 1 - 49 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 42 |
+
| EasyOCRDetector | float | QCS8550 (Proxy) | Qualcomm® QCS8550 (Proxy) | TFLITE | 38.331 ms | 0 - 154 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 43 |
+
| EasyOCRDetector | float | QCS8550 (Proxy) | Qualcomm® QCS8550 (Proxy) | ONNX | 37.212 ms | 0 - 100 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 44 |
+
| EasyOCRDetector | float | QCS9075 (Proxy) | Qualcomm® QCS9075 (Proxy) | TFLITE | 70.052 ms | 1 - 39 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 45 |
+
| EasyOCRDetector | float | SA7255P ADP | Qualcomm® SA7255P | TFLITE | 272.633 ms | 0 - 38 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 46 |
+
| EasyOCRDetector | float | SA8255 (Proxy) | Qualcomm® SA8255P (Proxy) | TFLITE | 38.595 ms | 1 - 150 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 47 |
+
| EasyOCRDetector | float | SA8295P ADP | Qualcomm® SA8295P | TFLITE | 76.792 ms | 1 - 42 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 48 |
+
| EasyOCRDetector | float | SA8650 (Proxy) | Qualcomm® SA8650P (Proxy) | TFLITE | 38.613 ms | 0 - 145 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 49 |
+
| EasyOCRDetector | float | SA8775P ADP | Qualcomm® SA8775P | TFLITE | 70.052 ms | 1 - 39 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 50 |
+
| EasyOCRDetector | float | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | TFLITE | 28.182 ms | 1 - 50 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 51 |
+
| EasyOCRDetector | float | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | ONNX | 27.373 ms | 6 - 49 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 52 |
+
| EasyOCRDetector | float | Samsung Galaxy S25 | Snapdragon® 8 Elite For Galaxy Mobile | TFLITE | 22.974 ms | 0 - 41 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 53 |
+
| EasyOCRDetector | float | Samsung Galaxy S25 | Snapdragon® 8 Elite For Galaxy Mobile | ONNX | 22.205 ms | 3 - 42 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 54 |
+
| EasyOCRDetector | float | Snapdragon 8 Elite Gen 5 QRD | Snapdragon® 8 Elite Gen5 Mobile | TFLITE | 17.091 ms | 0 - 43 MB | NPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 55 |
+
| EasyOCRDetector | float | Snapdragon 8 Elite Gen 5 QRD | Snapdragon® 8 Elite Gen5 Mobile | ONNX | 16.87 ms | 7 - 50 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 56 |
+
| EasyOCRDetector | float | Snapdragon X Elite CRD | Snapdragon® X Elite | ONNX | 38.579 ms | 36 - 36 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 57 |
+
| EasyOCRRecognizer | float | QCS8275 (Proxy) | Qualcomm® QCS8275 (Proxy) | TFLITE | 531.491 ms | 8 - 18 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 58 |
+
| EasyOCRRecognizer | float | QCS8450 (Proxy) | Qualcomm® QCS8450 (Proxy) | TFLITE | 122.208 ms | 8 - 27 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 59 |
+
| EasyOCRRecognizer | float | QCS8550 (Proxy) | Qualcomm® QCS8550 (Proxy) | TFLITE | 104.226 ms | 8 - 11 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 60 |
+
| EasyOCRRecognizer | float | QCS8550 (Proxy) | Qualcomm® QCS8550 (Proxy) | ONNX | 35.163 ms | 0 - 69 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 61 |
+
| EasyOCRRecognizer | float | QCS9075 (Proxy) | Qualcomm® QCS9075 (Proxy) | TFLITE | 356.313 ms | 10 - 21 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 62 |
+
| EasyOCRRecognizer | float | SA7255P ADP | Qualcomm® SA7255P | TFLITE | 531.491 ms | 8 - 18 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 63 |
+
| EasyOCRRecognizer | float | SA8255 (Proxy) | Qualcomm® SA8255P (Proxy) | TFLITE | 98.14 ms | 8 - 11 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 64 |
+
| EasyOCRRecognizer | float | SA8295P ADP | Qualcomm® SA8295P | TFLITE | 214.189 ms | 7 - 24 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 65 |
+
| EasyOCRRecognizer | float | SA8650 (Proxy) | Qualcomm® SA8650P (Proxy) | TFLITE | 104.441 ms | 7 - 10 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 66 |
+
| EasyOCRRecognizer | float | SA8775P ADP | Qualcomm® SA8775P | TFLITE | 356.313 ms | 10 - 21 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 67 |
+
| EasyOCRRecognizer | float | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | TFLITE | 97.216 ms | 3 - 24 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 68 |
+
| EasyOCRRecognizer | float | Samsung Galaxy S24 | Snapdragon® 8 Gen 3 Mobile | ONNX | 26.284 ms | 0 - 272 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 69 |
+
| EasyOCRRecognizer | float | Samsung Galaxy S25 | Snapdragon® 8 Elite For Galaxy Mobile | TFLITE | 116.505 ms | 11 - 23 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 70 |
+
| EasyOCRRecognizer | float | Samsung Galaxy S25 | Snapdragon® 8 Elite For Galaxy Mobile | ONNX | 21.32 ms | 0 - 280 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 71 |
+
| EasyOCRRecognizer | float | Snapdragon 8 Elite Gen 5 QRD | Snapdragon® 8 Elite Gen5 Mobile | TFLITE | 69.803 ms | 15 - 27 MB | CPU | [EasyOCR.tflite](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.tflite) |
|
| 72 |
+
| EasyOCRRecognizer | float | Snapdragon 8 Elite Gen 5 QRD | Snapdragon® 8 Elite Gen5 Mobile | ONNX | 19.355 ms | 0 - 304 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
| 73 |
+
| EasyOCRRecognizer | float | Snapdragon X Elite CRD | Snapdragon® X Elite | ONNX | 35.996 ms | 12 - 12 MB | NPU | [EasyOCR.onnx.zip](https://huggingface.co/qualcomm/EasyOCR/blob/main/EasyOCR.onnx.zip) |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| 74 |
|
| 75 |
|
| 76 |
|
|
|
|
| 85 |
```
|
| 86 |
|
| 87 |
|
| 88 |
+
## Configure Qualcomm® AI Hub Workbench to run this model on a cloud-hosted device
|
| 89 |
|
| 90 |
+
Sign-in to [Qualcomm® AI Hub Workbench](https://workbench.aihub.qualcomm.com/) with your
|
| 91 |
Qualcomm® ID. Once signed in navigate to `Account -> Settings -> API Token`.
|
| 92 |
|
| 93 |
With this API token, you can configure your client to run models on the cloud
|
|
|
|
| 95 |
```bash
|
| 96 |
qai-hub configure --api_token API_TOKEN
|
| 97 |
```
|
| 98 |
+
Navigate to [docs](https://workbench.aihub.qualcomm.com/docs/) for more information.
|
| 99 |
|
| 100 |
|
| 101 |
|
|
|
|
| 206 |
spot check the output with expected output.
|
| 207 |
|
| 208 |
**Note**: This on-device profiling and inference requires access to Qualcomm®
|
| 209 |
+
AI Hub Workbench. [Sign up for access](https://myaccount.qualcomm.com/signup).
|
| 210 |
|
| 211 |
|
| 212 |
|