SigFox – a Wide-area Network for connecting your Internet-of-Things Devices

November 16, 2015

One of the greatest hindrances to a successful Internet-of-Things device is the amount of energy consumed and level of bandwidth required for a wireless solution. However, these challenges have been overcome and now your M2M and IoT-enabled devices with low-bandwidth requirements can take advantage of SigFox.

SigFox is a new wireless connectivity platform being deployed across many countries, whose aim is to provide low-power, wide-area network infrastructure across large areas, for connecting Internet-of-Things and Machine-to-Machine telemetry applications that have limited bandwidth needs.

By providing radio communications with embedded devices across a wide area, and without the relatively high cost of cellular telephone networks, SigFox aims to make it fairly easy to integrate their platform with your other software applications.

The SigFox network is highly scalable and built for a huge number of devices, offering a global wide-area cellular connectivity solution from customer’s devices right through to their software applications – with very strong energy efficiency. It has been estimated that over the next decade, 14% of the booming IoT market will be made up of connected objects using low-power, wide-area networks such as SigFox or LoRa.

The fundamentals of SigFox are this – separate antennas are deployed on towers across a wide geographic area, in a similar manner to a cellular network – and this new network receives and transmits data from IoT devices in the field, such as water meters or parking sensors.

Ultra-narrowband wireless technology allows very low transmission power levels to be used while still maintaining a robust radio link to the rest of the network. This means devices can run efficiently for a long time in power-constrained installations, for example in remote field devices which can’t easily have their batteries replaced.

SigFox networks are usually built with cells 30-50km apart in rural areas, however in urban areas where there is more potential for radio interference, as well as more obstructions – the distance between cells may be reduced to 10km or less. Between outdoor nodes with line-of-sight the range between connected nodes could be much larger, with line-of-sight link distances of potentially up to 1000 kilometres.

This long-range, wide-area coverage means that enormous areas, even whole countries, can practically be covered with a limited number of SigFox base stations – and this nation-scale connectivity is exactly what SigFox aims to achieve.

Any device within this radius of a SigFox base tower can be wirelessly connected to the SigFox IoT network, providing wireless connectivity essentially anywhere, with minimum infrastructure deployment, simplicity and low cost.

The overall SigFox network architecture has been designed to provide a scalable, high-capacity network, with high energy efficiency, while maintaining a simple star-shaped cellular network topology that is easy to roll out.

Furthermore, SigFox claims that each base station can handle communications with up to a million objects, with an overall system power consumption as small as a thousandth of that of a standard cellular network.

Power management with SigFox endpoint nodes is incredibly efficient – they can wake up whenever they need to send a message, send a quick transmission and then return to a low-power sleep state. This allows devices that periodically transmit sensor data over a network, for example, to achieve very good battery lifetimes – in one example case cited by SigFox, up to 20 years from a pair of AA batteries.

Although the SigFox technology can’t accommodate heavy amounts of Internet data such as streaming media, it is well suited to carrying simple messages in Internet-of-Things and telemetry applications, employing lightweight transport protocols such as MQTT.

The SigFox network can carry up to 140 messages per object per day, or one message every 10 minutes, with a wireless throughput of up to 100 bits per second and a maximum message payload size of 12 bytes. SigFox employs ultra-narrowband radio communications in the ISM UHF bands, meaning that it can be deployed in most countries without device-specific radio spectrum licensing.

The specific frequency bands used for SigFox can vary according to the ISM spectrum allocations in different countries, with the 902 MHz band being used in the United States and the 868 MHz band used for most deployments in Europe. The SigFox ultra-narrow-band technology coexists well with other users of these frequencies, without collisions or capacity problems.

Thanks to SigFox’s aim to roll out their network to 60 countries over the next five years, with particular interest coming from the “smart grid” and energy management sector – we know this system will be a success. The SigFox network currently covers all of France (with 1200 base stations), Spain and the Netherlands, along with London, Manchester and several other UK cities.

However, this is not an international-only system – here in Australia we’re about to get started with SigFox, whose rollout will be announced this month. We predict a rapid take-up and look forward to working with future an existing customers to harness this exciting new technology.

Here at the LX Group we have end-to-end experience and demonstrated results in the entire process of IoT product development, and we’re ready to help bring your existing or new product ideas to life. Getting started is easy – click here to contact us, telephone 1800 810 124, or just keep in the loop by connecting here.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in IoT embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.


Multiplatform Internet-of-Things development with CloudPlugs

August 17, 2015

CloudPlugs is an end-to-end platform that provides cloud computing services for Internet-of-Things applications – with features including a trigger management engine, geolocation engine, database and storage engine and a billing engine.

Their new SmartPlug Apps cloud-based IDE allows the development of CloudPlugs IoT applications from the cloud, along with cloud-based automation that enables the remote deployment, configuration, update and management of devices.

IoT applications can be developed in JavaScript using the SmartPlug cloud based IDE, or with your favourite JavaScript development tool, anywhere, any time, on any browser. Whether you are a home user, an appliance manufacturer or a service provider, the CloudPlugs cloud service allows you to develop, deploy and manage as many as thousands of Internet-connected devices quickly without the need to develop and manage your own IT infrastructure to support them.

CloudPlugs offers the SmartPlug agent as the backbone of their IoT platform, which they claim is the most powerful and secure agent available for IoT devices. It is a secure, robust and lightweight yet powerful software agent with full lifecycle management capabilities for IoT gateways and other devices – enabling secure and efficient communications with the CloudPlugs IoT platform through their PlugNet protocol.

The platform supports local communications through multiple interfaces and protocols simultaneously, enabling devices with different physical interfaces and protocols to communicate. Devices and gateways powered by SmartPlug can easily exchange data with and control other devices, and scripts can be developed in the cloud and deployed to thousands of SmartPlugs with one click.

