Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > comp.arch.embedded > #28417
| From | Dimiter_Popoff <dp@tgi-sci.com> |
|---|---|
| Newsgroups | comp.arch.embedded |
| Subject | Re: "Device-to-smartphone" and "smartphone-to-device" technologies |
| Date | 2018-12-10 12:04 +0200 |
| Organization | TGI |
| Message-ID | <puldo8$i64$1@dont-email.me> (permalink) |
| References | <puk654$21p$1@dont-email.me> |
On 10.12.2018 г. 00:49, pozz wrote: > Nowadays the poor embedded developer faces new challenges that go > outside the limited world of C/C++ program on a resource constrained > hardware. > Now the hardware isn't so resource constrained (Raspberry and many other > embedded Linux boards or SOM are just examples) on one side. And the > device isn't isolated anymore, it is usually connected (directly or > indirectly to Internet). > > The Thing/device connected to Internet (IoT) is now a reality on all > embedded hardware. With ESP chips you can have a WiFi connection for a > couple of dollars. With many Cortex M3 you can have a wired 10/100Mbps > Ethernet connection. lwip is the piece of software to have a working > TCP/IP stack on those hw. Now we are at the application high-level layer. > > Yesterday a typical request for an Internet-oriented device was HTTP > server (I designed such a system one year ago). > > Today the request is different. The end-user, at least in most consumer > applications, doesn't want to spend time for DDNS and port forwarding. > Moreover he wants to use his smartphone and not a typical desktop PC. > > So now we have typical appliances that can be managed by a smartphone. > You can configure the washing machine through your mobile phone and you > can be notified when the clothes are ready. > > This is a typical request for an embedded Internet-connected device. It > should communicated with a registered smartphone. > The main question of this post is: what are the technologies that allow > a device to communicated with a smartphone? > > I understood this problem can be divided in two completely different > challenges. The first is "device to smartphone" direction, with its > solutions. The second is "smartphone to device" direction, with other > solutions. > > Regarding device-to-smartphone, I think the best solution is "push > notifications". The push notification technology allows to reach > whatever mobile phone in every situation, even if our app isn't running > (I understood Android apps can be started automatically at startup, but > iOS apps can't be started automatically at startup... so a push > notification is the only solution). This technology allows to reduce > traffic so increasing battery duration. > > How to create a push notifications from an embedded device? I understood > we need to register (and pay for) a notification service, for example > Google Firebase Cloud Messaging (FCM). A notification can be sent with > an HTTPs request to a server, so we need an HTTP client and the full > TCP/IP plus TLS stack. > Of course we need a custom app running on the mobile phone: without a > custom app, the notification can't reach the smartphone. This is a big > issue, because apps and embedded fw are two completely different > monsters that need different technical skills. > > The smartphone-to-device direction is more critical, at least for me. > The app running on the smartphone can't reach directly our device, that > is usually behind a router and configured with a private IP address. The > key technlogy is the "cloud", a public server that accepts requests from > the smartphone and connections from devices on the field. The cloud > server is able to link the smartphone request to a connected device. > Here the high-level view block diagram is clear, but I can't go down to > the next level of details. > > Which protocol do use the smartphone during communcation with the > server? Maybe HTTP(s). > Which protocol do use the device during communication with the server? I > think we have many solutions: MQTT, HTTP(s) and so on. > What are the software to use in the server? I don't know. > > As a developer, I can think to rent a physical server (the > infrastructer) from service providers and: install an OS (maybe a Linux > variant), install a HTTP server (for smartphone requests), write and run > server-side scripts to process smartphone requests, install a custom > software that communicated with the embedded devices. > Wait wait, but I don't have the skills to create and maintain a serious, > reliable and secure server that is reachable in Internet. Does it mean > we need another guy in our team? > > Another possibility is to rent (and pay for) a cloud service that let > the smartphone to "chat" with the device. MQTT broker? PubNub? Amazon > Web Services (AWS)? I don't know. > > I also read about serverless solutions where you wrote the program and > "launch it in Internet", without knowing the server where it really runs > (you usually pay for processing time). In this case I needn't to have > good skills to create and maintain a real server. > > I'd like to know if you received those type of challenges in your daily > embedded work and how did you try to solve them. CPU power is abundant nowadays, so is connectivity. Just make your device look like say an RFB (aka VNC) server and use the smartphone/ tablet/PC simply as a terminal. We have been doing that for over a decade on our netMCA devices, long before the "IOT" word had been coined I think. ====================================================== Dimiter Popoff, TGI http://www.tgi-sci.com ====================================================== http://www.flickr.com/photos/didi_tgi/
Back to comp.arch.embedded | Previous | Next — Previous in thread | Next in thread | Find similar | Unroll thread
"Device-to-smartphone" and "smartphone-to-device" technologies pozz <pozzugno@gmail.com> - 2018-12-09 23:49 +0100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Dimiter_Popoff <dp@tgi-sci.com> - 2018-12-10 12:04 +0200
Re: "Device-to-smartphone" and "smartphone-to-device" technologies pozz <pozzugno@gmail.com> - 2018-12-10 11:33 +0100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Dimiter_Popoff <dp@tgi-sci.com> - 2018-12-10 14:09 +0200
Re: "Device-to-smartphone" and "smartphone-to-device" technologies pozz <pozzugno@gmail.com> - 2018-12-10 14:51 +0100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Dimiter_Popoff <dp@tgi-sci.com> - 2018-12-10 22:50 +0200
Re: "Device-to-smartphone" and "smartphone-to-device" technologies pozz <pozzugno@gmail.com> - 2018-12-11 14:27 +0100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Dimiter_Popoff <dp@tgi-sci.com> - 2018-12-11 16:50 +0200
Re: "Device-to-smartphone" and "smartphone-to-device" technologies pozz <pozzugno@gmail.com> - 2018-12-11 23:34 +0100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Dimiter_Popoff <dp@tgi-sci.com> - 2018-12-12 02:26 +0200
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Theo <theom+news@chiark.greenend.org.uk> - 2018-12-10 14:34 +0000
Re: "Device-to-smartphone" and "smartphone-to-device" technologies pozz <pozzugno@gmail.com> - 2018-12-10 23:05 +0100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Theo <theom+news@chiark.greenend.org.uk> - 2018-12-11 11:58 +0000
Re: "Device-to-smartphone" and "smartphone-to-device" technologies pozz <pozzugno@gmail.com> - 2018-12-11 14:36 +0100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies lasselangwadtchristensen@gmail.com - 2018-12-10 13:17 -0800
Re: "Device-to-smartphone" and "smartphone-to-device" technologies pozz <pozzugno@gmail.com> - 2018-12-10 23:05 +0100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Robert Wessel <robertwessel2@yahoo.com> - 2018-12-10 20:18 -0600
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Mikko OH2HVJ <mikko.syrjalahti@nospam.fi> - 2018-12-12 08:34 +0200
Re: "Device-to-smartphone" and "smartphone-to-device" technologies pozz <pozzugno@gmail.com> - 2018-12-13 13:51 +0100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Rob Gaddi <rgaddi@highlandtechnology.invalid> - 2018-12-13 10:09 -0800
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Grant Edwards <invalid@invalid.invalid> - 2018-12-13 18:59 +0000
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Rob Gaddi <rgaddi@highlandtechnology.invalid> - 2018-12-13 11:17 -0800
[OT] Gopher Stef <stef33d@yahooI-N-V-A-L-I-D.com.invalid> - 2018-12-13 21:00 +0100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Grant Edwards <invalid@invalid.invalid> - 2018-12-13 20:37 +0000
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Clifford Heath <no.spam@please.net> - 2018-12-14 08:12 +1100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Grant Edwards <invalid@invalid.invalid> - 2018-12-13 21:46 +0000
Re: "Device-to-smartphone" and "smartphone-to-device" technologies pozz <pozzugno@gmail.com> - 2018-12-14 09:17 +0100
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Grant Edwards <invalid@invalid.invalid> - 2018-12-14 15:18 +0000
Re: "Device-to-smartphone" and "smartphone-to-device" technologies Mikko OH2HVJ <mikko.syrjalahti@nospam.fi> - 2018-12-15 18:20 +0200
csiph-web