Internet of Things Predictions for 2017

Hyperspace

When it comes to IoT predictions, 2017 will see solutions solving business pain points jump to hyperspace as VC funding dries up for many platform plays.

As we move into 2017, the marketplace will start to separate the “build it and they will come” crowd from IoT solutions that add compelling business value. When it comes to value creation, I anticipate we’ll finally see technologies that abstract machine learning algorithms plus data prep and cleansing to solve business problems for specific equipment. Think of this as an advanced analytics extension to existing digital twins. Vendors that seize upon this technology will see success in the $900M Industrial IoT market. On the other hand, the vendors promoting generic, often cloud-only platforms that try to be all things to all people will face a tough road ahead.

The IoT platforms set to take off are the ones tailored to specific industries and flexible enough to run on-premises, in hybrid mode and in the cloud as needed by customers. I’m not just talking about cloud offerings that work with edge gateways in the fog. I’m talking about solutions that are truly portable. On the security front, industrial customers will struggle to safely IoT-enable machines that aren’t securable and were never intended to be on the Internet. This will continue to be a problem until next generation versions of industrial equipment rolls off the assembly line with built-in compute, storage, IP networking and security. Expect lots of the industrial world to remain air-gapped and firmly in its M2M comfort zone.

Lastly, enterprises that can merge domain expertise, data science and machine learning will realize cost savings by stretching equipment maintenance cycles and avoiding downtime by predicting asset health. This represents the true value of IoT in business.

The Industrial Internet of Things is Like Football

Russell Wilson

The Industrial Internet of Things is a lot like football. Sensors relay data to devices like a center hikes the ball to a quarterback.

Devices send telemetry to IIoT platforms like a quarterback passes the ball to a receiver. IIoT platforms ingest data like a receiver catches a pass. I think you get the idea.

Is your company enjoying positive outcomes through the use of an Industrial Internet of Things platform?

Connect > Collect > Analyze > Act

12 Steps to Stop the Next IoT Attack in its Tracks

IoT Attack

The recent distributed denial-of-service (DDoS) IoT attack against DNS is a wake up call to how fragile the Internet can be.

The IoT attack against Domain Name Servers from a botnet of thousands of devices means it’s way past time to take IoT security seriously. The bad actors around the world who previously used PCs, servers and smartphones to carry out attacks have now set their sights on the growing tidal wave of IoT devices. It’s time for consumers and enterprises to protect themselves and others by locking down their devices, gateways and platforms. While staying secure is a never-ending journey, here’s a list of twelve actions you can take to get started:

  1. Change the default usernames and passwords on your IoT devices and edge gateways to something strong.
  2. Device telemetry connections must be outbound-only. Never listen for incoming commands or you’ll get hacked.
  3. Devices should support secure boot with cryptographically signed code by the manufacturer to ensure firmware is unaltered.
  4. Devices must have enough compute power and RAM to create a transport layer security (TLS) tunnel to secure data in transit.
  5. Use devices and edge gateways that include a Trusted Platform Module (TPM) chip to securely store keys, connection strings and passwords in hardware.
  6. IoT platforms must maintain a list of authorized devices, edge gateways, associated keys and expiration dates/times to authenticate each device.
  7. The telemetry ingestion component of IoT platforms must limit IP address ranges to just those used by managed devices and edge gateways.
  8. Since embedded IoT devices and edge gateways are only secure at a single point in time, IoT platforms must be able to remotely update their firmware to keep them secure.
  9. When telemetry arrives in an IoT platform, the queue, bus or storage where data comes to rest must be encrypted.
  10. Devices and edge gateways managed by an IoT platform must update/rotate their security access tokens prior to expiration.
  11. Field gateways in the fog layer must authenticate connected IoT devices, encrypt their data at rest and then authenticate with upstream IoT platforms.
  12. IoT platforms must authenticate each device sending telemetry and blacklist compromised devices to prevent attacks.

Keeping the various components that make up the IoT value chain secure requires constant vigilance. In addition to doing your part, it’s important to hold the vendors of the IoT devices, gateways and platforms accountable for delivering technology that’s secure today and in the future.