CloudPlugs offers maximum flexibility by delivering its end-to-end IoT connectivity platform as a subscription service as well as for in-house deployments. There is no limit on the number of prototype virtual devices that you can create and test in CloudPlugs, even with a free account.

The free account allows you to get started with free evaluation or hobbyist use of CloudPlugs, with up to 10 physical devices, up to 100Mb of storage and 100Mb of bandwidth per month. This is designed to allow individuals or small businesses to use the CloudPlugs platform to manage IoT devices as well as providing a free evaluation platform for larger users.

Moving up to a paid business subscription allows you to use as many devices as you want, with as much storage and bandwidth as your devices need, and a pay-as-you-use elastic pricing model which scales as your IoT business grows – where you’re only paying for the bandwidth and resources you’re actually using.

You can also choose a white-label CloudPlugs deployment in order to deliver IoT services, devices and management dashboards to customers under your own brand, along with in-house deployment on your own servers if desired for security or compliance reasons.

CloudPlugs uses a flexible and powerful MQTT-based publish-and-subscribe architecture, where things and applications subscribe to channels to publish their information and to read or issue control commands. Channels are data structures that allow things and applications to publish and to read data. Things or applications publish data into channels, or subscribe to channels to read data.

Channels can be created manually through the platform, or created dynamically. This dynamic management of channels means that they will automatically disappear if all the data published to that channel is deleted and will be created on-the-fly as data gets published to a newly specified channel by devices, removing the need for manual and inflexible configuration of channels.

Your devices and applications communicate with each other by subscribing to the same channels through MQTT, REST, WebSockets or the PlugNet protocol. Devices or “things” that use MQTT can connect and exchange data with other things that use the MQTT or WebSockets protocols, and if you’ve already developed existing products or devices that communicate using MQTT then it’s easy to get started connecting them to the CloudPlugs platform by modifying the MQTT logic to communicate to the CloudPlugs backend service.

To get started connecting your IoT things to the CloudPlugs platform, you need a CloudPlugs account – along with an appropriate hardware platform such as an Android device, an Arduino, Raspberry Pi, Libelium Waspmote or many others. Next you’ll need a software library that will be integrated with your controller firmware, and these are supplied for free download from CloudPlugs to cover a range of supported devices.

A wide range of different hardware and software platforms can easily and quickly be connected to the CloudPlugs platform using a lightweight REST API, which allows for almost any contemporary or future hardware platform to be integrated into the system.

CloudPlugs libraries are designed to give developers maximum flexibility and choice for the development and integration of applications to monitor and manage their IoT devices, and libraries are available that enable the development of software for integration with CloudPlugs using a range of different programming languages and environments – including Node.js, JavaScript, C, PHP, Android, Arduino and Objective-C.

These supported platforms cover a wide range of applications, including networking, development on embedded platforms such as the Arduino, Raspberry Pi and BeagleBone, and the Objective-C development of iOS apps.

Getting started with Cloudplugs can be easily achieved – for any purpose from initial experimenting with the Internet-of-Things to a full system. Here at the LX Group we’re ready to partner with you to meet your Internet-of-Things product goals, and can work with your ideas and more to bring them to reality. Getting started is easy – click here to contact us, or telephone 1800 810 124.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.


Konekt – a new player in the cellular IoT platform market

March 9, 2015

The spread of new Internet-of-Things platforms over the last few months hasn’t abated – and a new entry is now morphing from an idea to a funded platform – Konekt.

Konekt is a full-stack platform providing cellular connectivity for devices in machine-to-machine and Internet-of-Things applications, providing a powerful integrated combination of cellular plans, cloud infrastructure and APIs. Their goal is to simplify the process of making hardware talk, powering the next generation of the Internet; not just in homes with Wi-Fi or whenever you’re in Bluetooth range, but essentially everywhere, any time, through the use of cellular networks.

Konekt focuses on building infrastructure for ubiquitous connectivity, and aims to make sure that integrating this type of connectivity is as painless and inexpensive as possible, allowing you to focus on building great systems and products with connectivity on the go, anywhere.

The Konekt platform features extensive coverage available via Telco networks in over 160 countries, and a range of different cellular plans, allowing you to connect hardware to the Web at an efficient price point with a level of functionality that suits the needs of your application with global accessibility from day one.

Konekt’s cloud-based infrastructure for IoT devices allows you to easily create real-time public and private IoT applications using literally any hardware that can be connected to a cellular modem. The Konekt service employs the 2G and 3G bands, supporting HPSA, GPRS and SMS connectivity. As well as injecting data into the cloud service via (appropriately formed and authenticated) SMS, you can also send data back to Konekt’s Internet services via REST HTTP.

Short Messaging Service (SMS) offerings are typically very costly for embedded M2M applications when compared to the equivalent amount of data service that would be needed to send the same data. However, SMS connectivity is often needed for notifications to users and certain system integrations.

To provide more competitive SMS rates for your connected devices, Konekt offers an SMS-over-IP solution that leverages the over-the-air data service (cellular data, which is much less expensive for the same amount of bandwidth) and their Internet SMS gateway partners. This service is available for all Internet-connected devices, whether Konekt’s cellular network is being used or not.

Konekt provides cellular plans, cloud storage, device management and more, integrated into a single platform in one place. You can track orders and deployment right in your dashboard, and even manage your SIM cards and order more right in the app.

The device management resources are built for developers, with a set of unified APIs and tools provided that enable you to manage, provision and troubleshoot your devices in the field. Konekt provides a simple billing structure, with no complex pricing arrangements or hidden fees, and developers can get started creating an account and trying out the Konekt platform for free.

You can utilise Konekt’s subscription engine to white-label the Konekt portal with your brand and seamlessly bill your end users, with pricing and coverage that scales with a pay-as-you-grow model. Whether you’re in beta or preparing for your first huge deployment, Konekt can be scaled to meet your needs, instead of the other way around.

