Hi Rob, i'm telling you, is working now.
First you could use apio commands if you have setup your apio for use in terminal.
All works only with apio dev ok?
The problem will be for the name of the fpga, Apio needs to idenfitfy with concise literal. You could view all the supported chips with the commando:
$> apio fpgas
The output is for example:
in our case we need the literal for your fpga iCE40-LP1K-CB121 that in apio is ice40lp1k-cb121. and should be lowercase exactly like in FPGA-ID column.
Changing this in your boards.jsonc (this is important, you need to rename to boards.jsonc in plural):
and if now you do the command for example $> apio lint
You have a correct output, it's wrong because now we are trying to work in the folder where you put apio.ini file by hand and there are no code (apio works with verilog not with .ice files), and in this moment apio not found any verilog fail and so on no main module.
For trying if we are going in the best way, we could copy the main.v and main.pcf file generated by your icestudio in ice-build folder (copy at the root folder), and then execute for example apio lint again :
All works!!!
now if you try in your copy of icestudio with your definition icestudio should create the apio.ini file and in this place copy your boards.jsonc and then the commands should be work.
How you are with this i'll move some tasks to do now, i'll try to deploy the support for integrating new boards in Icestudio this days and if you want you could help us to test it, count with you? 😉
Have a nive afternoon!