Rob Tiffany Named a Top 100 M2M Influencer

M2M Influencer

In Onalytica’s 2016 analysis and ranking of individuals and brands in the Machine to Machine space, Rob was ranked a top 100 M2M influencer.

For those of you who are unfamiliar with the term, Machine to Machine (M2M) refers to the direct communication between devices using a variety of communications channels, including wired and wireless. Many of you will think this is the same or similar to the Internet of Things and you wouldn’t necessarily be wrong. I started my career in the M2M space connecting unintelligent vending machines to primitive wireless networks to derive value from remotely monitoring them. Needless to say, a lot has changed since then.

Analytic M2M

 

 

 

 

 

 

 

In modern terms, traditional M2M is often expressed as the Industrial Internet of Things (IIoT) or Industrie 4.0. Imagine the value to be derived from connecting, analyzing and acting on data from industries such as healthcare, automotive, oil and gas, agriculture, government, smart cities, manufacturing, and public utilities. It’s an exciting space to be in and it’s rapidly transforming our world.

Check it out at http://www.onalytica.com/blog/posts/M2M-2016-Top-100-Influencers-Brands/

Sharing my knowledge and helping others never stops, so connect with me on my blog at http://robtiffany.com , follow me on Twitter at https://twitter.com/RobTiffany and on LinkedIn at https://www.linkedin.com/in/robtiffany

Rob Tiffany Named Among Top 30 Technology Influencers in Major Report

Industry Analysts

I’m thrilled to be included in this group of technology influencers and luminaries like Werner Vogels, Steve Wozniak and Mark Russinovich.

To become one of those technology influencers, it’s taken a lot of years of hands-on experience building mobile, cloud and Internet of Things solutions combined with writing books, speaking at conferences around the world, blogging, tweeting and mentoring.

Top Technology Influencers

Check it out at: https://apollotarget.com/the-top-15-industry-analysts-usa/

Sharing my knowledge and helping others never stops, so connect with me on my blog at http://robtiffany.com , follow me on Twitter at https://twitter.com/RobTiffany and on LinkedIn at https://www.linkedin.com/in/robtiffany

Digital Transformation Expert Interview

RobKevinDigital

Kevin Benedict from Cognizant’s Center for the Future of Work interviews Rob Tiffany on where Digital Transformation is taking the business world.

Kevin drills into the current unrealized upside with digital transformation efforts and Rob takes a deep dive on Machine Learning, the Cloud, Agile development, Mobile and the Internet of Things.

Learn more from Kevin at The Center for the Future of Work 

Sharing my knowledge and helping others never stops, so connect with me on my blog at http://robtiffany.com , follow me on Twitter at https://twitter.com/RobTiffany and on LinkedIn at https://www.linkedin.com/in/robtiffany

Internet of Things Thought Leaders to Watch In the Next 4 Years

IoT Thought Leaders

I’m thrilled and humbled to be named one of the world’s 29 top Internet of Things thought leaders.

This distinguished list compiled by DADO Labs includes the following IoT luminaries:

Check it out at: http://dadolabs.com/iot_thought_leaders/

Sharing my knowledge and helping others never stops, so connect with me on my blog at http://robtiffany.com , follow me on Twitter at https://twitter.com/RobTiffany and on LinkedIn at https://www.linkedin.com/in/robtiffany

Get the DragonBoard Running Windows 10 IoT Core

Dragon Board 410c

The DragonBoard 410c from Qualcomm is available and now it’s time to get it up and running with Windows 10 IoT Core and Universal Windows Platform apps.

The DragonBoard is based on the 64-bit, quad-core Snapdragon 410 processor running at 1.2 GHz with 1 GB of RAM and 8 GB of of internal storage. You get 1 micro USB and 2 USB 2.0 ports along with full sized HDMI and a micro SD card slot. Onboard connectivity and location support are provided by Wi-Fi 802.11 b/g/n, Bluetooth 4.1, and GPS. The Adreno 306 GPU with support for OpenGL ES 3.0 and DirectX will accelerate the graphics of your Universal Windows Platform apps. A 40-pin, low speed and 60-pin, high speed expansion connector will power your projects.

