Welcome to the iCEBreaker community. This wiki is work in progress and the information included here might not be sufficient or not what you are looking for.
Install the FPGA flow (toolchain)
The first thing you should do is install the necessary tools to synthesize, place, route your design and then generate the bitstream.
Note: We sincerely recommend that you use a Linux or Mac computers when you start out. You can use Windows but unless you are comfortable with the vendor tools (The vendor tools have their own learning curve and complexity, we do not have examples or step by step guides for them for now, you are on your own ;) ) it requires more advanced knowledge of the tools as well as Windows and you will need to combine and match a few solutions together. We are working on a canned solution for Windows but it is not ready for prime time yet. The only simple path for Windows is to use icestudio. It will limit you to the use of their graphical design software for your projects. If that is what you are looking for go ahead, follow icestudio installation instructions on their website. We do have some example projects for icestudio on our GitHub. If you want to develop your designs using verilog, migen or nMigen then continue reading. :)
The tools that are used for that are:
- Yosys (Synthesis)
- nextpnr (Place & Route)
- icestorm (Provide the database to nextpnr. Generate and program the bitstream to the iCEBreaker as well as some other useful ice40 tools.)
There are several ways to install the tools.
On Linux an easy way to install the tools is the summon-fpga-tools script. This will build the most up to date tools for you and install them in your home subdirectory. You don't need admin rights except for the udev rules file.
We have developed two workshops so far. WTFpga and icebreaker-workshop. Depending on which Pmods you have you might choose one or the other, or both. :)
The WTFpga Workshop requires an iCEBreaker, 7-Segment Display Pmod and Dip Switch Pmod. You can find all the current materials on github. It includes a PDF that is meant as a guide, the whole workshop is self guided. But if you have questions ask us in the Discord Chat and we will try to help you. :)
iCEBreaker Stopwatch Workshop
Try out examples
The iCEBreaker community keeps creating more and more great examples for the iCEBreaker. Here is a list of links to the different github repositories containing small and big examples.
- iCEBreaker Verilog Examples
- iCEBreaker Migen Examples
- iCEBreaker nMigen Examples
- kbob's iCEBreaker nMigen Examples
- iCEBreaker icestudio Examples
- kbob iCEBreaker candy RGB LED Panel Matrix examples
- tnt iCEBreaker projects
- scanlime icestudio RGB LED Panel design
- scanlime icestudio Digital Video design
If you know of more repositories we should include in this list make sure to let us know in the Discord Chat.