<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:content="http://purl.org/rss/1.0/modules/content/">
  <channel>
    <title>Guides &amp; Tutorials on Inferno Embedded</title>
    <link>https://infernoembedded.com/pages/</link>
    <description>Recent content in Guides &amp; Tutorials on Inferno Embedded</description>
    <generator>Hugo</generator>
    <language>en</language>
    <lastBuildDate>Thu, 06 Oct 2016 00:41:49 +0000</lastBuildDate>
    <atom:link href="https://infernoembedded.com/pages/index.xml" rel="self" type="application/rss+xml" />
    <item>
      <title>Intro to IoT using ESP8266, MQTT &amp; NodeRed</title>
      <link>https://infernoembedded.com/pages/intro-iot-using-esp8266-mqtt-nodered/</link>
      <pubDate>Wed, 28 Sep 2016 04:49:21 +0000</pubDate>
      <guid>https://infernoembedded.com/pages/intro-iot-using-esp8266-mqtt-nodered/</guid>
      <description>&lt;h1 id=&#34;prerequisites&#34;&gt;Prerequisites&lt;/h1&gt;
&lt;p&gt;Note: Known-good versions of the prequisites are available is the git repository for this workshop.&lt;/p&gt;
&lt;h2 id=&#34;all&#34;&gt;All&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;p&gt;Download the Paho MQTT client from &lt;a href=&#34;http://www.eclipse.org/paho/clients/tool/&#34;&gt;http://www.eclipse.org/paho/clients/tool/&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Download or clone a copy of the workshop repository to your home directory, from &lt;a href=&#34;https://github.com/InfernoEmbedded/esp-workshop&#34;&gt;https://github.com/InfernoEmbedded/esp-workshop&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;If you have a firewall enabled, allow traffic on port 1883 (MQTT)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Install NodeJS 4 (not 3 or 5), saved in esp-workshop/windows_x64 - &lt;a href=&#34;https://nodejs.org/en/download/package-manager/&#34;&gt;https://nodejs.org/en/download/package-manager/&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Install NodeRed from &lt;a href=&#34;http://nodered.org/docs/getting-started/installation.html&#34;&gt;http://nodered.org/docs/getting-started/installation.html&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Flash the board with NodeMCU firmware (only required is your board does not already have the NodeMCU firmware installed)&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Download and extract the latest ESP8266 NONOS SDK from &lt;a href=&#34;https://espressif.com/en/support/download/sdks-demos&#34;&gt;https://espressif.com/en/support/download/sdks-demos&lt;/a&gt;&lt;/p&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;p&gt;Build the firmware using the Cloud build service &lt;a href=&#34;https://nodemcu-build.com&#34;&gt;https://nodemcu-build.com&lt;/a&gt;, Include:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;ADC&lt;/li&gt;
&lt;li&gt;bit&lt;/li&gt;
&lt;li&gt;DHT&lt;/li&gt;
&lt;li&gt;enduser_setup&lt;/li&gt;
&lt;li&gt;file&lt;/li&gt;
&lt;li&gt;GPIO&lt;/li&gt;
&lt;li&gt;HTTP&lt;/li&gt;
&lt;li&gt;MQTT&lt;/li&gt;
&lt;li&gt;net&lt;/li&gt;
&lt;li&gt;node&lt;/li&gt;
&lt;li&gt;1Wire&lt;/li&gt;
&lt;li&gt;PWM&lt;/li&gt;
&lt;li&gt;timer&lt;/li&gt;
&lt;li&gt;UART&lt;/li&gt;
&lt;li&gt;WiFi&lt;/li&gt;
&lt;li&gt;Flash the firmware, this example uses the firmware included in the repository, but you may want your own (see above) instead: esptool.py &amp;ndash;port /dev/ttyUSB0 write_flash -fm dio -fs 32m 0x00000 ~/esp-workshop/nodemcu-master-15-modules-2016-07-22-03-05-09-float.bin 0x7c000 ~/esp-workshop/sdk/ESP8266_NONOS_SDK/bin/esp_init_data_default.bin&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
    <item>
      <title>Installing Eclipse</title>
      <link>https://infernoembedded.com/pages/installing-eclipse/</link>
      <pubDate>Thu, 26 Dec 2013 03:28:34 +0000</pubDate>
      <guid>https://infernoembedded.com/pages/installing-eclipse/</guid>
      <description>&lt;h2 id=&#34;eclipse-install&#34;&gt;Eclipse Install&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Download and extract the latest version of Eclipse Classic for your platform from &lt;a href=&#34;http://www.eclipse.org/downloads/&#34;&gt;http://www.eclipse.org&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;Install a recent AVR Toolchain. Windows &amp;amp; OSX users should use &lt;a href=&#34;https://infernoembedded.com/projects/avr-tools&#34;&gt;Inferno Embedded AVR Tools&lt;/a&gt;, as should Linux users if their distro does not include GCC-4.8.&lt;/li&gt;
