VS Arduino
Visual Micro >> Installation & Troubleshooting >> SiFive HiFive1 in VS2017/VMicro
https://www.visualmicro.com/forums/YaBB.pl?num=1556299626

Message started by DrOldies on Apr 26th, 2019 at 5:27pm

Title: SiFive HiFive1 in VS2017/VMicro
Post by DrOldies on Apr 26th, 2019 at 5:27pm
I have not seen much on the 320+ MHz Risc-V HiFive1 board. https://www.sifive.com/boards/hifive1

I’ve uncovered the settings to get the SiFive HiFive1 working using Blink.ino in VS2017 with VisualMicro. It also compiles and uploads successfully in Arduino IDE 1.89 with these settings.   Checking the uploader line is required.

vMicro dropdown:
Ide = Arduino 1.6/1.8
Board = HiFive1
Option = CPU frequency: 256 MHz PLL
Option 2 = Tool install location: default
Port or IP = COM11

Uploader:
Programmer: SiFive OpenOCD
     [check]  Always use programmer for upload (instead of port/IP)

The upload will report several errors but upload successfully:
adapter speed: 10000 kHz
halted at 0x204001ae due to debug interrupt
cleared protection for sectors 64 through 255 on flash bank 0
halted at 0x204001ae due to debug interrupt
** Programming Started **
auto erase enabled
halted at 0x80000004 due to software breakpoint...
. . . ** Verified OK **
halted at 0x20400004 due to step
     The upload process has finished.

Title: Re: SiFive HiFive1 in VS2017/VMicro
Post by Visual Micro on Apr 28th, 2019 at 5:21pm
Thanks that's very useful thanks but I only see max and linux tools for it. It is an interesting looking board. How much is it?

note: the OpenOCD uploader always shows output often with errors but it is just verbose output of it's attempt to discover device capabilities. It is uploads okay then it's okay.

Here are the bsp/info links I found for it. Do you have different or did you add the windows tools yourself?

http://static.dev.sifive.com/bsp/arduino/package_sifive_index.json

https://static.dev.sifive.com/dev-kits/hifive1/hifive1-getting-started-v1.0.3.pdf

Thanks again

ps: A useful test of visual micro with missing tools for windows. The notification messages were many and unhelpful. Fixed in the next release.

Title: Re: SiFive HiFive1 in VS2017/VMicro
Post by DrOldies on Apr 28th, 2019 at 11:15pm
Tim,

I assumed that the users' HiFive1 was installed in the Arduino IDE. To clarify, I am using Windows 10. I did not download the .json files, but installed through the IDE boards manager. 

I ran a Dhrystone test and the HiFive1 reported:

Microseconds for one run through Dhrystone: 11.47
Dhrystones per Second: 87178.00
VAX MIPS rating = 49.62

The Arduino MEGA 2560 VAX MIPS are 9.78 for comparison.

Here are my installation notes:

The HiFive1 board rev b (minor improvements from their initial crowsdsupply.com funded version) is $59USD. 

1. Use the Boards Manager to install the SiFive HiFive1 board

2. Add this to the File\Preferences\Additional Boards Manager URLS:
https://raw.githubusercontent.com/VSChina/azureiotdevkit_tools/master/package_azureboard_index.json,http://arduino.esp8266.com/stable/package_esp8266com_index.json,https://raw.githubusercontent.com/westerndigitalcorporation/CincoWinPkg/master/package_sifive_index.json

3. You must also install the HiFive1 FTDI Device Driver. Follow the directions here exactly or the install will fail: https://mcuoneclipse.com/2018/08/17/open-source-risc-eclipse-with-risc-v-on-the-sifive-hifive1-board/
If you cannot find the driver, download their FreedomStudio app. Its in there.

I use several of the faster (RISC) Arduino compatibles starting with the Teensy. I prefer to program them in VS 2017 + VisualMicro rather using a combinatioon of IDEs for different manufacturers. Let's see, Energia for Launchpad, Freedom Studio for HiFive1, VSCODE+PlatformIO for RE-ARM, etc.


Title: Re: SiFive HiFive1 in VS2017/VMicro
Post by Visual Micro on Apr 28th, 2019 at 11:37pm
Thanks, it was the .json for board manager that I was talking about when I mentioned download. Good to know it works. Thanks again.

It probably supports gdb debugging. Let me know if you want to try to config it. We are currently testing gsb for various boards. The fact it uses openOCD to upload might mean it is simple.




VS Arduino » Powered by YaBB 2.6.12!
YaBB Forum Software © 2000-2024. All Rights Reserved.