Security with the Konekt platform has been taken seriously, and provides enterprise-grade security with secured inbound connections, key management, encryption, static IPs, Private Access Point Names and configuration updates all at the push of a button. By default, devices are isolated and they cannot see one another via data or SMS connectivity.

Your devices are therefore protected from other compromised devices, eliminating attack vectors, mitigating risk and reducing attack payloads. Devices are secured against unauthenticated incoming connections and SMSs, to protect against off-network threats and potential threats originating from the Internet.

Konekt provides a flexible end-to-end toolkit aimed at every mobile embedded IoT connectivity application, with tools and support for deployments of all sizes, whether you have one device or a million. Konekt provides scalable pricing as well as support options for commercial applications, transparent uptime reporting, strong security features, high data throughput and readiness for the most demanding enterprise-grade applications.

With a public REST API, extensive documentation and API examples, Konekt is built to be developer-friendly, with robust, clean APIs that let you focus on building great products. Konekt provides you with access to both the REST API and a Web-based Device Management Portal, making device management more accessible for non-programmer users.

Konekt’s pricing is based on the amount of data your devices use. Adjust your data usage as you refine your project, utilise Konekt’s cloud services, and choose your support level, with plans that start from just US$1 per month. Data plans are available in over 160 countries so you can connect your product to the Internet just about anywhere, wherever there is cellular coverage.

Data plans are month-to-month and can be changed at any time. Pricing is based on the number of devices deployed, amount of data used per device and the countries you’re operating in, with custom plans available for significant large-scale deployments.

Konekt Cloud is a fully managed, reliable and powerful cloud data broker and database solution. Currently free for all devices (cellular and non-cellular), the Konekt Cloud provides a powerful suite of tools that securely route and store the data your devices generate, allowing you to spend less time building and maintaining complex infrastructure.

The cloud platform enables you to quickly create real-time smart IoT solutions by giving you the components you need such as real-time data access, security, storage, data analytics and machine learning. You can use Konekt’s hosted service or download the service and run it on your own infrastructure.

With a combination of a secure cloud-based IoT service and affordable cellular data, we look forward to the development of the Konekt platform. And if you have an idea for a new IoT-enabled product or would like to add connectivity to an existing device – here at the LX Group we have the team, experience and technology to bring your ideas to life.

Getting started is easy – join us for an obligation-free and confidential discussion about your ideas and how we can help bring them to life – click here to contact us, or telephone 1800 810 124.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.


Adoption of Agile for Embedded Hardware Design

March 2, 2015

Even though the design and development of electronic systems, and firmware in embedded systems, differs from conventional software application development in many ways – there is an increasing awareness in the hardware and embedded engineering fields today about Agile development methods.

The accelerating rate of technological change for electronic products requires rapid market responsiveness to maintain a competitive edge, and this is especially true in today’s world of ubiquitous mobile connected devices and Internet-of-Things technologies.

In one recent survey, 76% of software developers today see electronic hardware as a key element in turning many software ideas into products ready for market. This highlights a need for product innovators – growth of new markets like the Internet of Things demand practical tools to make physical design more efficient without sacrificing product quality, and Agile methods are one of the tools that can potentially play a role here.

Hardware is different from software, so rather than attempt to transfer Agile practices directly to hardware development, some careful consideration about what the differences are, what is really relevant and what is not most relevant, will allow the most effective adoption of Agile management techniques in the electronic design and embedded systems industry.

Agile project management methods can be used effectively in a hardware environment, by mechanical or electronic development teams, but some adaptations might be needed on a case-specific basis. However, this is already the best practice recommended in an Agile environment for software development teams.

Many large companies use Agile techniques in their development today, including Yahoo, Microsoft, Google and many others. The WikiSpeed startup employs heavy use of Agile management techniques in their mechanical engineering projects, delivering a novel car built from composite materials that offers extremely high fuel efficiency while also being safe and road-legal – designed and built from scratch in only 3 months using crowd funding, made viable thanks to the cost-effectiveness of their Agile practices.

However, some companies prefer the perceived stability and predictability of a traditional development process. Traditional use of comprehensive documentation and contracts is viewed as protecting them from risk and having one team follow the work of another.

There are also special hurdles when you’re combining hardware and software in one product, and most Agile experts, even with extensive software project experience, are not yet used to working with these issues. Some common challenges and concerns that are raised against the use of Agile methods are that more revisions and versions mean more data to manage, and that changing procedures and tools means added costs. There is the view that fewer contracts and specifications could mean higher risk, and that effective, useful communication and coordination is more complicated in an Agile environment.

One of the challenges for combined software and hardware development is that software can normally be developed fairly rapidly, and the development broken down into smaller chunks with more rapid iteration. Hardware, on the other hand, may require many months to show a working component or feature.

If the software must wait for the hardware to be created for final testing, this can create testing delays. Use of rapid prototyping technologies such as 3D printing can be valuable here for mechanical and plastics design, as can the use of modular electronic design, with smaller subsystems that can be iterated more rapidly, demonstrated, and tested independently of the whole system.

Writing user stories that span hardware and software allows for the interdependencies to be understood. There might be some software that the hardware team needs to test their first prototype; the teams can ensure that the required stories are correctly prioritised to support this. Similarly there may be software that is most efficiently developed once hardware is available (perhaps low-level interface drivers); these can be prioritised based on the hardware delivery schedules.

Because hardware often isn’t available until near the end of a project for actual deployment and testing, virtual versions of the hardware such as mock-ups, simulations and emulations are often an important part of hardware development using Agile techniques.

Modelling and simulation allow testing and integration to begin as soon as the design work begins, which eliminates the delays that might be experienced if the hardware isn’t yet available. It can save significant investment in unnecessary early prototyping of architectures that aren’t viable.

