When considering the design of your WSN, there are several factors to take into account. Three of these are the connectivity that you will have at the location, the priority within the resource constraints that you have that you would like to focus on, and the proximity of the sensors to each other. These three factors will influence your design and how you will choose your hardware and software. More about this will be discussed in the next section.
Here is an example of a simple WSN setup:

Figure 5.2 – Simple WSN setup
Here, two sensor nodes are sending data to a base station radio, where a user can then retrieve the data from their laptop.
Architecting the hardware and software
Nodes within WSNs are often packed with a small microcontroller, a radio transceiver, storage space, and a power source, usually in the form of a battery. Depending on the operations that are performed by the node, the cost may vary from mere cents to hundreds of dollars. This is why understanding how to optimize based on your use case and understanding which sensor would do the best work at the lowest possible cost is imperative to being able to appropriately get one that would satisfy the requirements that you have. In this subsection, we will talk about how each of these components is usually chosen and the characteristics of what to consider as part of them when selecting them for your use case.
Transceiver
Sensor nodes usually need to use the industrial, scientific, and medical (ISM) frequency band, which is available for free and doesn’t require a license. Afterward, you must choose from the different types of wireless transmission media, which include radio frequency, optical fiber, and infrared. We won’t dive deep into each of these; to learn more, please read the article linked in the Further reading section at the end of this chapter.
Microcontroller
The microcontroller performs the tasks that are needed as part of the WSN’s operation. Such tasks involve processing data and taking care of the operations within the node. The bare minimum for a microcontroller is for it to have processor/CPU, I/O, and storage capabilities. There may also be substitutes such as general-purpose microprocessors, desktop computers, or laptops that are used as a replacement for it, but normally, these are not used due to their power consumption. As mentioned previously, we want to find the most optimal solution that can get the same tasks done with the least possible resources, so in this case, microcontrollers are always the preferred option.