Deploy on Individual Test Net - Help

Hi Compound Community, we are a group of students setting up the Compound protocol on our own test net at university. Thus, we cannot fork the main net as in the tutorials (e.g. here). We deployed the compound contracts from GitHub:

  • WhitePaperInterestRateModel

  • Comptroller

  • CEther

  • SimplePriceOracle

  • Erc20 and CErc20

We can successfully supply ETH and Erc20. But once we try to borrow any assets, we run into multiple issues. We are working with an adopted version of this script, which is borrowing Erc20 using ETH as collateral.
Now, our underlyingPrices are at 0, which is why we are unable to borrow any assets.

We’ve added market support for the cTokens within the comptroller.
We have tried setting the collateralFactor of CEther in Comptroller, but this fails with error code -32000. The same issues occur when setting the underlyingPrice of CEther within the SimplePriceOracle.

Our issue seems that we’re missing something when adding new Erc20 and their corresponding CErc20 tokens. We’ve tried following the developer guide here, without success.

What could be our issue here?
Does anybody know any helpful resources when setting up Compound protocol from scratch (without forking the main net)? Maybe with example exchangeRateMantissas?

Thanks in advance!


From what I read on in the contribution guide, setting up a development environment either involves forking the main net with e.g. hardhat and testing new cToken contracts locally or using a test net where the protocol is already deployed. But the complete protocol cannot be deployed as is, do I see this correctly?

Is this information not shared intentionally or are we missing something?

Hi @mailan, I don’t have a direct answer to your question, but I wanted to encourage your group to search for some of the keywords in your question on Compound’s Discord server – I have seen this question (or at least something very similar), either in the Development or Support-Help channel, from other community developers running into this issue.

In general I think you’ll find that the Discord server is a primary nexus for dev-help-a-dev types of interactions. See you there!