One method of dealing with hardware that isn’t ready to test is to decouple software and hardware development, via an abstraction layer, to allow software development to continue more rapidly. The challenge is to find a method that allows the rapid development of software and concurrent development of the hardware in a way that can best meet the requirements of each process.

Hardware abstraction layers enable concurrent hardware and software engineering by allowing software development and testing to start prior to hardware availability. This valuable practice can also provide input into the hardware requirements and help most efficiently refine the boundary between hardware and software.

Therein lies the challenge of embedded hardware design using Agile methodologies – software and hardware teams need to be challenged to work together for the desired outcome in the available amount of time. And as a leading developer of embedded hardware, products and services from design through to product manufacturing and support – here at the LX Group we have the team, experience and technology to bring your ideas to life.

Getting started is easy – join us for an obligation-free and confidential discussion about your ideas and how we can help bring them to life – click here to contact us, or telephone 1800 810 124.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.


Ayla Network’s IoT Cloud Platform

February 17, 2015

In what would seem to be an already crowded marketplace, Ayla Networks have introduced their new agile, cloud-based Internet-of-Things “application enablement” platform that makes it easy and cost-effective for OEMs to connect any of their products or devices to the Internet.

Ayla’s pervasive software creates an adaptive fabric for IoT applications, which aims to accelerate the development and support of smart, interactive product solutions from the device level, to the cloud, to the application level. The Ayla IoT Cloud Fabric combines innovative cloud-based services with powerful software agents integrated into both embedded IoT end-node devices as well as in mobile device applications.

By working closely with Broadcom, Ayla can deliver Embedded Agents supporting Broadcom’s WICED embedded Wi-Fi platform, and Ayla has also partnered with USI to deliver production-ready Wi-Fi Modules incorporating the Ayla Embedded Agent, bringing connected modules and services to market that will allow manufacturers to quickly and economically join the Internet of Things.

The Ayla Design Kit gives you an easy path to get started with securely connecting your product to Ayla’s flexible cloud platform and application libraries. Ayla’s reference design kit provides an out-of-box solution based around an STM32 microcontroller, a Wi-Fi module from Murata pre-loaded with Ayla’s Embedded Agent and a demo mobile app that enables you to quickly get started connecting to Ayla cloud services.

There’s no need to know anything about socket programming or to develop any networking code or learn how to provision a cloud service, because Ayla’s design kit provides you with out-of-the-box Wi-Fi cloud connectivity that is very easy to use.

You can start programming the on-board microcontroller right away, or connect the Wi-Fi development board into your existing microcontroller or the hardware in your product.

Supplied with the Ayla design kit you’ll find microcontroller driver source, demo applications and Ayla’s Application Libraries, which will help enable you to create great apps that securely control your Ayla-enabled hardware with a smartphone or tablet, with support for Android and iOS applications or Web interfaces.

With the Ayla Design Kit, you’ll get an account on Ayla’s Developer Portal, where a simple UI-driven design allows you to build or modify templates for your products in just minutes. Just sign up for a developer account, define a new template, and when you use the same named properties in your design, Ayla will take care of connecting the device and the cloud and keeping them in sync.

The Ayla Design Kit will also give you access to Ayla’s support site, with documentation and how-to guides to assist with your product development, from porting guides for SPI drivers to documentation on connecting to other cloud services through the RESTful APIs that Ayla provides for connectivity with outside services. You can also sign up for a support package that meets your needs.

When you’ve registered your developer and tech support accounts, which are free for users of the Ayla design kit, you can follow Ayla’s online support tutorials to walk through the Design Kit setup process, and you’re ready to get your Design Kit connected to the cloud.

The Ayla platform’s architecture is composed of three primary components – Ayla Embedded Agents, Ayla Cloud Services, and Ayla Application Libraries. Ayla Embedded Agents run on IoT end-node devices or IoT device gateways. They incorporate a fully optimised network stack along with additional protocols to connect devices to Ayla Cloud Services. Developers can choose to use Ayla-supported Wi-Fi networking modules alongside essentially any existing microcontroller in their system.

Ayla Cloud Services are the brains of the Ayla solution. The distributed, cloud-based architecture delivers connectivity with high efficiency, without forcing you into business models requiring ongoing payments. Ayla Cloud Services offer a full suite of intelligence about your product’s performance.

Furthermore, Ayla Application Libraries contain rich APIs for creating apps to securely control Ayla-enabled products with a smartphone or tablet, via iOS or Android native apps or from a web interface.

By abstracting the security and protocol complexity of communicating with the rest of the Ayla platform, Ayla Application Libraries present developers with a virtual device object which is easy to interact with.

When it comes to developing a mobile app, Ayla provides a demo app with the Ayla Design Kit to showcase its cloud-connectivity functionality as well as mobile app libraries to help you create your own Ayla-connected apps, with support for both iOS and Android application development.

With Ayla’s IoT platform you can focus on your UI and customer experience, and leave the platform to take care of the back-end networking, authentication, security and provisioning for you.

The Ayla IoT cloud platform is built for enterprise applications, and it can support your IoT products and applications at any scale. The platform is fully equipped for security, flexibility, operational support, and data analytics – all the capabilities and tools that commercial IoT vendors and developers need to scale their product support at enterprise scales.

And as a leading developer of embedded hardware, IoT products and services from design through to product manufacturing and support – here at the LX Group we have the team, experience and technology to bring your ideas to life.

Getting started is easy – join us for an obligation-free and confidential discussion about your ideas and how we can help bring them to life – click here to contact us, or telephone 1800 810 124.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.


Microsoft and the IoT

February 12, 2015

In an effort to expand their reach into the Internet of Things marketplace, Microsoft has launched their Windows Internet of Things Developer program – the first in a series of programs aimed at promoting and educating developers in the use of Microsoft products and technologies for the creation of connected devices and Internet-of-Things applications.

