Thundercomm Rubik Pi 3
The Thundercomm Rubik Pi 3 is a powerful Linux-based development board based on the Qualcomm Dragonwing QCS6490 SoC. It has a Kryo™ 670 CPU, Adreno™ 643L GPU and 12 TOPS Hexagon™ 770 NPU. It also has onboard WiFi and Bluetooth, as well as common ports such as CSI camera inputs, USB3, a 4k HDMI video output, ethernet, and GPIO pins for interacting with external hardware. It also has 128gb of onboard storage for the Operating System and applications. Because the QCS6490 is fully supported by Edge Impulse, you can use the same process as found in the RB3 Gen 2 Dev Kit to build and deploy AI models to the Rubik Pi.

Setting Up Your Thundercomm Rubik Pi 3
1. Setup and connecting to the internet
Attach a USB keyboard and mouse, as well as an HDMI monitor. For computer vision projects, also attach a USB camera.
Connect power to the USB-C port on the right hand side of the board.
Press the power button, which is the front button (nearer the ports):
Once the board has booted up, open a terminal by clicking on the icon at the top-left of the screen.
Change to the ‘root’ user with
su root
Run the command
rubikpi_config
, and navigate through the menu to add your WiFi. Alternatively, you can simply plug in an ethernet cable if available.
2. Installing the Edge Impulse Linux CLI
Once rebooted, open up the terminal once again, and install the Edge Impulse CLI and other dependencies via:
$ wget https://cdn.edgeimpulse.com/firmware/linux/setup-edge-impulse-qc-linux.sh
$ sh setup-edge-impulse-qc-linux.sh
3. Connecting to Edge Impulse
With all dependencies set up, run:
$ edge-impulse-linux
This will start a wizard which asks you to log in and choose an Edge Impulse project. If you want to switch projects, or use a different camera (e.g. a USB camera) run the command with the --clean
argument.
4. Verifying that your device is connected
That's all! Your device is now connected to Edge Impulse. To verify this, go to your Edge Impulse project, and click Devices. The device will be listed here.

Next steps: building a machine learning model
With everything set up you can now build your first machine learning model with these tutorials:
Looking to connect different sensors? Our Linux SDK lets you easily send data from any sensor and any programming language (with examples in Node.js, Python, Go and C++) into Edge Impulse.
Deploying back to device
Using the Edge Impulse Linux CLI
To run your Impulse locally on the Rubik Pi 3, open a terminal and run:
$ edge-impulse-linux-runner
This will automatically compile your model with full hardware acceleration, download the model to your Rubik Pi 3, and then start classifying (use --clean
to switch projects).
Alternatively, you can select the Linux (AARCH64 with Qualcomm QNN) option in the Deployment page.

This will download an .eim
model that you can run on your board with the following command:
edge-impulse-linux-runner --model-file downloaded-model.eim
Using the Edge Impulse Linux Inferencing SDKs
Our Linux SDK has examples on how to integrate the .eim
model with your favorite programming language.
Using the IM SDK GStreamer option
When selecting this option, you will obtain a .zip
folder. We provide instructions in the README.md
file included in the compressed folder.
See more information on Qualcomm IM SDK GStreamer pipeline.
Image model?
If you have an image model then you can get a peek of what your device sees by being on the same network as your device, and finding the 'Want to see a feed of the camera and live classification in your browser' message in the console. Open the URL in a browser and both the camera feed and the classification are shown:

Troubleshooting
Capture process failed with code 255
If you start the CLI, and see:
Failed to initialize linux tool Capture process failed with code 255
You'll need to restart the camera server via:
$ systemctl restart cam-server
Last updated
Was this helpful?