Estimated reading time: 3 minutes
Nano X
Important
The Nano X does not support side loading, therefore you must use the device emulator Speculos for loading to work. See how to install and use it.
Nano S and S Plus
1. Install ledgerblue
ledgerblue
is a package that contains Python tools to communicate with Ledger devices and manage applications life cycle. It is recommended to install this package in a Virtual Environment in your native environment (not a Docker image) to avoid hidapi issues.
Required packages
First, make sure you have installed these packages:
- libudev-dev
- libusb-1.0-0-dev
- python-dev (required only for python 2.7)
- virtualenv
ledgerblue package
Outside of your application folder, install the ledgerblue package in a virtual environment:
virtualenv ledger
source ledger/bin/activate
pip install ledgerblue
deactivate
2. Clone the SDK
Important
The Nano S or S Plus SDK must first be locally cloned and stored in BOLOS_SDK
for the loading to work.
Use the following commands for the Nano S:
git clone https://github.com/LedgerHQ/nanos-secure-sdk.git nanos-secure-sdk
export BOLOS_SDK=<path-to>nanos-secure-sdk
For the Nano S Plus:
git clone https://github.com/LedgerHQ/nanos-secure-sdk.git nanosplus-secure-sdk
export BOLOS_SDK=<path-to>nanosplus-secure-sdk
3 Load and delete
Note
Before loading an application, make sure you have enough space on the device.
Load:
- Connect and unlock the Nano S or Nano S Plus.
- Go to the root of app‑boilerplate file and activate the Virtual Environment with
source ./venv/bin/activate
.
- Use
make load
to load the app to the Nano S or Nano S Plus. Your will be asked to “Approve unsafe manager”, it is normal.
- You can exit the Virtual Environment with the command
deactivate
.
Delete:
- Connect and unlock the Nano S or Nano S Plus.
- Go to the root of app‑boilerplate
- Type
make delete
to delete it