Unfortunately, the RevB is not supported under the Arduino IDE. You would have to use either Freedom Studio or the Freedom SDK (or platformio I think?). In all cases this requires the J-Link package in order to debug/flash. Check the RevB getting started guide (which is slightly different than the original hifive1)
There is the option of flashing via USB mass storage, but generating the hex file requires one of the above two approaches.
It would be nice if Arduino support eventually emerged, but my guess is that the change in JTAG<->USB solution for flashing is the biggest hurdle at the moment, as this brought a dependency on the J-Link binary that likely can’t be redistributed.
HiFive1 is a low-cost, Arduino-compatible development board featuring the Freedom E310. It’s the best way to start prototyping and developing your RISC‑V applications.
This implies you can program it from the Arduino IDE. Lower down it says:
New Version of HiFive1 Available
Check Out HiFive1 Rev B
Nowhere does it say that the Rev B is no longer Arduino compatible.
Please can you add this information to your website so other people don’t mistakenly buy the HiFive1 Rev B on this understanding.
It’s definitely disappointing, and I hit the same problem–I really enjoyed the original HiFive1 w/ Arduino and got this expecting it to work the same.
…they do also have a bare JTAG header on the board, I wonder if one could use an FTDI jtag<->usb adapter and fake it being an original HiFive?
I have had [mixed] results with the USB mass storage, and the RevB platform wise should be very similar to original. Maybe you could verify/compile your stuff in Arduino against the HiFive1, take the elf and convert to a hex file (elf2hex should be in freedom-e-sdk), then drag-n-drop to the board? It’s not great, but it may be workable.
I’m currently experimenting to get OpenOCD working with my board and I’m slowly making some progress, but I’m not sure how much functionality I’ll be able to get out of it.
Confirming that we dropped support for the Arduino IDE for the Rev B board. I don’t fully understand the technical issues but I can try to find out more.
There is internal debate about the semantics of “Arduino-compatible”: some folks meant this to refer to the form factor, rather than compatibility with software tools/ecosystem.
We’re working on getting our website updated. Thanks for bringing this to our attention – our apologies for not making this clear.
Nick Knight
Technical Lead, Software Performance Team