Microsoft’s program is aimed at Windows programmers and embedded systems engineers as well as the hobbyist and “maker” community.

Microsoft aims to bring Windows and development tools such as the Visual Studio suite to a new class of connected devices such as the Intel Edison and Raspberry Pi platforms, low-cost platforms that are attractive for both hobbyist and commercial embedded computing applications.

This should bring synergy with existing developers and the needs of marketing and new IoT-enabled product development in the same organisation – existing IT resources can be used to help with IoT development without too much retraining or new hires.

Microsoft wants to combine the accessibility of the successful Arduino platform with the strong community support and proven experience base behind Windows and Visual Studio, allowing you to quickly iterate and expand on hardware and software designs using existing shields and sketches, with strong compatibility with the Arduino platform at both the hardware and the software level.

The Windows IoT Developer Program was announced last year, beginning with Windows support for Intel’s Galileo single-board embedded computing platform. The addition of the new Raspberry Pi 2 to the program has just been announced, including support for a new embedded Raspberry Pi 2 version of Windows 10, which will be freely available for embedded developers and makers who are members of the program.

Microsoft is hoping that this program, and support for the Raspberry Pi and Galileo platforms, will introduce the use of embedded Windows and Visual Studio development to independent developers and the hobbyist and maker community.

Microsoft has ported the Arduino and Wiring libraries to their embedded Windows IoT offerings, so you’ll be using Visual C++ to write code against the Arduino API. It looks a lot like Arduino programming, with some minor differences.

Intel sells their Galileo development boards with a lightweight version of Linux through distributors, but the version of the Galileo board with Windows installed is only available when distributed through Microsoft. The preview Windows image running on the Galileo for IoT toolkit is a custom non-commercial version of Windows based on Windows 8. Microsoft will ultimately make the OS available for anyone who buys the Galileo board, though.

Microsoft hasn’t just stripped down Windows and dumped it into an image you can run on a Galileo. They’ve been making improvements in Windows to better support the kind of things embedded developers want to do. For example, Microsoft’s Lightning functionality is a re-architecture of Windows to make GPIO operations much faster.

The folks at Redmond sensibly see IoT devices as being a huge opportunity both in terms of selling the embedded solutions that power those IoT devices and to make sure the devices connect and pass their data back to a Windows Server on the back end – Microsoft is potentially able to pick up some market share in the emerging IoT sector not only in the “Thing” components, but in the “Internet” component as well.

The ultimate goal of such efforts is to take information collected from billions of devices and feed it into cloud services powered by Microsoft’s Azure cloud computing platform. This is part of Microsoft’s cloud-heavy strategy, with the company previously pushing Windows Embedded as an IoT platform and a gateway to the rest of the company’s information-management fabric, mainly based around their Azure cloud services.

Microsoft has long catered to commercial developers and manufacturers of embedded systems with the Windows Embedded Compact OS, which is used in a range of industrial devices, mobile handsets, health monitors, ATMs and other devices. Microsoft wants to make sure these manufacturers knows its embedded OS can also work for their IoT devices as well.

However Microsoft has stressed that Windows Embedded is not going away and is still an important part of its product range. Windows Embedded Compact is a fully featured OS which supports commercial devices, unlike the new developmental offerings, and it remains Microsoft’s only real-time operating system and is the Windows operating system with the broadest set of ports including ARM and x86 architectures.

In moving to an ARM7 architecture, there’s a wider range of supported operating systems that can run on the Raspberry Pi 2. The processor upgrade means that two new operating systems come into view: Ubuntu Linux and Windows 10. Microsoft has recently announced it will be offering a Windows 10 build for the newest revision of the Raspberry Pi platform later this year, as part of its IoT Developer Program.

Microsoft and the Raspberry Pi Foundation have been collaborating for the last six months on the joint project. With Windows in the mix this potentially opens up the Raspberry Pi to some Windows-centric developers who weren’t previously interested in creating applications for the device, as it would mean learning a new operating system or programming language.

With Windows comes all the development tools such as Visual Studio, libraries and languages such as C# to add to the many tools that can already run on the Raspberry Pi such as Scratch and Python. Microsoft aims to bring their OS, their development tools, services, and ecosystem to the Raspberry Pi community for free, with the intention that you can take Windows 10 applications that you can run on a Surface, a PC or a Windows Mobile phone and now be able to run it on a Raspberry Pi as well.

This offers a wider range of hardware and software development possibilities for any new or existing IoT-enabled product, and here at the LX Group we have the team, experience and technology to bring your ideas to life.

Getting started is easy – join us for an obligation-free and confidential discussion about your ideas and how we can help bring them to life – click here to contact us, or telephone 1800 810 124.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.


Reducing the cost of IoT devices with the ESP8266

January 19, 2015

The ESP8266 Wi-Fi System-on-Chip from Espressif Systems is a highly integrated SoC designed for the needs of modern Wi-Fi-connected embedded systems, appliances, sensors and other cost-sensitive, Wi-Fi-enabled Internet-of-Things applications.

This high-performance wireless SoC aims to provide Wi-Fi capabilities in embedded systems with strong functionality at a low cost. It has powerful on-board processing and storage capabilities that allow it to be integrated with sensors or other application-specific peripheral devices via its general-purpose digital I/O ports with minimal development effort and potentially without the need for any separate microcontroller in many typical applications.

The ESP8266 provides single-band (2.4 GHz) Wi-Fi connectivity using the 802.11b/g/n standards and supports WEP, WPA and WPA2 encryption.

The high degree of on-chip integration minimises the bill of materials in your design, with a low-power Tensilica 80 MHz 32-bit processor core, RAM, ROM and GPIOs, power management module, and all RF front-end components such as the clock generation, PLLs, LNA and power amplifier all integrated on the 32-pin QFN chip.

