Skip to Navigation
Home
  • Company
    • Quick Facts
    • Board of Directors
    • Management Team
    • Press Releases
    • News Coverage
    • Newsletter
    • Careers
    • Articles
    • Ember Chronology
    • Contact Us
  • Products
    • ZigBee Chips
    • ZigBee Software
    • ZigBee Development Tools
    • Documentation
  • Buy
    • Digi-Key (Online)
    • Distributors
  • Applications
    • AMI & AMR
    • Integrated Home Automation
    • Building Automation
    • Others
  • ZigBee
    • About ZigBee
    • Ember & ZigBee
    • ZigBee FAQ
    • Download Specifications
    • ZigBee Events
  • Partners
  • Support
    • Training
  • Events
Home › FAQs

Is it possible to run EZSP-UART on an embedded host with no operating system (OS)?

Categories:
  • Software : Embedded
  • EmberZNet PRO

While it’s possible to use EZSP-UART with an embedded MCU host, the drawbacks to this approach are as follows:

  • The supplied EZSP-UART host driver code (for the EZSP protocol itself and the ASH framework used to interface to the UART) assume an OS framework like UNIX/Linux or Windows/WinCE, where a termios library exists to abstract the physical access to the serial port. If these libraries aren’t present on your target host MCU, you’ll have to build them yourself to allow the ash-host-io.c module to compile and link successfully.
  • The required ASH framework (used for flow control and data data integrity over the UART comms) used with EZSP-UART makes the overall memory footprint larger (and somewhat more complicated) for an EZSP-UART host versus an EZSP-SPI host implementation.
  • EZSP-UART NCP firmware does not support deep sleep operation of the NCP, so it’s not really appropriate for battery-powered devices.
  • Since the EZSP-UART protocol is asynchronous, callback data will arrive immediately upon reception at the NCP, so your host code will need be able to deal with this asynchronous data flow. By contrast, EZSP-SPI is synchronous, so it’s often easier to manage in an embedded state machine (where other, high priority tasks may pre-empt being able to service the EZSP driver when callback data is pending); the host gets an interrupt from the NCP when callback data is pending, and then it polls the callbacks out of the callback queue via a special Callbacks command frame (which doesn’t apply in EZSP-UART).

However, if you are in a position to tackle these challenges, it is certainly possible to create an embedded EZSP-UART implementation without an OS framework (as a few customers have managed to do with some of the more sophisticated MCU architectures, such as the STM32 or ColdFire).

See Also: 
Getting started with EZSP-UART
What is the difference between EZSP UART and EZSP SPI on the EM260?
EZSP-UART Host Interfacing Guide
  • Login to post comments
  • Printer-friendly version

Search

FAQs

  • All (160)
  • Software : Embedded (62)
  • Software : Networking (70)
  • Hardware : Design (22)
  • Hardware : Manufacturing (10)
  • Tools : Dev Boards (2)
  • Tools : ISD/ISA (17)
  • Tools : xIDE (6)
  • Tools : Other (7)
  • ZigBee (1)
  • Change Notification (0)
Primary links
  • Developer Blog
  • Documentation
    • Release Notes
  • Contributed Software
  • FAQs
  • Change Notifications
  • Training
Portal
  • My Account
  • Search
User login
  • Request new password

Company | Products | Buy | Applications | ZigBee | Partners | Support | Events | Contact Us

©2007-2008 Ember Corporation | All rights reserved | Privacy