~
[1] Get Ubuntu 22.04.1 ISO and spin up the VM.
[2] Update all packages (after all, this is a fresh Ubuntu install).
sudo apt update
sudo apt upgrade
[3] Install git and dependencies
sudo apt install git autotools-dev automake libusb-1.0-0-dev libtool python3-virtualenv libsdl2-dev pkg-config curl gcc xterm
[4] Clone repository
git clone https://github.com/Foundation-Devices/passport2.git
cd passport2/simulator
[5] Install Rust & Cargo (never hurts
) to then install
'Just' (command runner).
curl https://sh.rustup.rs -sSf | sh
cargo install just
[6] Create work and snapshots folders (not sure why they don't exist)
Edit: added microsd folder which emulates an inserted microSD.mkdir work snapshots
mkdir work/microsd
[7] Start simulator (this builds the firmware)
just sim color
To get the camera working (kinda needed for supply chain validation), install OBS with its virtual camera feature, as well.
[8] Install QT6 dependency and OBS itself.
sudo apt install qt6-base-dev qt6-wayland # may not be required; maybe try without and report back :)
sudo add-apt-repository ppa:obsproject/obs-studio
sudo apt update
sudo apt install obs-studio
Then, start OBS, add an image of whatever QR code and make it nice and big. Images below. Lastly, restart the simulator.
If you want to reset the simulator, delete the
work folder that you created earlier and re-create it (or delete all files within it).
Left: OBS setup steps; Right: How it should look like with everything set up correctly. Notice the QR code rather big and the Virtual Camera running.
Left: Camera view of Passport simulator. The QR code is a bit too large, therefore no successful scan. Right: As soon as I resized it a bit, such that it fits inside the camera view, it is scanned and the words are shown (I believe always the same hardcoded words in the simulator during Supply Chain Validation, since it doesn't obviously contain the actual secret).
Decoding addresses and transactions should work correctly, though.