All posts tagged: source

The panStamp development environment for wireless sensor networks and Internet-of-Things applications is based around compact, low-cost microcontroller boards including a built-in sub-gigahertz radio transceiver, providing the necessary connectivity and processing power to create autonomous low-power wireless sensor and actuator nodes with almost everything contained in a 24-pin DIP module that is compact, low-cost, easy to program and to use.

It’s easy for anybody to get started with the open-source panStamp platform, allowing you to measure almost anything by connecting a panStamp up to some sensors, connecting a small battery, writing some simple Arduino-compatible code and transmitting data wirelessly, providing a convenient solution for any kind of project needing low-power wireless communications or telemetry, such as home automation, energy metering, robot control or weather monitoring. 

The panStamp platform makes it easy and accessible to get started creating wireless sensor networks and other wireless systems for both professional and hobbyist users.

Modules are very easy to program and configure, and they can be plugged into many different kinds of commercially available base boards containing different sensors, actuators and power supplies, or the user can develop their own custom base-board hardware to meet their needs, with all the complexity of the microcontroller and radio hardware contained on the panStamp module. 

Wireless boards run a compact stack and communicate with each other using a simple protocol called SWAP, using the 868 or 915 MHz ISM radio bands, offering lower congestion and longer range compared to 2.4 GHz solutions. The lightweight, open-source SWAP protocol that powers the panStamp radio stack is designed for use with Texas Instruments CC11xx radio hardware in resource-constrained wireless sensor network and machine-to-machine applications, typically consuming only about 7kB of flash and less than 1kB of RAM.

Everything has been designed to perform efficiently, quickly and with good power efficiency with one of the most compact wireless stacks on the market, allowing developers to focus on their applications without worrying about low-level details of the microcontroller and radio implementation. 

However, the platform is all free and open-source, so those details of low-level implementation are available for developers to look at if you want to. The panStamp project provides a complete solution to allow you to build wireless sensor networks that are connected to the cloud – not only microcontroller and sensor boards, but also the communications stack, protocol definitions, network controller and management tools to get your network of sensors up and running and connected to cloud services. 

panstamp2

From the data collection and actuation to transmission, data management, event handling and IP tunnelling, panStamp aims to provide easy connectivity of wireless devices to cloud services and other Internet-of-Things services in a way that is accessible regardless of your technical background.

Most of the core features of panStamps hardware, such as power management, the real-time clock and the RF transceiver are controlled inside the panStamp library, so the user doesn’t have to deal with the 
low-level programming required to control these hardware peripherals. To consider some of the standard base-boards available for use with panStamp modules, a good starting point is panStick, which is a USB-connected motherboard for panStamps. 

The panStick is used to program panStamps, and also acts as a serial gateway from your PC to the wireless network. You simply place a panStamp on the panStick, program the panStamp with the modem application, and plug the dongle into your computer. This is the simplest way to connect panStamp RF networks to any software on your PC, including the SWAPdmt device management tool for SWAP networks and the Lagarto software for cloud service connectivity.

The panStamp shield for Raspberry Pi adds connectivity to panStamp radio networks on the Raspberry Pi via its UART, combining low-power wireless connectivity with the Pi’s Ethernet or 802.11 networking and more powerful computing capacity, providing a gateway from the panStamp network to the Internet without the size or power consumption of a traditional PC. 

This shield essentially provides the Raspberry Pi with an RF “modem”, as well as providing a DS1338 real-time clock with battery backup to allow the Raspberry Pi to keep the current time without power or network connectivity.

The panStamp AVR module is based around an Atmel ATmega328P microcontroller and TI CC1101 radio transceiver, and is fully compatible with the Arduino bootloader and IDE. Developers can create their own programs and upload them to panStamps using the standard Arduino IDE, making the panStamp platform very accessible and easy for everybody to get started with, especially if you have previous Arduino experience. 

The more powerful, advanced panStamp NRG module is based around the TI CC430F5137, which combines TI’s MSP430 low-power 16-bit microcontroller with a sub-gigahertz radio transceiver on the die, providing a neat, single-chip, power-efficient solution for sub-gigahertz wireless sensor networks. 

The panStamp NRG module is fully compatible with the Energia IDE, a port of the Arduino IDE for the Texas Instruments MSP430/Stellaris microcontroller family. This allows the developer to easily get started with software development for these relatively powerful 16-bit, power-efficient microcontrollers with the same ease of use and same language and development environment that will be familiar to Arduino users.