This means that your complete Wi-Fi connected solution requires minimal external components and minimal PCB area. The ESP8266 offers a complete and self-contained wireless networking solution, including an integrated TCP/IP stack – and it can either provide Wi-Fi connectivity and networking functions to a separate application processor in your design or host your application itself in the chip’s on-board application processor.

Where the ESP8266 serves as an external Wi-Fi bridge to a separate application processor in your design, Wi-Fi connectivity is added to the host processor via a simple UART or SPI interface to the ESP8266. As long as your microcontroller has a spare serial UART or an SPI interface you’re ready to go, so you can straightforwardly interface the ESP8266 to essentially any microcontroller in your existing design.

The ESP8266 has also been designed with energy-efficient mobile and battery-powered applications in mind, with an architecture that minimises power consumption and provides a sleep mode and deep-sleep mode to minimise power use in your design at times when Wi-Fi network connectivity is not actively being used.

With a wide range of interfaces including SPI, SDIO, UART and I2C, the ESP8266 can be used for interfacing to external EEPROM and Flash memory, ADC/DACs, external audio codecs, or other sensors and peripherals that can connect to these serial interfaces.

In stand-alone mode at least one external flash memory chip to boot from is needed. The chipset also incorporates 16 programmable general-purpose digital I/O pins, which can be configured in software with a range of flexible interrupt and output options.

Espressif has released a complete Software Development Kit for the ESP8266, along with a VirtualBox Ubuntu image that provides you with a complete ready-to-go tool chain including gcc and all the other tools you’ll need to develop and build code for the Xtensa core in the chip.

Included in the SDK are SSL, JSON and lightweightIP (lwIP) libraries, providing the capabilities for a range of typical Internet-of-Things applications. Example code is provided to demonstrate the use of the chip’s UART, I2C and SPI interfaces as well as general-purpose digital I/O.

Espressif provides an ESP8266 Internet-of-Things SDK, which is specifically aimed at IoT applications. Although this SDK is only partially open source and some libraries are provided as binary blobs, a fully open-source third-party tool chain for development on the Xtensa CPU architecture is separately available.

A range of other third-party software development tools and interpreters are available or in development for the ESP8266, including the nodeMCU Lua interpreter and an ESP8266 port of the MicroPython embedded Python project, allowing you to use these scripting languages if you choose. There is also firmware available for the ESP8266 that implements MQTT-based message brokering for Internet-of-Things applications.

The ESP8266 is notable in that it is one of the few chip-level 802.11 Wi-Fi devices on the market, along with the Texas Instruments CC3000-series chipsets, which is available in small-volume distribution and with publicly-available datasheets and documentation, meaning that this device is accessible to small-volume businesses and small, independent developers in a way that 802.11 chipsets from major vendors such as Broadcom or Realtek generally aren’t.

Alternative Wi-Fi modules and devices such as the Spark Photon offer features such as USB connectivity, more memory, more I/O and a more familiar ARM architecture, but they are more expensive – the Photon is close to USD $20, for example.

The Spark Photon is a very simple breakout board that just provides an antenna and a voltage regulator for USI’s WM-N-BM-09 Wi-Fi module, which implements Broadcom’s standardised WICED ecosystem with a STM32 Cortex-M3 microcontroller core alongside Broadcom’s BCM43362 Wi-Fi radio.

As another example of relatively low-cost embedded Wi-Fi solution, there are similar boards coming from China today for about $10 based on the MXchip MX1081 chipset, which also incorporates the Broadcom BCM43362 core alongside a STM32 microcontroller.

The Texas Instruments CC3200 Internet-of-Things SoC also aims to provide a complete single-chip IoT solution based around an ARM Cortex-M4 80 MHz CPU core and integrated Wi-Fi radio along with a flexible range of digital I/O interfaces and an integrated ADC.

The CC3200 offers extensive, good quality, English documentation, development tools and resources along with an ARM core that is more popular and familiar with developers than the ESP8266’s Xtensa core. The CC3200 is distributed in small volumes and has publicly available documentation and development tools as with the ESP8266, however the ESP8266 has the advantage of its relatively low cost even in small volumes.

With the appearance of such low-cost IoT capable chipsets on the market, bringing your Internet-enabled product ideas to market can be much faster, simpler and even cheaper than you ever expected. And here at the LX Group we have the team, experience and technology to bring your ideas to life.

Getting started is easy – join us for an obligation-free and confidential discussion about your ideas and how we can help bring them to life – click here to contact us, or telephone 1800 810 124.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.


The importance of staying Agile when using Agile

November 12, 2014

When an organisation or team decides to adopt Agile methodology for their projects, not “staying agile” can potentially lead to problems. Although Agile itself is very broadly defined in the general principles of the Agile Manifesto, and there are many different ways to implement agile principles, “staying agile when using agile” is important and straying too far from the underlying principles of agile can potentially lead to pitfalls.

So, how can we keep Agile development agile and avoid common pitfalls when adopting Agile project management techniques?

One of the important things to know about Agile methods is that if they are limited to one development team churning out code, the outcome won’t be truly Agile. It takes a whole organisation to truly be agile, with agile methods supported by management and other staff within your organisation – not just one team without any support for agile in the organisation.

There are several other key success strategies for organisations when adopting Agile methods, such as looking beyond the application “construction” stage and considering the life-cycle context of the application. If organisations only change the way they construct software, without downstream or upstream business changes, this is unlikely to lead to the most effective outcomes with Agile.

It’s important to not be “Agile zombies”, with the inaccurate assumption that just attending a class or seminar about Agile methods and implementing some of the points learned leads to “being agile”. Every organisation is different and is constantly evolving. Continuous learning and improvement is at the core of Agile, and Agile isn’t a strictly defined “one size fits all” recipe.