Let’s put together a quick shopping list:

  • DragonBoard 410c from Arrow Electronics $75.00
  • 12 Volt 2 Amp power supply with a cylindrical female output (1.75 x 4.75) from Arrow Electronics $12.67
  • USB to Micro USB cable from Amazon $4.79
  • HDMI cable from Amazon $6.49
  • USB keyboard and mouse from Amazon $14.99
  • HDMI capable monitor
  • Windows 10 PC
  • Visual Studio 2015 Update 1

DragonBoard

Once the items in your shopping list have arrived, head over to the Qualcomm Developer Network Tools and Resources page for the DragonBoard and download either the x86 or x64 Update Tool for Windows 10 IoT Core. Extract the zip file and double click DragonBoardUpdateTool_X64.msi to launch the installation wizard. Navigate through the wizard to install the Qualcomm device driver.

Qualcomm Driver

Next up, navigate your browser to the Windows IoT Downloads and Tools page and click the DragonBoard button to download the ISO file:

Download

Once the ISO file has downloaded, turn it into a virtual CD-ROM (remember those?) drive by double-clicking it. A file called Windows_10_IoT_Core_QCDB410C.msi will appear. Double-click the file to launch the installation wizard shown below:

DragonBoard Setup Wizard

When the wizard has finished, an image file called flash.ffu will be placed in the C:\Program Files (x86)\Microsoft IoT\FFU\QCDB410C\ directory.

Now it’s time to connect your Windows 10 PC to the DragonBoard to upload the Windows IoT Core image. The cool thing is you won’t have to boot off an SD card like you’re accustomed to with Arduino or the Raspberry Pi. I need you to flip the DragonBoard over and switch the the USB BOOT switch to ON while leaving the other three switches OFF. Use a paper clip to flip the switch as shown below:

DragonBoard USB Boot

Connect the big end of your USB cable to your Windows 10 PC and the micro end to the DragonBoard and connect the power supply to bring it to life. Launch the DragonBoard Update Tool from the shortcut on your desktop:

DragonBoard Shortcut

When the Update Tool launches, verify the Connection Status light is green. Click the Browse button and navigate to the flash.ffu file as shown below:

DragonBoard Update Tool

Click the Program button to upload the image to the board. This will overwrite the pre-installed Android image. If you get an error, just retry the process. Give the programming a minute or two and wait for a Programming successful dialog to pop up to let you know you’re finished.

DragonBoardUpdate Tool Progress

With the board programming complete, disconnect the power supply and use your paper clip to switch USB BOOT back to the OFF position.

Now it’s time for the moment of truth. Connect the HDMI cable from the DragonBoard to your monitor and then connect the USB keyboard and mouse and plug in the power supply to boot Windows IoT Core. I booted mine on my TV. It starts with a SnapDragon boot just to remind you what you’re probably running in your smartphone.

SnapDragon Boot

Next up, you get a generic picture of a single board computer.

Board Picture Boot

Last but not least, you boot into a default Universal Windows Platform (UWP) app just like the Raspberry Pi. If you find yourself having trouble getting Windows 10 IoT Core to boot, try re-seating all your connections on your board and flip the USB BOOT setting back and forth from ON to OFF. Worst case scenario, use the Update Tool again to re-flash your board.

Default App

The default app should display information about your board, the operating system, connected devices and network status. Since the DragonBoard has onboard Wi-Fi, use your mouse to click the Device Settings icon on the top-right part of the screen next to the Power icon. Select Network & Wi-Fi and then select the appropriate SSID displayed from your Wi-Fi access point.  Click the Connect button and type in your network security key and click Next.

Wi-Fi

The last step in the process is to ensure you can connect to the DragonBoard from your Windows 10 PC. From the Start menu, navigate to All apps | Microsoft IoT and launch the Windows IoT Core Watcher. It will scan the network and list any boards running Windows IoT Core as shown below:

Windows IoT Core Watcher

Right-click on your listed device and select Web Browser Here from the context menu to connect to your DragonBoard from your browser. You will be prompted for device credentials so enter Administrator for the username and p@ssw0rd for the password.  You’ll be presented with the Windows Device Portal as shown below:

Windows Device Portal

From here, you’ll be able to remotely monitor, configure and deploy software to your DragonBoard. I highly recommend you start out by changing the Administrator password. You also have the option to remotely connect via SSH and PowerShell.

You are now up and running with Windows 10 IoT Core on the Qualcomm DragonBoard and ready to build and deploy Universal Windows Platform apps so go ahead and launch Visual Studio 2015 Update 1. Once your IDE has loaded, click  File | New | Project | Blank App (Universal Windows). Once your app project has loaded, you’ll have to make some adjustments to Visual Studio in order to deploy and debug against your DragonBoard. You’ll need to select ARM to support the Qualcomm CPU and Remote Machine to debug over Wi-Fi as shown below:

Remote Machine

The first time you switch to Remote Machine, a Remote Connections dialog will popup. Using the information from the Windows IoT Core Watcher app, type in the IP address of the DragonBoard in the Address text box and click the Select button as shown below:

Remote Connections

To perform a quick smoke test, I want you to remotely run a sample app to verify everything is working properly. Open MainPage.xaml in the IDE, click the combo box at the top and select 10″ IoT Device (1024 x 768) 100% scale. Throw a TextBlock control in the center and type Hello DragonBoard as shown below:

Visual Studio

Run this simple app against your remote machine. This first time out, Visual Studio must deploy appropriate .NET assemblies to the DragonBoard. If you experience a deployment failure, it may be because your DragonBoard has been running for a while and the remote debugger has shut down. If this is the case, restart the DragonBoard and try again. A successful smoke test will look something like this:

Hello DragonBoard

Congratulations on getting Windows IoT Core to run on the Qualcomm DragonBoard and deploying a Universal Windows Platform app! With its fast graphics and CPU performance coupled with onboard wireless networking, I think you’ll find the DragonBoard to be a great IoT device to work with the Azure IoT Suite.

Sharing my knowledge and helping others never stops, so connect with me on my blog at http://robtiffany.com , follow me on Twitter at https://twitter.com/RobTiffany and on LinkedIn at https://www.linkedin.com/in/robtiffany

Get Connected to Windows 10 IoT Core on Your Raspberry Pi 2

USB Ports

Connect to Windows 10 IoT Core on Your Raspberry Pi 2 with Secure Shell, the Web and Visual Studio.

In my last article, I showed you how to get Windows 10 IoT Core installed on your Raspberry Pi 2. In order to remotely configure, monitor and push Universal Windows Platform apps to your Pi, your Windows 10 PC must be able to connect. A critical element in making all this work is to ensure your PC is on the same network and subnet as the Raspberry Pi 2. Lets get to work.

A quick glance at your Raspberry Pi’s home screen will show you its name and IP address.

Windows Home

From the command prompt of your Windows 10 PC, run ipconfig to verify that it is on the same network and subnet. Sending a ping to your Raspberry Pi to ensure you can reach it is a good idea as well. If your connectivity is good, then it’s time to remotely connect via Secure Shell (SSH) so you can run commands on your Raspberry Pi.

In order to connect with Secure Shell, you’ll need need a remote shell client for Windows. PuTTY is a commonly used, open source terminal emulator that can be downloaded here. Once it’s downloaded, launch the app, type in the IP address of your Raspberry Pi, select the SSH radio button and click the Open button.

PuTTy

The first time you connect, you may experience a slight delay and a Security Alert dialog below might popup. Just click the Yes button to proceed.

Security Alert

Once you connect, type the default value of Administrator at the login as: screen and hit enter. Next, type the default password of p@ssw0rd and hit enter.

SSH Login

Welcome back to DOS! No Edlin jokes…

SSH

Let’s try a few commands. If you don’t like the default device name of minwinpc, you can change it by typing setcomputername <new name>. I changed mine to houseofpi in honor of the Houston restaurant where Rod Canion and the other founders of Compaq hatched their plan for a new computer company on a paper placemat. Type hostname to make sure you got it right.

