If the coin you are adding is a fork of Bitcoin or other cryptocurrency we already support (in other words, new app is not needed) you can modify the definitions in the trezor-firmware repository. The location depends on the type of the asset to be added:

We will review this issue and give feedback. We either confirm that we would like to have this coin in the firmware and give you a go-ahead or we might decline. Please note that it is not possible to merge each and every coin. Using this workflow we would like to ensure you are not spending time on developing code we will later decline.

If you do not create this issue, be aware that we will most likely reject your PR.

If we agree on accepting the coin, you can start developing a pull request. Every submission should contain at least these four components:

If you need to add new protobuf messages, these can be found in common/protob directory.

In general, it is a good idea to get inspired by the past Pull requests for other coins. Note that the examples here are split into individual PRs against different repos. We have since switched to monorepo model, so you can get all the changes in a single pull request.