The radio hardware used in panStamps can typically achieve a transmission range of about 200 meters in open spaces at 38400 bps and 0 dB transmission power, using only a small wire antenna. Using higher transmission power configurations, external high-gain antennas connected to the SMA connector available on panStamp boards, or slower bit rates, it is likely that substantially larger transmission distances could be achieved if this is what your application requires.

The Lagarto software platform allows you to monitor and control panStamp devices remotely from your PC or Raspberry Pi, process the data coming in from your network of devices and deliver it out to the network or the Internet using different mechanisms, for example for connectivity to cloud services. Lagarto is an open automation platform for use with SWAP networks, panStamps and other low-power wireless sensor network technologies, connecting SWAP networks to the IP domain and to the Internet. It is a lightweight solution, designed to run on low-power LAN connected platforms such as embedded plug computers and the Raspberry Pi. Lagarto’s extended automation module has the capability to run complex tasks locally and also connect local networks to remote data services. 

Furthermore the cosm, GroveStreams, ThingSpeak and openSense Internet-of-Things web services are currently supported with connectivity to Lagarto out of the box at the present time, with support for new platforms likely to be added in the future.

Also, panStamps are now officially supported in OpenRemote, a powerful open-source home automation software for iOS and Android devices. One of the major attractive features of OpenRemote is the capacity for anyone to create custom graphic layouts for their preferred mobile platforms for free using OpenRemote’s online designer, uploading the generated files to a computer running OpenRemote Controller and have these custom controller layouts on their mobile device interoperable with a wide range of automation hardware including but not limited to panStamps.

Thanks to the open-source nature and low hardware cost of this platform, it’s simple to get prototypes of IoT systems up and running – which also translates to lowering the cost of the system development through to the final product. However if you need any form of guidance from consulting through to end-product manufacturing and support – we can partner with you – finding synergy with your ideas and our experience to create final products that exceed your expectations.

To get started, 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.

Muhammad AwaisThe IoT made simple with panStamp

Let’s take a brief look at the FreeRTOS operating system, and the FreeRTOS+Nabto platform. It’s the market-leading, real-time operating system (RTOS) for embedded systems that is not only open-source, high quality and well supported – but also provides strong cross-platform support across 33 different architectures, access to high-quality training and information, pre-configured example projects and a growing user community.

Furthermore FreeRTOS is available in a high-reliability TUV-approved version for demanding, safety-critical applications – providing peace of mind to commercial users, with strict configuration management to ensure high quality development of the FreeRTOS project’s code, and FreeRTOS is free to embed in commercial products without any requirement to expose your proprietary source code.

By combining the FreeRTOS real-time operating system with the patented Nabto peer-to-peer remote access communication platform for embedded systems, you can harness a simple and secure HTML5 or native application interface for your end users, along with an adaptive and flexible data-acquisition interface for data collection, central analysis and monitoring systems.

The resulting combined system brings simplicity, platform independence, inclusive cloud hosting services and entry level access to Nabto’s Internet-of-Things solution together into an interesting easy yet powerful real-time platform for use with embedded Internet-of-Things systems.

FreeRTOS+Nabto is a small piece of C code that, when integrated into an embedded networked device, allows that device to be remotely accessed and controlled through a rich web-based or native iOS or Android app-based interface or intelligent data acquisition system – consuming less than 23 Kb of flash in a typical system including both the FreeRTOS kernel and the IP stack.

Each device has a unique URL, allowing the device to be automatically located across the Internet, and the Nabto technology allows secure, authenticated and bandwidth-efficient peer-to-peer connections to be established even when the device is deployed behind a NAT firewall which removes the complexity of configuring firewall penetration for embedded Internet-of-Things devices in enterprise environments. 

FreeRTOS+Nabto enabled devices can also be accessed over the local network in the absence of Internet connectivity. As FreeRTOS+Nabto is a new, simple, cross-platform and fully integrated solution for the Internet of Things, it provides a cloud infrastructure that enables IoT devices to be accessed through a rich user interface running in a web browser or a smartphone app – requiring the device itself to only supply the live sensor data and no other components of the interface, supplying this data via UDP in a lightweight way.

Free RTOS

This means that the embedded devices themselves can be kept simple, power-efficient and lightweight – the use of cloud technologies means small FreeRTOS+Nabto devices can be given rich user interfaces without the need for any on-board filesystem or a TCP/IP stack, only relatively lightweight UDP/IP networking support.

These rich user interfaces can be accessed locally via the LAN or anywhere in the world via the Internet, from a computer, tablet or smartphone, with local device discovery and unique and resolvable URLs for each FreeRTOS+Nabto device provided over the chosen domain (LAN or Internet), solving the traditionally difficult problem of naming and uniquely identifying devices in large Internet-of-Things networks.