&lt;li&gt;Install &lt;a href=&#34;http://www.stack.nl/~dimitri/doxygen/download.html#latestsrc&#34;&gt;Doxygen&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;running-eclipse-for-the-first-time&#34;&gt;Running Eclipse for the first time&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Download and extract workspace.7z from the bottom of this page. This will give you an Eclipse workspace that is preconfigured with extensive syntax highlighting.&lt;/li&gt;
&lt;li&gt;Launch Eclipse, and select your new workspace&lt;/li&gt;
&lt;li&gt;Extract the eclipse-updatesites.7z archive from the bottom of this page&lt;/li&gt;
&lt;li&gt;We will now be installing the following Eclipse plugins:
&lt;ul&gt;
&lt;li&gt;AnyEdit Tools - cleans up whitespace on save&lt;/li&gt;
&lt;li&gt;Eclox - provides Doxygen parsing&lt;/li&gt;
&lt;li&gt;MultiClipboard - provides support for multiple clipboard&lt;/li&gt;
&lt;li&gt;EGit - manage Git repositories within Eclipse&lt;/li&gt;
&lt;/ul&gt;
&lt;/li&gt;
&lt;li&gt;Click on &amp;ldquo;Help&amp;rdquo;, &amp;ldquo;Install New Software&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Click on &amp;ldquo;Available Software Sites&amp;rdquo;, &amp;ldquo;Import&amp;rdquo;, then select the eclipse-updatesites.xml you extracted earlier&lt;/li&gt;
&lt;li&gt;Exit and restart Eclipse&lt;/li&gt;
&lt;li&gt;Click on &amp;ldquo;Help&amp;rdquo;, &amp;ldquo;Install New Software&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Select the &amp;ldquo;Anyedit&amp;rdquo; update site, &amp;ldquo;Eclipse-3.5-3.7 Plugins&amp;rdquo;, and install &amp;ldquo;AnyEditTools&amp;rdquo;. Restart when prompted&lt;/li&gt;
&lt;li&gt;Click on &amp;ldquo;Help&amp;rdquo;, &amp;ldquo;Install New Software&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Select the &amp;ldquo;AVR Eclipse&amp;rdquo; update site, then &amp;ldquo;AVR Eclipse Plugin&amp;rdquo;. Restart when prompted&lt;/li&gt;
&lt;li&gt;Click on &amp;ldquo;Window&amp;rdquo;, &amp;ldquo;Preferences&amp;rdquo;, &amp;ldquo;AVR&amp;rsquo;, &amp;ldquo;Paths&amp;rdquo; and configure your AVR toolchain. If you are using Inferno Embedded AVR Tools, you should set up the following custom paths (examples are for a 64 bit Windows install):&lt;/li&gt;
&lt;li&gt;Click on &amp;ldquo;Help&amp;rdquo;, &amp;ldquo;Install New Software&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Select the &amp;ldquo;Eclox&amp;rdquo; update site, then Eclox&amp;rdquo;. Restart when prompted&lt;/li&gt;
&lt;li&gt;Click on &amp;ldquo;Help&amp;rdquo;, &amp;ldquo;Install New Software&amp;rdquo;&lt;/li&gt;
&lt;li&gt;Select the &amp;ldquo;Multi Clipboard&amp;rdquo; update site, then Multi Clipboard. Restart when prompted&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;importing-flame&#34;&gt;Importing Flame&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;In Eclipse, select File, Import, Git, Projects from Git, Clone URI, then enter as the uri: &lt;a href=&#34;https://github.com/InfernoEmbedded/flame.git&#34;&gt;https://github.com/InfernoEmbedded/flame.git&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;Select &amp;ldquo;master&amp;rdquo; as the repository to clone&lt;/li&gt;
&lt;li&gt;Eclipse will spend a while cloning the repository andindexing all the code, then you are ready to compile&lt;/li&gt;
&lt;li&gt;Select all the projects in Project Explorer (or just the projects you care about), right click and select &amp;ldquo;Build Configurations&amp;rdquo;, &amp;ldquo;Set Active&amp;rdquo;, &amp;ldquo;ATmega328P_20MHz&amp;rdquo; (for the MHVBoard), or whatever is suitable for your target platform&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;building-flame&#34;&gt;Building Flame&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Right click on &amp;ldquo;flame&amp;rdquo; in &amp;ldquo;Project Explorer&amp;rdquo;, then select &amp;ldquo;Build Configurations&amp;rdquo;, &amp;ldquo;Set Active&amp;rdquo;, and choose the build configuration you need. &lt;a href=&#34;http://www.makehackvoid.com/group-projects/mhvboard-arduino-clone&#34;&gt;MHVBoard&lt;/a&gt; R2/R7 users should choose ATmega328p-20MHz&lt;/li&gt;
&lt;li&gt;Right click on &amp;ldquo;mhvlib&amp;rdquo; and select &amp;ldquo;Build Project&amp;rdquo;&lt;/li&gt;
&lt;li&gt;The same procedure can be used to build any of the tutorial projects&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;uploading-to-the-microcontroller&#34;&gt;Uploading to the Microcontroller&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Build your project (see above)&lt;/li&gt;
&lt;li&gt;Right click on the project in &amp;ldquo;Project Explorer&amp;rdquo;, select &amp;ldquo;Properties&amp;rdquo;, &amp;ldquo;AVR&amp;rdquo;, &amp;ldquo;AVRDude&amp;rdquo; and select a programmer configuration from the Programmer tab (not the configuration selection on top, which allows you to have multiple configs, we use this to support different microcontrollers)&lt;/li&gt;
&lt;li&gt;You can create a new programmer configuration by selecting &amp;ldquo;New&amp;rdquo;, and filling out the details from the table below. The supplied workspace already has a few common programmers setups added&lt;/li&gt;
&lt;li&gt;If you are using an MHVBoard (or other bootloader that needs an explicit reset), reset your device&lt;/li&gt;
&lt;li&gt;Right click on the project in &amp;ldquo;Project Explorer&amp;rdquo;, select &amp;ldquo;AVR&amp;rdquo;, &amp;ldquo;Upload Project to Target Device&amp;rdquo;&lt;/li&gt;
&lt;/ul&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;Name&lt;/th&gt;
					&lt;th&gt;Programmer&lt;/th&gt;
					&lt;th&gt;Speed&lt;/th&gt;
					&lt;th&gt;Port&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;MHVBoard R2/R7&lt;/td&gt;
					&lt;td&gt;usbasp&lt;/td&gt;
					&lt;td&gt;blank&lt;/td&gt;
					&lt;td&gt;blank&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Optiboot, Arduino Mini w/ ATmega328&lt;/td&gt;
					&lt;td&gt;stk500&lt;/td&gt;
					&lt;td&gt;115,200&lt;/td&gt;
					&lt;td&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Arduino Uno, Arduino Ethernet&lt;/td&gt;
					&lt;td&gt;Arduino&lt;/td&gt;
					&lt;td&gt;115,200&lt;/td&gt;
					&lt;td&gt;&lt;code&gt;&amp;lt;your serial port&amp;gt;&lt;/code&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Arduino Duemilanove w/ ATmega328, Arduino Nano w/ ATmega328, Arduino Mega, Arduino Fio, Lilypad Arduino w/ ATmega328, Arduino Pro/Pro Mini w/ ATmega328&lt;/td&gt;
					&lt;td&gt;Arduino&lt;/td&gt;
					&lt;td&gt;57,600&lt;/td&gt;
					&lt;td&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Arduino Duemilanove w/ ATmega168, Diecimila, Arduino Nano w/ ATmega168, Arduino Mini w/ ATmega168, Arduino BT, Lilypad Arduino w/ ATmega168, Arduino Pro/Pro Mini w/ ATmega168, Arduino NG&lt;/td&gt;
					&lt;td&gt;Arduino&lt;/td&gt;
					&lt;td&gt;19,200&lt;/td&gt;
					&lt;td&gt;&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Arduino Mega 2560/ Mega ADK&lt;/td&gt;
					&lt;td&gt;stk500v2&lt;/td&gt;
					&lt;td&gt;115,200&lt;/td&gt;
					&lt;td&gt;&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;h2 id=&#34;updating-flame&#34;&gt;Updating Flame&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;To fetch the latest version of Flame from the git repository, issue a &amp;ldquo;git pull&amp;rdquo; in the flame directory&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;useful-information&#34;&gt;Useful Information&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;Keyboard shortcuts can be configured in Windows, Preferences, General, Keys&lt;/li&gt;
&lt;li&gt;Syntax highlighting can be configured in Windows, Preferences, C/C++, Editor, Syntax Coloring&lt;/li&gt;
&lt;/ul&gt;
&lt;h3 id=&#34;downloads&#34;&gt;Downloads&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a href=&#34;https://infernoembedded.com/files/project/workspace.7z&#34;&gt;workspace.7z&lt;/a&gt; (667.8 KB)&lt;/li&gt;
&lt;li&gt;&lt;a href=&#34;https://infernoembedded.com/files/project/eclipse-updatesites.7z&#34;&gt;eclipse-updatesites.7z&lt;/a&gt; (0.5 KB)&lt;/li&gt;
&lt;/ul&gt;</description>
    </item>
  </channel>
</rss>
