IoT (Internet Of Things)
What to Choose ?
Now let's assume that you got the full unstanding of each of the IoT related technology individually and did a little bit of categorization, you may come up with some daisy chain like diagram as illustrated below.
What is at the center of all these technology ? it's CONFUSION !!! :)
What is confusing you would not be the technical details of each individual technology. What confuse you would about 'how one technology differs from other technologies ?' or 'which technology I have to chose for my application or use model ?'
The simple answer to the question "Which technology do I have to pick for my application or my use model ?" is "It depends on the nature of your application".
I know.. you would not take this as an answer. You would ask for more specific answers.
If you want to get more specific answers, you would have specific answers to a lot of specific questions as listed below. (This list would get extended as learn/observe more from various discussions/forums).
I would not put my comments on each of the questions for now.. just to give you some time for you to think.. (good excuse for my laziness :)).
Q1. What kind of information/data you want to collect with the end node device ?
This is basically asking about the data rate of the end node in your IoT system. Is it collecting a simple data like Temperature, Humidity which takes up only several bytes at a time of transmission. Normally this kind of IoT device should be very low cost. It is less likely to let this kind of device to use relatively expensive network (like cellular network).
Q2. What kind of end node device you will use ?
This is asking 'Are you going to use a simple sensors (like temperature, humidity) ?' or some other devices which requires a relatively large packet transmission/reception or which requires very high level data security.
Q3. What date rate does your end-node device need ?
This would be highly related to Q1. Usually the type of data to be collected and transmitted would determine the necessary data rate, but there might be some exceptions. For example, if you need very sophisticated data security and add a lot of additional portions to the original data to implement the security, the data rate that you would need would get much higher. Another exception can be the case where you want to upgrade/reconfigure your end-node remotely. Of course, this would not happen very often but if you really want to do this, the data rate should be pretty high for the end-node to download necessary firmware and configuration information.
Q4. Does your end node device will both transmit and receive data ? or only transmit the data (no recieve) ?
Most of the IoT application is Uplink centeric (transmission only in terms of end-device) and in some extreme case there are some application that is uplink only. It is understandable for most of IoT application to be Uplink dominant but there would be a lot of restriction if it goes with uplink only. For example, you have a very simple end-device (e.g, a temperature sensor) and transmitted it to a Gateway or Basestation. If the device is uplink only (transmission only), the device can only transmit the data and there is no way to verify whther it successfully reached the destination or not. To verify the successful transmission of the data, there should be some mechanism by which the destination (e.g, Gateway) can send Acknowledge message to the device that has sent the data. To do this, the system should allow downlink (i.e, reception in terms of end-device). Also, if you want to apply any form of data security or remote re-configuration or remote update, you need both uplink and downlink.
Q5. What frequecy you can use ?
Let me ask another question before this .. Are you going to use unlicensed band/frequency (i.e ISM band) or a licensed band / frequency (e.g, Cellular) ? If you decided to use ISM band, it is highly likely to use sub Ghz band (i.e, around 900 Mhz) or around 2.4 Ghz frequency. If you decided to use licensed band, it will be determined by which frequency will be allowed in the area where your IoT system will be installed.
If you selected unlicensed band, you are free to use any of the frequency .. but it is not only you who is free to use the frequency.. there might be a lot of other devices that uses the same frequency which might cause unwanted interference. If you decided to use the licensed frequency, there will be licensing / permission issue.
Q6. How far away a transmitter is from a reciever ?
If the transmitter and reciever is communicating within the range of couple of meters or tens of meters, you can use many of the existing short range communication like Bluetooth, ZigBee etc. However, if it should extend to several km or tens of km, you have to use those technologies that can cover wide range like LPWAN (e.g, LoRa, SigFox etc) or Cellular technology.
Q7. What kind of network your end-node devices will form ?
Q8. How much control you want to have over the whole network ?
Basically IoT requires a cirtain type of Network structure whether it is small or large (in most case it is not peer to peer communication). Then you would have question on how to form such a network and how much control you want to have over the whole network. Some people would say 'I want to implement only the end Node(e.g, terminal sensor module) and get it connected to an exisiting network that are already established'. In this case, you would consider Cellular based IoT or SigFox. In this option, you would have less work to do but very limitted or no controllability for network. Some people would say 'I want to implement everything from the end node to the network and I want to have full control over the network'. In this case, you may like LoRa type of technology. You would have full controllability, but downside is that there are a lot of works for you to do.
For example, SKT deployed a Nation wide IoT service in South Korea around the end of 2016 based on LoRa technology. According to Ref , they were considering LoRa, SigFox, NB-LTE(and other LTE based IoT). LTE IoT was excluded for other reason, but between LoRa and SigFox, the controllability to Network was one of the factor to select LoRa.
Q9. How many end node devices will be playing in the network ?
Q10. Do you need any security for the data being transmitted and received ? At which level, if you need ?
Q11. How do you change/upgrade the firmware/software of the end node/device ?
I personally think this is pretty important issue since there are many cases where it is not easy to change / upgrade the software of a IoT end node once it is installed or take too much cost to visit every installation points and change software of the device. However, I don't see this issues widely discussed in the industry yet (as of early 2017). Probably they are afraid to bring up the issues that does not have any simple / easy solution. In theory, the smartest solution is to let the end node device itself to download the new software and upgrade it by itself. We have seen this type of software upgrade in cellular phone (smart phone) pretty commonly these days. We may think of utilizing the similar technologies to IoT devices. However, the biggest problem would be the bandwidth. Most of IoT device is designed for low data rate communication, but this kind of wireless software upgrade would take pretty big bandwidth. So if you think of this kind of wireless software upgrade, you would need to choose such a technology to provide big enough bandwidth for wireless woftware upgrade.
Q12. What kind of protocol (phy, mac, application layer protocol) do you want to use ?
Q13. How much cost you can afford to ?
Q14. When to deply ? (Time to deploy)
There are many different technologies that claim to be the best for IoT. Some of them would already be available at your time of deployment, but some technologies would be being talked a lot but not available or not mature yet. So if your deployment schedule is very near, you would need to choose a technology that are mature right now.
For example, SKT deployed a Nation wide IoT service in South Korea around the end of 2016 based on LoRa technology. According to Ref , they were considering LoRa, SigFox, NB-LTE(and other LTE based IoT). SigFox were excluded for other reason, but between LoRa and SigFox, LoRa was selected mainly due to availability. LoRa technology was already there when they were planning, but there were still a couple of years to go for LTE based IoT to be mature enough.