Agile isn’t a prescribed process or set of practices; it’s a philosophy that can be supported by practices, and no two agile approaches are exactly the same. No one single methodology exists that meets the needs of everyone.

It’s also important for organisations to decide if and where agile adoption is most beneficial for their business, to plan carefully for agile adoption, and to not adopt “Agile just because it’s Agile”. Organisations should ask questions such as why they want to be agile, what benefits agile will provide, and how agility will be achieved and measured. Organisations should ask what cultural or other barriers exist to their adoption of Agile techniques and how they can be overcome.

Without a plan that clearly shapes the initiative, addresses and resolves constraints to agility (for example, removing waterfall process checkpoints or getting support from other required entities), it is more difficult to shape the Agile initiative, staff it, fund it, manage blockers and maintain support from executives.

It’s valuable to ensure that the entire organisation is included in Agile project management – including areas of the organisation that may be overlooked such as marketing or accounting staff. It’s faster and less painless, of course, just to launch an Agile initiative with one team, but this is not most effective.

A single team may gain some benefit from agile, but to be most successful you need to look at the whole process around solution delivery and the numerous people involved. Agile, ideally, should be a change in culture for the entire organisation.

It’s important to find supporters for Agile adoption not only among developers and IT teams, but across all parts of the business unit. In particular it is desirable to try and get somebody from senior management directly involved in Agile adoption, with as much support as you can find from executive management.

Effective agile adoption requires executive sponsorship at the highest level, because these are the people who control resources and can move them as needed to deliver results most efficiently.

Successful adoption of Agile means a shift in the way business views technology, and for most effective results we should recognise that developers don’t like change and many people like working in their own world. As with any cultural shift like this, coaching can be valuable.

Business users will need to learn to work differently with development teams as well. That’s why a coach – either a professional or a designated employee with strong communication and motivation skills – can be an effective part of a new agile team, to help everyone learn to work together most effectively.

Training is also important for success with Agile. Some organisations tend to skimp on training, but Agile is one area where it can be particularly valuable. Managers may only send a few key people to training, in the hopes that they can train the rest of the organisation to implement the new approach for free.

This is unlikely to yield the best results, since Agile is a game-changing initiative, and everyone across the organisation needs to understand it for best results. Continuous improvement is a key principle of Agile development, including continuous development of the team and their skills.

Once again we enjoy illustrating that Agile methodologies can be used effectively with embedded (and other) hardware development if all members of the team embrace the methodology. And that includes the engineering team here at the LX Group – who can bring your ideas to life.

Getting started is easy – join us for an obligation-free and confidential discussion about your ideas and how we can help bring them to life – click here to contact us, or telephone 1800 810 124.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.


ARM’s new mbed-based IoT Device Platform

October 27, 2014

The ARM group has recently announced the new ARM mbed IoT Device Platform and an accompanying free operating system, aiming to build on top of the existing mbed embedded development ecosystem to simplify and accelerate the development and deployment of your new Internet-of-Things connected products.

For the uninitiated, mbed is “a platform for developing smart devices that are based on 32-bit ARM Cortex-M microcontrollers. It is designed to provide a highly productive solution for rapid prototyping and product development, with a focus on connected Internet of Things devices.

It is a project developed by ARM, its technology partners and a community of core developers, and it is used by tens of thousands of professional developers to create intelligent products that take advantage of the power of modern microcontrollers and connectivity” (from Wikipedia).

The new mbed platform has been built around open standards and aims to bring Internet protocols, security, standards-based manageability and interoperability together into one integrated solution optimised for the development of cost-constrained and energy-constrained connected devices with the power of ARM’s popular 32-bit processor technology.

The ARM mbed IoT Device Platform is supported by the established and growing mbed hardware and software ecosystem that will provide common building blocks for IoT devices and services. This new platform aims to accelerate the growth of the Internet-of-Things market by enabling innovators to focus on value-add features and differentiation in their product, spending less time on the core processor and connectivity requirements.

The platform is built around the free mbed operating system for ARM processors and devices based around them, and the mbed Device Server, which is analogous to a Web server that accepts connections from Web browsers, but instead it handles the connections from embedded Internet-of-Things devices. The new mbed OS aims to consolidate the fundamental building blocks of the IoT into one integrated set of software components.

The mbed IoT operating system is a modern full-stack operating system that is designed specifically for the popular ARM Cortex-M based 32-bit microcontrollers. Optimised for energy efficiency, connectivity, security and reusable software functionality, as well as being available at no cost, the OS aims to become a foundation that enables widespread innovation in the IoT space.

The mbed OS contains security, communication and device management features to enable the development of production-grade, energy-efficient IoT products.

The mbed Device Server, which is available now, aims to be a key enabler for cloud service providers, operators and enterprises to access the growing IoT market with production deployments, bringing end node devices into the world of web services.

The scalable, industrial-strength mbed Device Server supports the protocols, behaviours and security requirements of IoT devices, making them accessible through APIs to enterprise software, web applications and cloud stacks.

mbed Device Server brings web services to the most demanding enterprise applications in the Internet of Things, utilising open-source protocols such as CoAP/HTTP, MQTT, TLS/TCP, and DTLS/UDP for data communication and device management.

Device Server is a software product that provides the required server-side technologies to connect and manage devices in a secure way, and also provides a bridge between protocols such as MQTT or CoAP that are suited for use in IoT devices and the APIs that are used by web developers.

This simplifies the integration of IoT devices that provide “little data” into cloud frameworks that deploy “big data” analytics on the aggregated data, with the scalability to handle the connections and management of millions of devices.

The mbed IoT Device Platform also incorporates the mbed.org Web community, a central website and a community of more than 70,000 developers working with the mbed platform, providing a comprehensive database of hardware development kits, a repository for reusable software components, reference applications, documentation and Web-based development tools.

The mbed developer website hosts all the development tools you need within a Cloud-based Web IDE to give you quick access wherever you are; it is already configured, requires no installation, and will stay up-to-date whenever you decide to use it.