Using FreeRTOS+Nabto you can connect to a remote IoT device wherever that device is at the time of the connection simply by knowing the device’s unique URL, and being securely authenticated as a legitimate user, with the system handling all the networking, routing and encryption necessary to securely network your IoT devices, address and find them – across the LAN or across the Internet.

All you need to do as an application developer is compile the source code, write a single interface function, and make use of the FreeRTOS+Nabto fully managed cloud service. Instructions and tutorials are provided to make this easy for you, with a strong community of users and the availability of professional support for commercial customers.

Different web content can be served to different geographic regions, moving the burden of internationalisation from the embedded device into the cloud, allowing for even smaller code size and simpler more maintainable designs. All the network routing and protocol details are encapsulated within the FreeRTOS+Nabto product and its inclusive cloud hosting service, enabling FreeRTOS+Nabto to interface with the user’s application source code through a single C function, and enabling FreeRTOS+Nabto to be accessible to users and developers without an advanced level of existing networking expertise.

The FreeRTOS+Nabto platform includes a fully documented live online example that is running on a small real-world microcontroller and a separate project that uses the FreeRTOS Windows simulator. The Windows simulator version creates live virtual FreeRTOS+Nabto nodes on a local network to allow FreeRTOS+Nabto to be evaluated quickly and easily and without the need to purchase any specific hardware.

Although the simulator differs from FreeRTOS running on real hardware in that it does not exhibit real-time behaviour, the ability to set up a development environment, create and experiment with FreeRTOS+Nabto Internet-of-Things applications on a local network before purchasing any specific hardware is still a very useful and attractive capability.

Thanks to the open nature of FreeRTOS, it can be used in a wide range of embedded hardware and become part of your new or existing IoT products. As experts not only embedded hardware but also full idea-to-delivery of products, our consultants and engineers can work with you to meet your goals.

The first step is to 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.

Muhammad AwaisFreeRTOS – the cross-platform OS for Embedded Hardware

Since the early days of computer and networking development in the late 20th century, the open-source hardware and software movement have become a growing force in the world of agile product development.

Using such open-source methods may seem to be a great idea, however there are some potential advantages and disadvantages of choosing to use open-source software and hardware – both using other people’s existing open software or hardware technology, or releasing your own intellectual property as open-source software or hardware for use in the development of Internet-of-Things solutions. What are some of the potential benefits and challenges associated with open source?

For some proponents of open source technology, the most important advantage of open source technology is that it is “free as in free speech”, and this means that software, updates, or other technology or support cannot be withheld by some company – åjust because it decides that you shouldn’t be using their software any more for whatever reason; they can’t just take their ball and go home.

With open-source software or hardware nobody can stop you from using it down the line, and there is at least some form of future access to the technology, even if it is obsolete, less popular or less well supported in the future.

Another key selling point often associated with open software or open hardware is that it is often, if not usually, free as in zero money. Sometimes developers or software vendors may provide an upgraded product, special features or special paid maintenance or support for an open source product – where these special features are commercialised on top of an underlying open-source platform, but generally the underlying open software or hardware technology is freely available for you to work with.

With modern Internet bandwidth, free software can easily be distributed in minutes via Internet download, without the cost of distributing or producing physical disk media. This makes it possible to get free software into the hands of users cheaply and conveniently, which is obviously good for the user, but also good for the software developer because new software can reach many users much faster, getting used in people’s hands sooner and with much greater potential uptake. This can be particularly attractive to small, independent developers.

Obviously in the case of Open Hardware this is a little different, since hardware still costs money to manufacture. However, Open Hardware generally means that design information such as schematics or CAD/CAM design files are freely downloadable for users to look at or potentially incorporate into modified versions or their own electronic designs.

This re-use of existing designs and technology, if you’re happy with the terms of the open-source licenses that may be used, can make design and prototyping faster, potentially getting your product to market (or a potential product or prototype ready for the investment or crowdfunding stage) that much faster.

In many cases, an open source software or hardware project is developed by one person who is often frequently directly accessible to users for direct advice or support. Many authors will provide helpful, patient support – often with a direct level of technical literacy that you’re often not likely to get from commercial “user support” staff reading from a script.

Even if you can’t talk directly to the developer, many open source software or hardware projects will have some kind of associated mailing list or web forum for community discussion, where other users or developers can help you out with advice and support.

Open source software and hardware allows you to get “under the hood” with the design details in a way that you can’t with proprietary technology. This means that you can inspect the engineering, fix problems, identify potential vulnerabilities, and extend or modify the engineering to suit the needs of your application. This is clearly in contrast to closed software or hardware where you are basically at the mercy of the commercial developers when it comes to future development suggestions, security advisories or bug fixes.

