Embedded Software Colin Walls
Colin Walls has over thirty years experience in the electronics industry, largely dedicated to embedded software. A frequent presenter at conferences and seminars and author of numerous technical articles and two books on embedded software, Colin is an embedded software technologist with Mentor … More » Using an SMTP clientSeptember 18th, 2018 by Colin Walls
I always find it satisfying to see simple solutions to apparently complex problems and the world of embedded software certainly lends itself to some creativity. My concept of “simple” is quite broad, but essentially encompasses anything that is easy to understand [for me] and ideally avoids reinvention of any wheels. A while ago, I wrote about incorporating a Web server [HTTP server actually] into an embedded device so that information might be displayed on any connected Web browser. Along the same lines, I have been thinking about using email … When I talked about adding a Web server to an embedded device, I was not suggesting that the device in question actually hosted a publicly accessible website. The idea was to simply leverage Web technology. Web pages – HTML etc. – is easy enough to use to create a user interface; the HTTP protocol is straightforward to handle; Web server software is readily available for most real time operating systems. The result is a powerful and readily maintainable UI solution with minimal coding. We can apply the same philosophy to the use of email. I am not, of course, suggesting that a device have an email account so that it can keep in touch with its friends and relations. I am talking about the leveraging of technology. Imagine a device that needs to periodically send [and/or perhaps receive] modest amounts of data to a remote location and it is connected [at least some of the time] to the Internet. A possible example might be a WiFi enabled vital signs monitor worn at all times by a chronically ill patient; it might send a set of readings to the hospital periodically or when there is a significant change. Although there are a number of email protocols in use, Simple Mail Transfer Protocol [SMTP] is very common and widely understood, as it has been in use since the earliest days of the Internet. SMTP is normally only used for sending emails – the sender needs to have SMTP client software and the email server will have an SMTP server. Other email protocols in use include Post Office Protocol [POP3], which is complementary to SMTP and used to receive email, and the Internet Message Access Protocol [IMAP], which provides more sophisticated capabilities. SMTP is a simple, text-based protocol, which really only uses 3 types of message [MAIL, RCPT and DATA]. It is, therefore, easy to apply and monitor/debug. An SMTP client can be [and usually is] very light weight and readily available for many popular RTOSes. The simplicity is attractive because it minimizes development time. The small size is useful for many embedded devices where memory is at a premium but is also a benefit for applications [like medical devices] where certification is required – less code = cheaper certification. One Response to “Using an SMTP client” |
[…] Using an SMTP client […]