Software development has come a long way in a short time, driven by the innovation around the productive programming frameworks, tools and workflows of the Web era, and mbed is bringing these modern tools and design patterns into the world of embedded development with up-to-date, modern workflows and tools inspired by the Web development community.

Inspired by the highly productive programming frameworks, tools and collaborative workflows of the web, it is time to bring embedded development up-to-date. The mbed team is developing free and reliable command-line build, component management and test tools, and a Web IDE and developer web services that help bootstrap your embedded development with the accessibility and productivity one would expect in other programming or software development domains.

These new tools comprise a platform toolkit that can handle the complexity and collaboration requirements of the IoT, enabling you to build complex applications from well-tested software components and to collaboratively develop and improve those components.

The Web-based mbed IDE includes features such as workspace version control, code formatting and auto-generation of documentation for published libraries. You can publish projects directly from your private workspace to the developer website to share code openly with the community if you choose, or pull existing libraries into your workspace to get a head start on your project.

The mbed platform offers 32-bit power to your embedded hardware along with an easy point-of-entry, allowing you to work with powerful hardware and IoT product design. As another option for your existing or new IoT-enabled project, our experienced award-winning engineering team can harness mbed for your success.

Getting started is easy – join us for an obligation-free and confidential discussion about your ideas and how we can help bring them to life – click here to contact us, or telephone 1800 810 124.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.


Using Scrum methodology for Hardware Development

October 6, 2014

Although the Scrum agile methodology was originally formalised for software development projects, as with other agile frameworks it can be applied well to any complex, innovative project that a team works on.

Scrum is a way for teams to work together to develop a product where product development occurs in small pieces, with each piece building upon previously created pieces. Building products one small piece at a time encourages creativity and enables teams to respond to feedback and change, to build exactly what is needed using a most efficient manner.

Furthermore it’s a simple framework for effective team collaboration on complex projects that provide a small set of rules that create just enough structure for teams to be able to focus their innovation on solving what might otherwise be an insurmountable challenge.

So let’s have a look at how scrum methodology can be applied, and its potential benefits and challenges, when applied to embedded systems and hardware projects. Building complex products for customers is an inherently difficult task, even more so for projects that have a hardware component, and Scrum provides structure to allow teams to deal with that difficulty.

However, the fundamental Scrum process is quite simple and at its core it is governed by a few core roles on the project team. Product owners determine what needs to be built during a “sprint” interval of 1 to 4 weeks and the development team does the technical work to design and build what is needed during this interval, followed by demonstration of what they have built.

Based on this demonstration, the product owner determines what to build next. The Scrum master ensures this process happens as smoothly as possible and continually helps to improve the process.

A key principle of Scrum that differentiates it from traditional project management philosophies is its recognition that during a project the customers can change their minds about what they need or want, and that unpredictable challenges cannot be easily addressed in a traditional predictive or planned manner.

As such, scrum methodology adopts an empirical approach, accepting that the project cannot be perfectly understood or defined in advance and instead the team focuses on maximising its ability to deliver small iterations of progress quickly and to respond to changing or emerging requirements as the project proceeds.

As the team proceeds through the “backlog” of tasks during a scrum project, it is accepted that changes can and will happen – the team may learn about new market opportunities to take advantage of, competitor threats that may arise, or customer feedback may change the way the product is supposed to work.

When it comes to hardware projects, the time constraints involved in fabrication of printed circuit boards, the ordering of components, hardware assembly or other external manufacturing dependencies and the commitment to a particular hardware prototype design once it has been sent for manufacturing can potentially make it much more difficult to respond to new or changing customer specifications or requirements within the fixed timeframe of a given sprint.

If these kinds of factors in ordering or manufacturing hardware devices exceed the time allocated for a sprint, these manufacturing issues can present a unique challenge when trying to apply agile methods to hardware development.

The “sprint” is the basic unit of development effort in a Scrum project, a period of typically 1 to 4 weeks in which development occurs on a set of “backlog” items that the team has committed to, restricted to a specific time duration which is fixed in advance for each sprint.

Over the course of a sprint the project team has a physical, co-located, “stand-up” meeting every day to communicate between the team and assess its work, while the scrum master keeps the team focused on its goal along the way.

For hardware projects, increasingly popular and accessible tools and technologies such as small-scale CNC milling, 3D printing, and laser cutting are becoming more important for rapid prototyping and agile hardware development, allowing components such as custom plastics or simple PCBs to be rapidly prototyped, demonstrated to the product owner and evaluated within a sprint.

A prototype iteration of a hardware system doesn’t have to physically involve hardware. Simulation and visualisation tools, such as SPICE for electronic engineering, 3D rendering of mechanical components and PCB component dimensions, and thermal modelling for predicting heat transport with a device enclosure, for example, can all play an important role in assuring the quality, interoperability, industrial design, electrical and thermal performance and the “look and feel” of all the components that come together into a new product even before a prototype is actually physically constructed.

These tools and techniques can also be valuable to demonstrate hardware design and engineering progress relatively quickly, within the finite timeframe of a sprint, if the manufacturing of physical prototype hardware will take longer.

Once again this shows that agile can be used effectively with embedded (and other) hardware development if all members of the team embrace the methodology. And that includes the engineering team here at the LX Group – who can bring your ideas to life.

Getting started is easy – join us for an obligation-free and confidential discussion about your ideas and how we can help bring them to life – click here to contact us, or telephone 1800 810 124.

LX is an award-winning electronics design company based in Sydney, Australia. LX services include full turnkey design, electronics, hardware, software and firmware design. LX specialises in embedded systems and wireless technologies design.

Published by LX Pty Ltd for itself and the LX Group of companies, including LX Design House, LX Solutions and LX Consulting, LX Innovations.