Maker Board Spotlight: Rock960
Artificial intelligence quickly moved from theory to firm fixture in consumer electronics. Tasks leveraging machine learning that used to require immense computing power can now run on single-board computers (SBCs) thanks to leaps in efficiency and methods for training models. The Rock960 describes itself as a "little beast," and armed with an RK3399 System on Chip (SoC) with an onboard Neural Processing Unit (NPU), it's a fair claim to make. Today we'll be taking a look at what the Rock 960 is and what you can do with it.
What is the Rock960?
96Boards are known for making various single board computers dedicated to filling gaps in both the hobby and product development market. The Rock960 comes in at almost the same size as a Raspberry Pi 4B, but comes with a few notable differences.
The first, and largest difference is the SoC. The RK3399 combines Dual Cortex-A72s with Quad Cortex-A53 cores, along with a Mali T860MP4 GPU and a dedicated NPU for Artificial intelligence. It benchmarks higher than the Raspberry Pi 4 SoC, and 96Boards provide a dedicated API for Machine Vision, among other AI tasks using the hardware.
This step-up in power comes with a price difference, too, though when you factor in the 16GB eMMC Flash storage the 2GB Model A version has at $99 (with 4GB/32GB for $139 Model B), you are getting a lot of hardware for a relatively low price - you even get an acrylic case and power supply with standoffs. Confusingly, there is also a Model C offering 1/2/4 GB RAM and no eMMC storage, starting at $64. It's functionally similar, just with the low cost, low RAM version starting at a lower price, and missing any onboard storage along with a few other things. This article focuses on the Model A/B version for simplicity, though I'll cover the differences briefly below.
In terms of Input/Output, the Rock960 supports HDMI output up to 4k@60fps and has a multi-purpose 60-pin high-speed connector providing MPIP DSI, MIPI CSI, HSIC, and SDIO. There's also a full complement of USB ports (2.0/3.0/Type-C) and a Micro SD card slot for extra storage or boot images.
Notable here is the PCIe M.2 Key slot on the bottom. This is something many SBCs are lacking. Sure, you can add one to a Pi 4B with an addon adapter that takes up a USB port, but the M.2 slot is reserved for the Raspberry Pi compute module. The Rock 960 gives you the best of both worlds for not much more cash.
One area things are slightly lacking here is connectivity. While the Rock960 has 2x2 MIMO 802.11 AC Wi-Fi and Bluetooth 4.1 capability, it lacks onboard Ethernet.
The Rock960 comes preloaded with Android 7.1 (Upgradable to Android 9 TV/Tablet) and has downloadable Ubuntu and Debian images, each of which is built specifically for the Rock960 board.
Rock960 Dev Board Specs
- SoC: Rockchip RK3399
- CPU: ARM Cortex-A72 Dual-core up to 1.8GHz + Cortex A53 Quad-core up to 1.4GHz
- GPU: ARM Mali T860MP4
- RAM: 2GB or 4GB LPDDR3 @ 1866MHz
- PMU: RK805
- Storage: 16/32GB eMMC 5.1
- Ethernet Port: only via USB 2.0/3.0 expansion
- Wireless: WLAN 802.11 ac/a/b/g/n, 2xMIMO, 2.4GHz and 5Ghz, Bluetooth ® wireless technology 4.2. On-board WLAN/BT antennas.
- USB: 1 x USB 3.0 type A and 1 x USB 2.0 type A (host mode only) and 1 x USB 3.0 type C OTG
- Display: 1 x HDMI 2.0(Type A - full) up to 4Kx2K@60Hz, 1 x 2L, 1 x 4L - MIPI DSI up to 1080p@60Hz, 1 x DP 1.2(Type C) up to 4Kx2K@60
- Video: Inside decoder: H.264 10bit up to HP level 5.1 - 2160p@60fps (4096x2304), VP9 - 2160p@60fps(4096x2304), H.265/HEVC 10bit - 2160p@60fps(4096x2304), MPEG-1, MPEG-2, MPEG-4, H.263, VP8, VC-1.
- Audio: HDMI output
- Camera: 1 x 4-lane MIPI CSI
- Expansion Interface: 40 pin low speed expansion connector: +1.8V, +5V, DC power, GND, 2UART, 2I2C, SPI, I2S, 12xGPIO and 60 pin high speed expansion connector: 4L-MIPI DSI, I2C x2, SPI (48M), USB 2.0, 2L+4LMIPI CSI
- LED: 1 x WiFi activity LED（Yellow), 1 x BT activity LED (Blue), and 4 x User LEDs (Green)
- Button: Reset button, recovery button
- Power Source: Recommend a 12V@2A adapter with a DC plug that has a 4.75mm outer diameter and 1.7mm center pin with standard center-positive (EIAJ-3 Compliant)
- OS Support: AOSP/Debian/Ubuntu/Fedora/LibreELEC/Lakka/FlintOS
- Size: 85mm x 55mm
What can You do With the Rock960?
Native Android points to potential uses in digital signage or as a kiosk, but the RK3399 benchmarks well enough for use as a DIY media server too. That said, by design, this board is likely better suited for other things.
Given the SoC and I/O options used on the Rock960, its ideal use case would be for embedded inference using a pre-trained model for computer vision. This is reinforced by the fact that 96Boards worked in tandem with Open AI Lab to create Open AID, a framework collection for various kinds of visual and auditory recognition. There's also a guide to setting up a CSI camera with the Rock960 as part of the official documentation.
These elements, paired with the ubiquitous 40-pin GPIO header, make it perfect for complex IoT and user-facing connected projects.
Fedora on the Rock960
Alongside the images provided on the Rock960 documentation page, there's a working version of Fedora. It runs a fully hardware-accelerated version of the Gnome desktop using the open-source Panfrost driver.
RetroArch on the Rock960
The powerful CPU and GPU combination of the Rock960 makes it an interesting candidate for retro gaming, and some steps have been taken to make it a reality. While still in an experimental stage, the Lakka distribution based on LibreELEC runs the RetroArch emulator.
Should You Use a Rock960 - Who is the Rock960 SBC for?
This board seems to be aimed at developers wanting a powerful hardware base to develop AI projects on. While the given software images are functional, there is little beginner-friendly supporting documentation, and inexperienced Linux or Android developers may struggle to get going.
Intermediate and above developers will likely find the Rock960 to be a good blend of price to functionality, especially when you factor in the Open AID firmware, which acts as a bridge between most popular Machine Learning frameworks and the hardware.
That said, the RK3399 is a powerful chipset, and this board provides enough I/O for learning every aspect of the SoC, so it could be a great board for learning about development on a multi-core ARM platform.
Rock960 Model A/B vs Model C
As mentioned earlier, there are some key differences between the models of Rock960. This article has focused primarily on the Model A and B, but for clarity here are all the differences:
The Competition - Rock960 Maker Board Alternatives
A common issue facing many AI SBCs is the issue that they have to compare to an assisted Raspberry Pi 4B. Add a USB accelerator like the Google Coral USB stick or Intel Neural Compute Stick 2 and you've suddenly got a super powerful and well-documented AI SBC for not a lot more than a Rock960.
At the other end of the scale, the power required for simple AI tasks is getting lower as the technology matures, and the Banana PiBPI EIA-80 is a microcontroller-based board costing only $16, but capable of a surprising amount.
This is hardly a fair comparison on either count though, as neither are really AI SBCs. A fairer comparison would be the Jetson Nano. This is where things get a little more interesting, as the Jetson Nano completely outstrips the Rock960 in terms of image and graphics processing but loses out when it comes to deep learning due to the lack of a dedicated NPU.
The Rock960 is a fully-fledged development platform for vision projects using Android and Linux-based distributions. It's not for everyone and required a lot of previous knowledge to get going with, but the combination of features and Open AID "framework of frameworks" for the $99 starting price makes it a compelling option to anyone looking to dive deep into embedded AI.
Leave your feedback...