<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en">
		<id>https://wiki.robolabo.etsit.upm.es/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Juanh</id>
		<title>RobolaboWiki - User contributions [en]</title>
		<link rel="self" type="application/atom+xml" href="https://wiki.robolabo.etsit.upm.es/api.php?action=feedcontributions&amp;feedformat=atom&amp;user=Juanh"/>
		<link rel="alternate" type="text/html" href="https://wiki.robolabo.etsit.upm.es/index.php/Special:Contributions/Juanh"/>
		<updated>2026-04-23T11:14:43Z</updated>
		<subtitle>User contributions</subtitle>
		<generator>MediaWiki 1.25.3</generator>

	<entry>
		<id>https://wiki.robolabo.etsit.upm.es/index.php?title=SDIN_Boards&amp;diff=513</id>
		<title>SDIN Boards</title>
		<link rel="alternate" type="text/html" href="https://wiki.robolabo.etsit.upm.es/index.php?title=SDIN_Boards&amp;diff=513"/>
				<updated>2017-03-15T12:41:02Z</updated>
		
		<summary type="html">&lt;p&gt;Juanh: &lt;/p&gt;
&lt;hr /&gt;
&lt;div&gt;__TOC__&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h1&amp;gt; Base Environment  &amp;lt;/h1&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt; Install Compiler gcc-arm-none-eabi &amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download last version of GCC ARM Embedded from:&lt;br /&gt;
https://launchpad.net/gcc-arm-embedded/+download&lt;br /&gt;
&lt;br /&gt;
Untar the compiler:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tar -xvjf gcc-arm-none-eabi-&amp;lt;VERSION&amp;gt;.tar.bz2&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Copy it to a common place:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo cp -r gcc-arm-none-eabi-&amp;lt;VERSION&amp;gt; /opt/compilerSTM32&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;b&amp;gt; Important!! &amp;lt;/b&amp;gt; If in a 64 bits machine, you will need to install the following libs:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install lib32z1 lib32ncurses5 lib32bz2-1.0 &lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt; Install OpenOCD On-Chip Debugger&amp;lt;/h2&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install dependencies:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo apt-get install flex bison libgmp3-dev libmpfr-dev libncurses5-dev libmpc-dev autoconf texinfo build-essential \&lt;br /&gt;
libftdi-dev libusb-1.0-0-dev libexpat1-dev&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Download last version of Openocd from:&lt;br /&gt;
http://openocd.org/&lt;br /&gt;
&lt;br /&gt;
Untar openocd:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tar -xvzf openocd-&amp;lt;VERSION&amp;gt;.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go into the directory:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd openocd-&amp;lt;VERSION&amp;gt;&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Configure openocd compilation:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
./configure --prefix=/opt/openocd/ --enable-jlink --enable-amtjtagaccel --enable-ftdi --enable-buspirate --enable-stlink \&lt;br /&gt;
--enable-ftdi --enable-rlink&lt;br /&gt;
&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Compile it:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
make&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Install:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo make install&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Prepare its use according to udev:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
(old versions)&lt;br /&gt;
sudo cp -r contrib/openocd.udev /etc/udev/rules.d/90-jtag.rules&lt;br /&gt;
&lt;br /&gt;
(new versions)&lt;br /&gt;
sudo cp -r contrib/99-openocd.rules /etc/udev/rules.d/&lt;br /&gt;
&lt;br /&gt;
sudo udevadm control --reload-rules&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
Grant permits to user: user must be in plugdev:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
sudo vi /etc/group&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h1&amp;gt; Eclipse Environment  &amp;lt;/h1&amp;gt;&lt;br /&gt;
It is mandatory to install the Base Environment first&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt; Install Eclipse &amp;lt;/h2&amp;gt;&lt;br /&gt;
(More info at: http://help.eclipse.org/mars/index.jsp?topic=%2Forg.eclipse.cdt.doc.user%2Fgetting_started%2Fcdt_w_import.htm)&lt;br /&gt;
&lt;br /&gt;
Download last version of Eclipse IDE for C/C++ Developers from: http://www.eclipse.org/downloads/&lt;br /&gt;
&lt;br /&gt;
Untar eclipse:&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
tar -xvzf eclipse-cpp-&amp;lt;VERSION&amp;gt;-linux-gtk-x86_64.tar.gz&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go into directory and execute eclipse:&lt;br /&gt;
&lt;br /&gt;
&amp;lt;pre&amp;gt;&lt;br /&gt;
cd eclipse&lt;br /&gt;
./eclipse&lt;br /&gt;
&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Define workspace (e.g. /home/&amp;lt;USER&amp;gt;/stm32EclipseWorkspace)&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h3&amp;gt; Install C/C++ Developping tools &amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go to Help -&amp;gt; Install New Sofware -&amp;gt; Choose from the drop-down list &amp;lt;br&amp;gt;&lt;br /&gt;
- Name: CDT-&amp;lt;ECLIPSE VERSION&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
- Location: http://download.eclipse.org/tools/cdt/releases/&amp;lt;VERSION&amp;gt; &amp;lt;br&amp;gt;&lt;br /&gt;
''For example:'' &amp;lt;br&amp;gt;&lt;br /&gt;
- ''Name:'' CDT-Neon.2 &amp;lt;br&amp;gt;&lt;br /&gt;
- ''Location:'' http://download.eclipse.org/tools/cdt/releases/9.2 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Click Ok &amp;lt;br&amp;gt;&lt;br /&gt;
- Select: CDT Optional Features -&amp;gt; C/C++ GDB Hardware Debugging &amp;lt;br&amp;gt;&lt;br /&gt;
- Next, Next, Agree, Finish &amp;lt;br&amp;gt;&lt;br /&gt;
- Restart &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&amp;lt;br&amp;gt;&lt;br /&gt;
&amp;lt;h3&amp;gt; Install GNU ARM Plugins &amp;lt;/h3&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Go to Help -&amp;gt; Install New Sofware -&amp;gt; add &amp;lt;br&amp;gt;&lt;br /&gt;
- Name: GNU ARM Eclipse Plugins &amp;lt;br&amp;gt;&lt;br /&gt;
- Location: http://gnuarmeclipse.sourceforge.net/updates &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
- Click Ok &amp;lt;br&amp;gt;&lt;br /&gt;
- Select All &amp;lt;br&amp;gt;&lt;br /&gt;
- Next, Next, Agree, Finish &amp;lt;br&amp;gt;&lt;br /&gt;
- You will be asked to accept some specific not known content, do it &amp;lt;br&amp;gt;&lt;br /&gt;
- Restart &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt; Import Project &amp;lt;/h2&amp;gt;&lt;br /&gt;
(More info at: http://gnuarmeclipse.github.io/plugins/install/)&lt;br /&gt;
&lt;br /&gt;
Go to File -&amp;gt; New -&amp;gt; C Project &amp;lt;br&amp;gt;&lt;br /&gt;
- Name: test &amp;lt;br&amp;gt;&lt;br /&gt;
- Location: Select where the code is &amp;lt;br&amp;gt;&lt;br /&gt;
- Project type -&amp;gt; Makefile project -&amp;gt; Empty Project -&amp;gt; Cross ARM GCC &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Next, Next &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Toolchain: &amp;lt;br&amp;gt;&lt;br /&gt;
- Name: GNU Tools for ARM Embedded Processors (arm-none-eabi-gcc) &amp;lt;br&amp;gt;&lt;br /&gt;
- Path: /opt/compilerSTM32 (if installed as in previous section, if not check where did you do it!!) &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
- Finish &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
If everything ok, you are able to compile with the hammer.&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt; Set OpenOCD &amp;lt;/h2&amp;gt;&lt;br /&gt;
(More info at: https://balau82.wordpress.com/2014/02/23/stm32-p152-development-with-eclipse-on-linux/)&lt;br /&gt;
&lt;br /&gt;
- Run -&amp;gt; External tools -&amp;gt; External Tools Configurations &amp;lt;br&amp;gt;&lt;br /&gt;
- Program -&amp;gt; New &amp;lt;br&amp;gt;&lt;br /&gt;
- Location: /opt/openocd/bin/openocd (if installed as in previous section, if not check where did you do it!!) &amp;lt;br&amp;gt;&lt;br /&gt;
- Working Directory: A Dir where there is the openocd.cfg (typically where our porject is) &amp;lt;br&amp;gt;&lt;br /&gt;
- Arguments: -f openocd.cfg -c &amp;quot;init&amp;quot; -c &amp;quot;halt&amp;quot; -c &amp;quot;reset halt&amp;quot;&lt;br /&gt;
- Apply&lt;br /&gt;
&lt;br /&gt;
&amp;lt;h2&amp;gt; Set GDB &amp;lt;/h2&amp;gt;&lt;br /&gt;
(More info at: https://pixhawk.org/dev/jtag/gdb_eclipse)&lt;br /&gt;
&lt;br /&gt;
Go to Run -&amp;gt; Debug Configurations &amp;lt;br&amp;gt;&lt;br /&gt;
Create a GDB Hardware Debugging &amp;lt;br&amp;gt;&lt;br /&gt;
In Main: &amp;lt;br&amp;gt;&lt;br /&gt;
- Application: The .elf file that will be generated by the project (e.g. sensedin.elf) &amp;lt;br&amp;gt;&lt;br /&gt;
- Project: The project location &amp;lt;br&amp;gt;&lt;br /&gt;
- Use workspace settings &amp;lt;br&amp;gt;&lt;br /&gt;
- Select legacy GDB Hardware Debugging Launcher by clinking Select other &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In Debugger: &amp;lt;br&amp;gt;&lt;br /&gt;
- GDB Command: /opt/compilerSTM32/bin/arm-none-eabi-gdb &amp;lt;br&amp;gt;&lt;br /&gt;
- Standard(Linux) &amp;lt;br&amp;gt;&lt;br /&gt;
- Version: mi &amp;lt;br&amp;gt;&lt;br /&gt;
- Use remote target &amp;lt;br&amp;gt;&lt;br /&gt;
- JTag: TCP/IP &amp;lt;br&amp;gt;&lt;br /&gt;
- IP: localhost &amp;lt;br&amp;gt;&lt;br /&gt;
- Port: 3333 &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
In Startup: &amp;lt;br&amp;gt;&lt;br /&gt;
- Un-click Reset and Delay &amp;lt;br&amp;gt;&lt;br /&gt;
- Un-click Halt &amp;lt;br&amp;gt;&lt;br /&gt;
- In command box type:  &amp;lt;br&amp;gt;&lt;br /&gt;
- monitor reset halt &amp;lt;br&amp;gt;&lt;br /&gt;
- Click Load Image &amp;lt;br&amp;gt;&lt;br /&gt;
- Click Load symbols &amp;lt;br&amp;gt;&lt;br /&gt;
- In Run Commands write: &amp;lt;br&amp;gt;&lt;br /&gt;
- set $pc = Reset_Handler &amp;lt;br&amp;gt;&lt;br /&gt;
- stepi &amp;lt;br&amp;gt;&lt;br /&gt;
&lt;br /&gt;
Finally click Apply&lt;/div&gt;</summary>
		<author><name>Juanh</name></author>	</entry>

	</feed>