One argument in favour of open source technology is that it can be more secure – with many developers and users looking over the source code, security vulnerabilities become much more visible. Whereas closed source software depends to some extent on “security through obscurity”, open source software brings with it an expectation that having lots of users and developers looking through open-source code, maintaining, developing and tweaking it results in better, more secure software – where potential vulnerabilities are detected and corrected.

Applying this sort of “peer-review” to open source software means that the white-hat hackers are able to keep ahead of the black-hat hackers – or, at least, any unfair potential advantage that the black-hat hackers have is minimised.

Nevertheless, we must recognise that this applies a bit differently to hardware than it does to software. If a security vulnerability is discovered in a piece of software and it is openly discussed, a patch can rapidly be developed to correct it and deployed freely to everybody using that software, quickly and easily, thanks to the Internet.

However, if a security vulnerability is discovered in some hardware system which is used by tens of thousands of customers worldwide, what happens if it is not possible to deploy a software or firmware update to correct the problem?

If fixing the vulnerability requires actually buying new hardware to replace an otherwise mostly functional hardware device it is clear that customers may be reluctant to do this, and many systems may be left insecure. In such a situation, if a security vulnerability is discovered and discussed openly then this can easily have more negative effect on security than it does a positive effect, at least in the short term, or in small businesses or home environments where the hardware upgrade may be financially prohibitive.

Another potential advantage of open source technology is that it encourages commercial technology companies to try harder to make their own offerings more attractive, and it encourages innovation and competition – especially when the agility and speed of development by individual open source software or hardware developers, or small businesses, is taken into account.

Open source technology raises the bar, effectively, by saying to customers that this certain set of functionality is what you can get “free as in free beer” – and, to be honest, this is as far as it needs to go for “open source motivation” with some customers. This sends a message to commercial vendors that they may need to offer superior functionality, superior support or usability in order to remain competitive with open-source offerings.

LX2

Commercial developers can’t rest on their laurels, and are constantly motivated to innovate and improve their product. Otherwise, an open source product will come along that eats their lunch – as long as it is providing a comparable level of quality, usability and support.

On the other hand, smaller existing commercial hardware or software offerings may not be able to compete with a product that is available for free, and some may argue that open source competition can create a situation to anticompetitive “dumping” – dumping a whole bunch of product on the market at low or no cost in an effort to drive prices down, potentially forcing competitors out of business.

Thus when considering the use of open-source technologies for your next product design or iteration – there are many perspectives to take into account. Do you keep your product “open” and take advantage of the cost savings – but risk higher levels of competition? Or do you work with a closed or existing commercially-available ecosystem?

There’s much to consider, and if you’re not sure which way to turn – the first step is to discuss your needs with our team of experienced engineers that can help you in all steps of product design, from the idea to the finished product.

To get started, 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.

Muhammad AwaisThoughts on Open-source Product Development

When designing hardware to integrate with an Internet-of-Things solution, or an entire solution – it can be easy for the design team to focus on the software, server and control system due to the ease of prototyping and the availability of experienced people. It’s a common philosophy that once the software is “sorted out” – the hardware can be easily designed to work with the system. Thus it can be tempting for organisations who move towards IoT solutions to focus on the software more than the hardware as it may seem at the outset to be more complex and more difficult part of the system.

However hardware design cannot be overlooked or resources in that field minimised. There is much more to consider than just what “the hardware will do” – the consideration of which type of IoT system to work with needs to be executed – and in conjunction with that the choice of which hardware design path to take. 

After deciding on which IoT platform to design your hardware for, the choice of hardware design path is crucial to the success of your IoT implementation. Even if you’re developing for internal use, or offering hardware or turnkey systems to customers – the choice of hardware design can play a part in the long-term success or failure of the system.

When we say the “choice of hardware design” it is not the actual type of device (however that can also play a part in success or failure) or design tools used to create something – it is the choice between one of hardware design paths. That is, will you choose proprietary hardware interface designs from an existing supplier; create your own hardware and protect the intellectual property with copyright and possible patent protection; or open-source your design to some degree to allow input and contribution from internal and external customers? There are pros and cons to each method, so let’s examine them in some more detail.

Existing design – This is the easiest option for your design team, as the hardware interface to the required IoT system has been designed, tested and ready for integration into your hardware. To resell your own devices based on an external system can require licence or royalty payments to the system provider, however this will often be returned “in kind” with marketing support, referrals and leads from the system provider. However you’re at the mercy of the success or failure of the host system – which could leave you with outdated and useless hardware that can be at least difficulty to modify or at worst a total write-off.