One thing I absolutely want you to change is the Administrator password since your new IoT device is currently in a vulnerable state.  Type net user Administrator <new password>to make this happen. Please take IoT security seriously so you don’t contribute to creating the largest attack surface in the history of computing. A good list of Windows 10 IoT Core command line utilities can be found here.

Now lets move on to see how you can connect to your Raspberry Pi via the web.

Looking back to the installation of Windows 10 IoT Core for Raspberry Pi 2 from the previous article, it installed an app called Windows IoT Core Watcher which can be found from the Windows Start menu at All apps | Microsoft IoT. When you launch this app, it should display your Raspberry Pi in a list as shown below:

Windows IoT Core Watcher

Right-click on your device and select Web Browser Here from the context menu. Since you just changed your password, the browser will prompt you for it before displaying the page. As you can see below, the Home page just shows you some minimal information about your Raspberry Pi.

WebHome

The App page shows you a dropdown list of installed apps that you can run, uninstall or set as the default app at the top. Remember, only one app can run in the foreground at a time on Windows IoT Core. The Install app section is interesting in that it lets you remotely install your app (.appx), associated certificate (.cer) and any other dependencies your app may have.

AppX

The Process page works similarly to the Task Manager on your PC and displays a list of running processes along with associated CPU and memory usage. Clicking the X next to any of the processes will kill it.

Processes

Also like the Task Manager on your PC, the Performance page displays real-time CPU and file I/O utilization and memory usage.

Performance

There are a lot of other pages to explore that deliver helpful information and diagnostics to help you be successful with Windows 10 IoT Core on the Raspberry Pi 2. Definitely check them out.

As you might imagine, the whole point of having Windows 10 IoT Core is to run apps. This is where Visual Studio 2015 and the Universal Windows Platform comes in.

RTM versions of Visual Studio 2015 Community, Professional or Enterprise are required to get started. Make sure Universal Windows App Development Tools -> Tools and Windows SDK are installed during the setup procedure. After installation, download the Windows IoT Core Project Templates from the Visual Studio Gallery to make your File | New Project experience more productive. Last but not least, make sure developer mode is enabled by following these instructions.

If the Raspberry Pi devices you’re targeting are deployed with a connected monitor that a person can interact with, create a Windows Universal Blank App project in Visual Studio to deliver a user interface. On the other hand, if you’re targeting headless Raspberry Pi devices, create a Windows IoT Core Background Application in Visual Studio.

Once your headless or GUI IoT app project is loaded, you’ll have to make some adjustments to Visual Studio in order to deploy and debug against your Raspberry Pi. You’ll need to select ARM to support the Broadcom CPU and Remote Machine to debug over Ethernet.

ARM x86 Remote

It’s possible that a Remote Connections dialog will popup when you select Remote Machine for the first time. If Visual Studio cannot find your Raspberry Pi automatically, type in its IP address in the Address text box. Select none instead of Windows for Authentication Mode and click the Select button.

Remote Connections

Next, I want you to go to the Solution Explorer and double-click on the Properties icon of your IoT project. Click Debug on the left side of the screen and ensure that Target device is set to Remote Machine and the IP address of your Raspberry Pi is displayed in the Remote machine text box. Click the Find button to verify that Visual Studio can connect. If your Pi cannot be found, it’s possible that Visual Studio’s remote debugger on the Pi has shut down after a long time of inactivity. Try restarting your Raspberry Pi and give it another shot.

Debug

If all goes well, the Remote Connections dialog should popup and the name of your Pi should be displayed beneath the Auto Detected section. Click the Select button.

Remote Connections Success

After the dialog closes, make sure that the Use authentication check box is unchecked and then click the Save icon. At this point, you should be able to hit F5 and remotely debug against your Raspberry Pi.

As you can see, there’s no shortage of ways to connect, configure, control and debug against your Raspberry Pi running Windows 10 IoT Core. Now start building those IoT apps using the development tools and programming languages you’re comfortable with.

Sharing my knowledge and helping others never stops, so connect with me on my blog at http://robtiffany.com , follow me on Twitter at https://twitter.com/RobTiffany and on LinkedIn at https://www.linkedin.com/in/robtiffany