#ar #driver #display #sdk #rokid #glasses #nreal

ar-drivers

Opensource driver for Rokid, Nreal and some other AR glasses

8 unstable releases (3 breaking)

0.4.3 Oct 11, 2023
0.4.2 Aug 28, 2023
0.3.0 Apr 7, 2023
0.2.1 Feb 12, 2023
0.1.0 Jan 25, 2023

#183 in Hardware support

MIT license

96KB
2K SLoC

AR driver library for Rust

Crates.io Docs.rs

This repository contains is a simplified Rust SDK for the following glasses:

  • XREAL Air
  • XREAL Light
  • Rokid Air
  • Rokid Max
  • Grawoow G530 (a.k.a. Metavision M53)
  • Mad Gaze Glow

It supports getting basic sensor data and setting up the display.

While only the these glasses is supported right now, if I could get my hands on some other ones, I'd happily support them too.

There's are two somewhat detailed blog posts documenting the various protocols too. So if you're only interested in that, you won't even need to read Rust code :)

3D SBS mode switching

Some people only need programmatic mode switching. For that, all you need to do is:

Install dependencies (rust and libudev)

sudo apt install cargo libudev-dev libstdc++-12-dev
cargo update

Optional: add the udev scripts to your udev config, so the glasses are available to regular users:

sudo cp udev/* /etc/udev/rules.d/
sudo udevadm control --reload

Run the code directly:

cargo run --example set_to_3d

Or build and then run:

cargo build --release --example set_to_3d
target/release/examples/set_to_3d

The executable is statically linked so you can copy it around, even to other PCs.

Contribution

I appreciate reported bugs, feature requests and of course pull request.

License

Licensed under the MIT license

Some parts of the protocols were obtained with reverse engineering.

Reverse engineering explicitly allowed in the EU for interworking purposes. It's probably fair use everywhere else, but you should check your own country's laws.

The project is not affiliated with any of the manufacturers or their related entities.

Dependencies

~4–14MB
~159K SLoC