Internal, protected design – With this option you have access to the required interface design from the IoT system provider that allows you to create your own hardware instead of buying or licensing technology from the provider. It gives you total control over the hardware design – including possible modularity between the IoT interface hardware and the product itself, in case of system failure (as mentioned previously). Furthermore you have complete control of the design, maintain all IP, and can market your designs as an exclusive product that’s compatible with the system. However all design, support and revisions will happen in-house.  

Open-source – After a few minutes searching on the Internet it may seem that almost everyone is open-sourcing their designs to allow all and sundry to review, modify, critique and sometimes re-manufacture their products. This method is preferable if you are offering paid access to the server-side infrastructure or you are happy to allow others to create devices that compete with your own hardware to quickly allow customer take-up of your IoT system. Furthermore you can build a community around users of your system, which can reduce the support load and generate good-will.  However taking this path in essence abandons revenue from hardware sales and any intellectual property your team have created. Finally, larger customers may see this product as insecure (even if it offers encrypted data transmission) due the openness of the designs.

Here at the LX Group we can discuss and understand your requirements and goals – then help you navigate the various hardware and other options available to help solve your problems. We can create or tailor just about anything from a wireless temperature sensor to a complete Internet-enabled system for you. For more information or a 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.

Muhammad AwaisLX Group discusses Hardware design directions for IoT integration

As the pace of product design and development always seems to be increasing due to market forces and technological innovation, the one factor that can often affect the speed is the budget available for research and design. More engineers are being tasked to achieve more with less, and although that may be possible with hardware, the financial cost of doing so may not be possible.

Due to these time, financial and other pressures there is one method that has become increasingly popular – the use of manufacturers’ development boards, open-source hobbyist platforms and similar products in the design stage. This is perfectly acceptable and often an inexpensive way to test unfamiliar microcontrollers in an inexpensive manner – some boards can be acquired for less than ten dollars, less than the cost of the MCU itself.

However in doing so, the design team can quite easily fall into a trap – and one that can be very difficult and expensive to extract the organisation out of. This is using the actual development board in the final, manufactured product design. However like many things in life, it may have “seemed like a great idea at the time” – but there are several potent reasons why this is a bad idea. Let’s run through them now.

Volume – can you get the required number of development boards for manufacturing? When a new microcontroller is released, it may be followed with a few thousand inexpensive boards – that can vanish from retail channels six months later, never to be seen again. If your product becomes popular you will need to redesign to allow for a new microcontroller board.

Reliability – it’s all very well to bolt in a development board and have the assembly team either insert interface wires or solder into the connectors, however this adds another layer of complexity and another area that will not be resistant to vibration, harshness or corrosion. Furthermore you will need to keep stock of replacement boards for servicing – for the lifetime of the product. And as mentioned earlier, boards may not be available over the long term. So you need to stock up in advance, which is a calculated gamble of your operating capital.

Intellectual Property – naturally you can incorporate a microcontroller into your design and own the IP over that design. However if you incorporate the manufacturers’ development board, the copyright over the total product design and thus your intellectual property rights can be weakened or removed by the terms and conditions of the development board use. Furthermore, by using the development board in final designs, it is easier for your competitors to analyse the design in terms of build cost and general design.

Is it Open Source? – some development boards are released under a variety of licenses such as Creative Commons or full Open Source hardware-software. By using these products you are then morally required to release your product built on this hardware using the same (or more open) licensing as the original development platform. In the hobby or kit market this may seem like a good idea, but not for commercial products. Releasing designs for your product just helps the competition.

Reputation – What would your customers think of your design if they realised it was based around a development board? It looks cheap, shoddy, and can often prompt people to think that “if it’s that easy, we could do it ourselves!” – even though you realise it is not. Furthermore this could create difficulty with the development board manufacturer and weaken the relationship – as the purpose of development boards is to allow inexpensive prototyping and encourage the purchase of their products at a commercial rate.

Thus there are many reasons not to cut corners and use these development boards in your design. However this will not solve the problem of getting your design to market on budget and on time. In situations where time and money is critical, it can be much easier to outsource any or all stages of hardware design to manufacturing to an experienced, trustworthy partner with agreements on final deadlines and expenses – such as here at the LX Group.

We have large engineering team with a wide variety of experience in all stages of design for various markets – including the domestic, commercial, industrial and military arenas. We can take your design ideas and product the required customised solution for your team, or even follow through to final completion, including documentation, standards compliance and revisions.

To move forward with your design requirements on time and on budget, simply contact us for a 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. https://lx-group.com.au

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

 

Muhammad AwaisPitfalls of Development Boards in your Final Product