Difference between revisions of "Arduino Setup for Explore M3"
(Update steps for reinstallation) |
|||
(44 intermediate revisions by 3 users not shown) | |||
Line 1: | Line 1: | ||
[[category:Explore M3]] | [[category:Explore M3]] | ||
− | + | In this tutorial we will look at the basic setups of setting up the ExploreM3 on Arduino and installing DFU and Vcom drivers on Windows, Linux and MAC. Finally we will flash a simple led-blink example. | |
[[File:0 Arduino setup.jpg]] | [[File:0 Arduino setup.jpg]] | ||
=The Explore M3 Parts= | =The Explore M3 Parts= | ||
Line 7: | Line 7: | ||
=Using Board Manager= | =Using Board Manager= | ||
− | Download and install the [https://www.arduino.cc/en/Main/Software Arduino IDE] (1.6.12 | + | '''''(This Step is common for all operating systems)''''' <br> |
− | Open the Arduino IDE and go to '''File-->Preferences''' and paste the below json URL into the '''Additional Board Manager URLs''' text box | + | * Download and install the [https://www.arduino.cc/en/Main/Software Arduino IDE] (1.6.12 ). Older versions of the Arduino IDE are not supported. <br> |
− | <syntaxhighlight> | + | * Open the Arduino IDE and go to '''File-->Preferences''' and paste the below json URL into the '''Additional Board Manager URLs''' text box and hit OK. |
+ | |||
+ | <!-- 'syntaxhighlight' breaks the text. Use 'code' insted --> | ||
+ | |||
+ | <code> | ||
https://raw.githubusercontent.com/ExploreEmbedded/Explore-M3/master/package_ExploreM3_index.json | https://raw.githubusercontent.com/ExploreEmbedded/Explore-M3/master/package_ExploreM3_index.json | ||
− | </ | + | </code><br> |
+ | <br> | ||
[[File:FilePreferences02.png ]] | [[File:FilePreferences02.png ]] | ||
− | + | * Open the Board Manager from '''Tools-->Board-->Boards Manager'''. Scroll down and look for '''Explore-M3(32-bits ARM Cortex-M3)''' board. Click on the board entry and hit install. | |
− | + | [[File:BoardManager01.png ]] | |
− | + | ||
− | + | * This will install the '''Explore-M3''' board and the '''arm-none-eabi-gcc''' tool chain. Installation may take few minutes depending on the internet speed. Once the installation has completed, an Arduino-blue '''INSTALLED''' will appear next to the entry. | |
− | + | [[File:BoardManager02.png ]] | |
− | + | ||
− | + | *If you encounter '''''CRC mismatch Error''''', delete Explore M3 Arduino installation files from below mentioned paths and retry installation. | |
− | + | **Windows: | |
− | + | ***\AppData\Local\Arduino15\staging\packages | |
− | + | ***\AppData\Local\Arduino15\packages | |
− | + | **Mac | |
+ | ***~/Library/Arduino15/staging/packages | ||
+ | ***~/Library/Arduino15/packages | ||
+ | |||
+ | [[File:ArduinoReinstallError.PNG]] | ||
+ | |||
+ | * Now the Explore-M3 board will appear in the board list. | ||
+ | [[File:BoardManager03.png ]] | ||
+ | |||
+ | =Driver installation= | ||
+ | ==Windows== | ||
#'''Install Virtual COM driver''' ; This driver makes the same USB interface appear as virtual com port. The virtual COM code on the Arduino resides with every sketch that uses the '''Serial''' Class. | #'''Install Virtual COM driver''' ; This driver makes the same USB interface appear as virtual com port. The virtual COM code on the Arduino resides with every sketch that uses the '''Serial''' Class. | ||
− | ## | + | ##Connect the board to system, the COM port will appear as shown. [[File:8 driver M3.png]] |
− | ## | + | ##Go to run window '''(Windows+R)''', type '''%appdata%''' and click ok. |
− | ## | + | ##Go to '''''AppData\Local\Arduino15\packages\ExploreM3\hardware\Explore-M3\1.0.0\tools\win''''' and run the Zadig utility.[[File:2a driver M3.png]] |
##Install the CDC driver using the Zidag utility this time. [[File:9 driver M3.png]] [[File:10 driver M3.png]] | ##Install the CDC driver using the Zidag utility this time. [[File:9 driver M3.png]] [[File:10 driver M3.png]] | ||
##Verify successful installation in the device manager. [[File:11 driver M3.png]] | ##Verify successful installation in the device manager. [[File:11 driver M3.png]] | ||
− | |||
<br/> | <br/> | ||
− | |||
− | + | #'''Installing the Device Firmware Upgrade(DFU) Driver.''' This driver is used for programming the Explore M3. | |
− | This | + | ## To upload a new program to Explore M3, put the board in programming mode by holding down the '''USB Boot''' switch, press and release the '''reset switch''' and then release the '''USB Boot''' switch. The RGB LED turns green indicating USB Boot mode. |
+ | ## The board shows up as unknown device in device manager. [[File:1a driver M3.png|none]] | ||
+ | ## Click on ''Options'' and select ''List All Devices''[[File:3_driver_M3.png]] | ||
+ | ##Select the device as Explore M3 and assign WinUSB driver as shown [[File:3a1_driver_M3.png]] | ||
+ | ##Click on Install driver[[File:4_driver_M3.png]] | ||
+ | ##Verify in the device Manager that the driver is successfully installed. [[File:5a_driver_M3.png]] | ||
+ | ==Linux== | ||
+ | This setup has been tested on Ubuntu 64 bit. If you should have any errors other linux flavours, do post in the comments. | ||
One good thing I noticed, drivers are not required but only the device needs to be enabled. So lets get started. | One good thing I noticed, drivers are not required but only the device needs to be enabled. So lets get started. | ||
− | + | * Create a file named '''''install.sh''''' under '''/.arduino15/packages/ExploreM3/hardware/Explore-M3/1.0.0/tools/linux$ ''' | |
− | + | with the following content | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
<syntaxhighlight> | <syntaxhighlight> | ||
− | + | #!/bin/sh | |
− | + | ||
− | + | if sudo [ -w /etc/udev/rules.d ]; then | |
− | + | echo "Copying Explore M3-specific udev rules..." | |
− | + | sudo cp -v 90-explore-m3.rules /etc/udev/rules.d/90-explore-m3.rules | |
+ | sudo chown root:root /etc/udev/rules.d/90-explore-m3.rules | ||
+ | sudo chmod 644 /etc/udev/rules.d/90-explore-m3.rules | ||
+ | sudo chmod 777 exploreM3_upload | ||
+ | sudo chmod 777 upload_reset | ||
+ | sudo chmod 777 dfu | ||
+ | echo "Reloading udev rules" | ||
+ | sudo udevadm control --reload-rules | ||
+ | echo "Adding current user to dialout group" | ||
+ | sudo adduser $USER dialout | ||
+ | else | ||
+ | echo "Couldn't copy to /etc/udev/rules.d/; you probably have to run this script as root? Or your distribution of Linux doesn't include udev; try running the IDE itself as root." | ||
+ | fi | ||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
− | |||
</syntaxhighlight> | </syntaxhighlight> | ||
− | ==Notes== | + | * Run ''./install.h'' (change the file permission if required). |
− | + | [[File:1_run_install.png]] | |
+ | |||
+ | ====Notes==== | ||
*Give appropriate permissions when running the install.sh and other files. | *Give appropriate permissions when running the install.sh and other files. | ||
*You may be required to give permissions to use virtual com port. | *You may be required to give permissions to use virtual com port. | ||
* Note that Explore M3 acts as Device Firmware Upgrade (DFU) and virtual COM port with the same USB interface. | * Note that Explore M3 acts as Device Firmware Upgrade (DFU) and virtual COM port with the same USB interface. | ||
− | =MAC= | + | ==MAC== |
− | [ | + | This setup has been tested on macOS High Sierra. |
+ | Run the following commands in terminal and provide password whenever prompted for. | ||
+ | |||
+ | <html> | ||
+ | <script src="https://gist.github.com/AmrutaCh/7bbc306937fadc9c2bde9478294b834f.js"></script> | ||
+ | </html> | ||
+ | |||
+ | This will install libusb and set required file permissions. | ||
+ | |||
+ | [[File:libusbInstallation_OSX.png]] | ||
+ | |||
+ | =Running First Example on M3= | ||
+ | After setting up the board and indtalling the drivers it's time to run the first example on Explore-M3 board. | ||
+ | #Select the board as Explore M3, and upload the the test code [[File:ExploreM3 example1.png]] | ||
+ | #Test code for reference | ||
+ | <html> | ||
+ | <script src="https://gist.github.com/SaheblalBagwan/f3253fdad505d4d72c6d01a6bad2305d.js"></script> | ||
+ | </html> | ||
+ | |||
+ | =Repository Link= | ||
+ | [https://github.com/ExploreEmbedded/Explore-M3 Explore-M3 Repository Link] <br><br> | ||
+ | |||
+ | Have a opinion, suggestion , question or feedback about the article let it out here! | ||
+ | {{DISQUS}} |
Latest revision as of 13:57, 4 November 2017
In this tutorial we will look at the basic setups of setting up the ExploreM3 on Arduino and installing DFU and Vcom drivers on Windows, Linux and MAC. Finally we will flash a simple led-blink example.
Contents
The Explore M3 Parts
The figure shows location of various parts on the board, which will be using during the setup. Look at the switches, the RGB led and the led on pin 13 in particular.
Using Board Manager
(This Step is common for all operating systems)
- Download and install the Arduino IDE (1.6.12 ). Older versions of the Arduino IDE are not supported.
- Open the Arduino IDE and go to File-->Preferences and paste the below json URL into the Additional Board Manager URLs text box and hit OK.
https://raw.githubusercontent.com/ExploreEmbedded/Explore-M3/master/package_ExploreM3_index.json
- Open the Board Manager from Tools-->Board-->Boards Manager. Scroll down and look for Explore-M3(32-bits ARM Cortex-M3) board. Click on the board entry and hit install.
- This will install the Explore-M3 board and the arm-none-eabi-gcc tool chain. Installation may take few minutes depending on the internet speed. Once the installation has completed, an Arduino-blue INSTALLED will appear next to the entry.
- If you encounter CRC mismatch Error, delete Explore M3 Arduino installation files from below mentioned paths and retry installation.
- Windows:
- \AppData\Local\Arduino15\staging\packages
- \AppData\Local\Arduino15\packages
- Mac
- ~/Library/Arduino15/staging/packages
- ~/Library/Arduino15/packages
- Windows:
- Now the Explore-M3 board will appear in the board list.
Driver installation
Windows
- Install Virtual COM driver ; This driver makes the same USB interface appear as virtual com port. The virtual COM code on the Arduino resides with every sketch that uses the Serial Class.
- Connect the board to system, the COM port will appear as shown.
- Go to run window (Windows+R), type %appdata% and click ok.
- Go to AppData\Local\Arduino15\packages\ExploreM3\hardware\Explore-M3\1.0.0\tools\win and run the Zadig utility.
- Install the CDC driver using the Zidag utility this time.
- Verify successful installation in the device manager.
- Installing the Device Firmware Upgrade(DFU) Driver. This driver is used for programming the Explore M3.
- To upload a new program to Explore M3, put the board in programming mode by holding down the USB Boot switch, press and release the reset switch and then release the USB Boot switch. The RGB LED turns green indicating USB Boot mode.
- The board shows up as unknown device in device manager.
- Click on Options and select List All Devices
- Select the device as Explore M3 and assign WinUSB driver as shown
- Click on Install driver
- Verify in the device Manager that the driver is successfully installed.
Linux
This setup has been tested on Ubuntu 64 bit. If you should have any errors other linux flavours, do post in the comments. One good thing I noticed, drivers are not required but only the device needs to be enabled. So lets get started.
- Create a file named install.sh under /.arduino15/packages/ExploreM3/hardware/Explore-M3/1.0.0/tools/linux$
with the following content
#!/bin/sh if sudo [ -w /etc/udev/rules.d ]; then echo "Copying Explore M3-specific udev rules..." sudo cp -v 90-explore-m3.rules /etc/udev/rules.d/90-explore-m3.rules sudo chown root:root /etc/udev/rules.d/90-explore-m3.rules sudo chmod 644 /etc/udev/rules.d/90-explore-m3.rules sudo chmod 777 exploreM3_upload sudo chmod 777 upload_reset sudo chmod 777 dfu echo "Reloading udev rules" sudo udevadm control --reload-rules echo "Adding current user to dialout group" sudo adduser $USER dialout else echo "Couldn't copy to /etc/udev/rules.d/; you probably have to run this script as root? Or your distribution of Linux doesn't include udev; try running the IDE itself as root." fi
- Run ./install.h (change the file permission if required).
Notes
- Give appropriate permissions when running the install.sh and other files.
- You may be required to give permissions to use virtual com port.
- Note that Explore M3 acts as Device Firmware Upgrade (DFU) and virtual COM port with the same USB interface.
MAC
This setup has been tested on macOS High Sierra. Run the following commands in terminal and provide password whenever prompted for.
This will install libusb and set required file permissions.
Running First Example on M3
After setting up the board and indtalling the drivers it's time to run the first example on Explore-M3 board.
Repository Link
Have a opinion, suggestion , question or feedback about the article let it out here!