WEBVTT

1
00:00:00.080 --> 00:00:03.799
<v Speaker 1>Imagine stepping into a world where you can track your

2
00:00:03.799 --> 00:00:07.559
<v Speaker 1>garden's health, maybe monitor movement inside your home, or even

3
00:00:07.599 --> 00:00:12.000
<v Speaker 1>build a clever, low cost security system, all with easily accessible,

4
00:00:12.279 --> 00:00:16.079
<v Speaker 1>pretty inexpensive hardware. Today we're delving into the fascinating world

5
00:00:16.239 --> 00:00:17.440
<v Speaker 1>of sensor networks.

6
00:00:17.480 --> 00:00:20.160
<v Speaker 2>That's right, And for years, you know, these powerful monitoring

7
00:00:20.199 --> 00:00:22.719
<v Speaker 2>systems were really just for big industries with these hefty

8
00:00:22.760 --> 00:00:25.199
<v Speaker 2>price tags. But our mission today is to show you

9
00:00:25.239 --> 00:00:28.719
<v Speaker 2>how that's fundamentally changed. Will guide you through the essential

10
00:00:28.760 --> 00:00:31.760
<v Speaker 2>bits and pieces and reveal how platforms like ore do

11
00:00:31.800 --> 00:00:35.520
<v Speaker 2>we Know and Raspberry Pie, combined with wireless modules and

12
00:00:35.560 --> 00:00:39.079
<v Speaker 2>smart data strategies, can empower you to build your own systems.

13
00:00:39.200 --> 00:00:41.759
<v Speaker 1>And all of our insights today they're drawn directly from

14
00:00:41.759 --> 00:00:45.719
<v Speaker 1>this excellent resource, beginning sensor networks with XP, Raspberry Pie

15
00:00:45.759 --> 00:00:48.479
<v Speaker 1>and our Dueno sensing. So let's dive right in the

16
00:00:48.560 --> 00:00:49.920
<v Speaker 1>core concepts right.

17
00:00:50.439 --> 00:00:53.479
<v Speaker 2>So, at its heart, a sensor network is well, it's

18
00:00:53.479 --> 00:00:56.000
<v Speaker 2>a system designed to collect data about the physical world.

19
00:00:56.359 --> 00:00:58.359
<v Speaker 2>And what's crucial to understand is that they're no longer

20
00:00:58.439 --> 00:01:00.960
<v Speaker 2>just these you know, expensive in dust real things. You

21
00:01:01.039 --> 00:01:05.640
<v Speaker 2>can absolutely build simple ones yourself with readily available, low

22
00:01:05.760 --> 00:01:07.159
<v Speaker 2>cost hardware.

23
00:01:07.239 --> 00:01:10.959
<v Speaker 1>That accessibility is. Yeah, it's revolutionary. Really, if you've ever

24
00:01:11.000 --> 00:01:14.519
<v Speaker 1>played around with an Arduino or Raspberry Pie, you'll find

25
00:01:14.560 --> 00:01:16.719
<v Speaker 1>the concepts we're discussing today kind of build right on

26
00:01:16.760 --> 00:01:20.400
<v Speaker 1>that foundation. Think about those practical uses we mentioned, keeping

27
00:01:20.439 --> 00:01:22.560
<v Speaker 1>tabs on your garden pod, seeing who's moving where in

28
00:01:22.560 --> 00:01:25.280
<v Speaker 1>your house, maybe setting up a budget security system. But

29
00:01:25.359 --> 00:01:28.519
<v Speaker 1>here's the thing. While the hardware is cheap, getting truly

30
00:01:28.680 --> 00:01:34.200
<v Speaker 1>reliable and secure data, that means understanding the architecture behind

31
00:01:34.239 --> 00:01:36.079
<v Speaker 1>it all, the topology exactly.

32
00:01:36.280 --> 00:01:39.760
<v Speaker 2>Every sensor network doesn't matter how complex. It starts with

33
00:01:39.799 --> 00:01:43.079
<v Speaker 2>simple sensors connected to a microcontroller or maybe a computer

34
00:01:43.439 --> 00:01:47.120
<v Speaker 2>with imp output capabilities. And within these networks you'll generally

35
00:01:47.120 --> 00:01:50.120
<v Speaker 2>find two main types of nodes. You've got your data

36
00:01:50.239 --> 00:01:52.799
<v Speaker 2>or sensor nodes. They collect the actual data and then

37
00:01:52.840 --> 00:01:56.719
<v Speaker 2>aggregator nodes, which gather that data from one or more

38
00:01:56.760 --> 00:01:57.599
<v Speaker 2>of the sensor nodes.

39
00:01:57.680 --> 00:02:00.359
<v Speaker 1>Okay, and the source we're looking at really emphasizes mixing

40
00:02:00.400 --> 00:02:03.959
<v Speaker 1>these two types. That it's smart because it adds resilience.

41
00:02:04.400 --> 00:02:07.280
<v Speaker 1>Can you elaborate on that? Why is that important for say,

42
00:02:07.439 --> 00:02:08.159
<v Speaker 1>data loss?

43
00:02:08.439 --> 00:02:11.360
<v Speaker 2>Absolutely? Think of it like this. If a single sensor

44
00:02:11.439 --> 00:02:13.919
<v Speaker 2>node fails, maybe it gets wet or the battery dies,

45
00:02:14.560 --> 00:02:16.800
<v Speaker 2>the aggregator still has the data from all the other

46
00:02:16.840 --> 00:02:19.199
<v Speaker 2>noes it's connected to. It makes sure that even if

47
00:02:19.240 --> 00:02:21.960
<v Speaker 2>one part of your system goes down, you don't lose

48
00:02:22.000 --> 00:02:25.080
<v Speaker 2>all your valuable information. And a central player in the

49
00:02:25.120 --> 00:02:27.000
<v Speaker 2>example projects we're digging into today is.

50
00:02:27.000 --> 00:02:30.479
<v Speaker 1>The XP module right xb What's really interesting about them

51
00:02:30.520 --> 00:02:35.240
<v Speaker 1>is they seem self contained, modular, and surprisingly affordable. These

52
00:02:35.400 --> 00:02:37.520
<v Speaker 1>RF right frequency.

53
00:02:37.280 --> 00:02:40.560
<v Speaker 2>Yep RF to exchange data between modules, and they're also

54
00:02:40.560 --> 00:02:45.000
<v Speaker 2>incredibly power efficient. They can even enter a periodic sleep

55
00:02:45.039 --> 00:02:48.199
<v Speaker 2>mode to conserve energy, which is great for battery powered sensors.

56
00:02:48.520 --> 00:02:50.479
<v Speaker 1>And this is the cool part. I think they can

57
00:02:50.560 --> 00:02:52.319
<v Speaker 1>connect directly to censor. That's the kicker.

58
00:02:52.439 --> 00:02:56.199
<v Speaker 2>Yes, imagine bypassing complex wiring, it doesn't just make things easier,

59
00:02:56.560 --> 00:02:59.439
<v Speaker 2>it drastically reduces the size and the cost of your

60
00:02:59.439 --> 00:03:03.319
<v Speaker 2>individual sensor notes. It makes truly distributed monitoring practical for

61
00:03:03.560 --> 00:03:07.000
<v Speaker 2>your home or garden. And just to note this deep dive,

62
00:03:07.080 --> 00:03:10.879
<v Speaker 2>we're specifically focusing on the XBZB series two and three modules.

63
00:03:10.960 --> 00:03:14.039
<v Speaker 1>Okay, so to understand the data, you need to understand

64
00:03:14.039 --> 00:03:16.680
<v Speaker 1>where it comes from the sensor itself. That little device

65
00:03:16.759 --> 00:03:20.159
<v Speaker 1>bridging the physical world and our digital data. How how

66
00:03:20.159 --> 00:03:21.120
<v Speaker 1>do they actually do that?

67
00:03:21.280 --> 00:03:25.639
<v Speaker 2>Well, most sensors work by converting some physical thing like temperature,

68
00:03:25.800 --> 00:03:29.639
<v Speaker 2>light motion into an electrical voltage. And our Dueno's analog

69
00:03:29.719 --> 00:03:33.039
<v Speaker 2>to digital converters, the ADCs, they're super handy here. They

70
00:03:33.080 --> 00:03:36.560
<v Speaker 2>translate that continuous voltage from the sensor into a precise

71
00:03:36.639 --> 00:03:39.919
<v Speaker 2>digital number. Specifically, it's a ten bit integer value, so

72
00:03:39.960 --> 00:03:42.560
<v Speaker 2>it ranges from zero up to tens twenty three.

73
00:03:42.919 --> 00:03:45.199
<v Speaker 1>And it's important to know the difference between analog and

74
00:03:45.240 --> 00:03:48.360
<v Speaker 1>digital sensors two. Right, analog gives you that very voltage

75
00:03:48.360 --> 00:03:51.759
<v Speaker 1>we just talked about, But digital sensors like the DHT

76
00:03:51.919 --> 00:03:54.719
<v Speaker 1>twenty two for humidity and temperature, they work differently.

77
00:03:54.879 --> 00:03:58.879
<v Speaker 2>Right, They produce a string of bits, essentially sending data

78
00:03:58.919 --> 00:04:01.639
<v Speaker 2>one bit at a time serially to the micro controller.

79
00:04:01.680 --> 00:04:03.080
<v Speaker 2>It's already digital.

80
00:04:02.759 --> 00:04:05.199
<v Speaker 1>Data, got it? And before we get deeper into the

81
00:04:05.240 --> 00:04:08.560
<v Speaker 1>hardware itself, a quick but really important question comes up.

82
00:04:08.800 --> 00:04:11.400
<v Speaker 1>Once your sensors collect all this information, where does it

83
00:04:11.439 --> 00:04:11.960
<v Speaker 1>actually go?

84
00:04:12.240 --> 00:04:15.000
<v Speaker 2>Yeah, that's crucial. How you store it really depends on

85
00:04:15.039 --> 00:04:17.879
<v Speaker 2>your goals. For simple logging, maybe just writing to an

86
00:04:17.920 --> 00:04:20.160
<v Speaker 2>SD card is enough. But if you want to access

87
00:04:20.160 --> 00:04:23.839
<v Speaker 2>it remotely, or analyze it or build complex apps, you'll

88
00:04:23.839 --> 00:04:26.360
<v Speaker 2>probably look towards web servers or even setting up a

89
00:04:26.360 --> 00:04:28.759
<v Speaker 2>proper database server like mysequl.

90
00:04:28.360 --> 00:04:32.199
<v Speaker 1>Okay foundations laid. Let's talk about the muscle behind these networks,

91
00:04:33.079 --> 00:04:37.360
<v Speaker 1>the hardware, our Dueno and Raspberry Pie. First up. The

92
00:04:37.519 --> 00:04:40.839
<v Speaker 1>r Dueno very approachable. Its origins are kind of cool,

93
00:04:40.879 --> 00:04:43.839
<v Speaker 1>designed to make hardware and software easy, right even for

94
00:04:43.920 --> 00:04:45.879
<v Speaker 1>non experts like artists or hobbyists.

95
00:04:46.120 --> 00:04:49.959
<v Speaker 2>Absolutely that accessibility is its real strength, and there are

96
00:04:50.079 --> 00:04:54.600
<v Speaker 2>tons of Arduino models out there, Uno, Leonardo, d Micromega,

97
00:04:54.720 --> 00:04:59.279
<v Speaker 2>Mini Nanopro. Each offers different numbers of iopens, different amounts

98
00:04:59.279 --> 00:04:59.759
<v Speaker 2>of memory.

99
00:05:00.319 --> 00:05:03.319
<v Speaker 1>So what does that mean for building sensor networks. Well,

100
00:05:03.319 --> 00:05:06.920
<v Speaker 1>the Ardueno's versatility gets a huge boost from shields. These

101
00:05:06.959 --> 00:05:09.480
<v Speaker 1>are add on boards like the Ethernet Shield two or

102
00:05:09.639 --> 00:05:13.199
<v Speaker 1>Wi Fi shield or microSD shield. They just snap right

103
00:05:13.240 --> 00:05:16.120
<v Speaker 1>on top, giving you extra functions like network connections or

104
00:05:16.160 --> 00:05:20.600
<v Speaker 1>storage without needing complex wiring diagrams and it's pins. The

105
00:05:20.680 --> 00:05:23.600
<v Speaker 1>digital and analog ones make it ideal for hosting sensors,

106
00:05:24.040 --> 00:05:26.720
<v Speaker 1>often multiple sensors at once, for say mini weather.

107
00:05:26.560 --> 00:05:29.839
<v Speaker 2>Station exactly, and for XB integration and Arduino with an

108
00:05:29.959 --> 00:05:33.439
<v Speaker 2>XP shield configured as what's called an XP coordinator, can

109
00:05:33.480 --> 00:05:36.240
<v Speaker 2>seamlessly act as the main receiver for data coming in

110
00:05:36.279 --> 00:05:39.000
<v Speaker 2>from other XB sensor nodes dotted around your network.

111
00:05:39.240 --> 00:05:42.560
<v Speaker 1>Okay, now, let's shift gears to the Raspberry Pie and

112
00:05:42.600 --> 00:05:45.959
<v Speaker 1>more versable. Maybe when you need more computing power, perhaps

113
00:05:45.959 --> 00:05:49.639
<v Speaker 1>converting data formats or feeding data into bigger applications, maybe

114
00:05:49.639 --> 00:05:52.759
<v Speaker 1>even printing hard copies. The Pie steps up. Its designers

115
00:05:52.759 --> 00:05:56.079
<v Speaker 1>were aiming to boost computer science education right, providing an

116
00:05:56.079 --> 00:05:57.920
<v Speaker 1>affordable platform for people to experiment.

117
00:05:58.079 --> 00:06:01.120
<v Speaker 2>Indeed, and they start around, so what thirty five dollars

118
00:06:01.120 --> 00:06:04.399
<v Speaker 2>for a basic board? The newer Raspberry Pi four B

119
00:06:04.920 --> 00:06:07.720
<v Speaker 2>that comes with up to eight gigs of memory, plus

120
00:06:07.720 --> 00:06:12.000
<v Speaker 2>features like USB, Wi Fi, Ethernet HDMI all built in

121
00:06:12.399 --> 00:06:15.199
<v Speaker 2>For most sensor projects we're talking about, the Raspberry Pi

122
00:06:15.279 --> 00:06:17.399
<v Speaker 2>three B plus or the four B are probably the

123
00:06:17.439 --> 00:06:18.680
<v Speaker 2>recommended choices.

124
00:06:18.439 --> 00:06:21.319
<v Speaker 1>And the GPIO header is key on the Pie. Those

125
00:06:21.360 --> 00:06:24.079
<v Speaker 1>general purpose input output pins. Think of them like programmabile

126
00:06:24.120 --> 00:06:26.839
<v Speaker 1>switches you can control or inputs you can read, connecting

127
00:06:26.879 --> 00:06:29.680
<v Speaker 1>the Pie directly to the physical world. And helper boards

128
00:06:29.720 --> 00:06:32.279
<v Speaker 1>like the PIET Coupler plus They just make connecting those

129
00:06:32.319 --> 00:06:33.920
<v Speaker 1>pins to a breadboard way easier.

130
00:06:34.160 --> 00:06:37.279
<v Speaker 2>Now, while the Raspberry Pie can connect sensors directly like

131
00:06:37.319 --> 00:06:39.639
<v Speaker 2>the d S eighteen B twenty a temperature sensor or

132
00:06:39.639 --> 00:06:42.199
<v Speaker 2>maybe a BMP two eighty using I two C, which

133
00:06:42.279 --> 00:06:45.800
<v Speaker 2>is a common communication standard, the Pie really shines as

134
00:06:45.839 --> 00:06:48.439
<v Speaker 2>an aggregator node. It's perfect for handling data coming from

135
00:06:48.600 --> 00:06:51.720
<v Speaker 2>XB nodes or Arduino hosted sensors. It can handle more

136
00:06:51.720 --> 00:06:56.120
<v Speaker 2>complex data processing. Just a quick note though, Python scripts

137
00:06:56.160 --> 00:06:59.439
<v Speaker 2>on the Pie often need root privileges like administrator writes.

138
00:06:59.680 --> 00:07:02.120
<v Speaker 2>For that direct hardware access and for.

139
00:07:02.079 --> 00:07:06.839
<v Speaker 1>Using XP with the Raspberry Pride, there's a specific Python module.

140
00:07:06.720 --> 00:07:09.759
<v Speaker 2>Yeah, the digxp Python module. It makes interacting with XP

141
00:07:09.879 --> 00:07:12.879
<v Speaker 2>modules much simpler. It lets the Pie discover remote nodes

142
00:07:13.040 --> 00:07:15.959
<v Speaker 2>just by their ID and receives sensor data using something

143
00:07:16.000 --> 00:07:18.360
<v Speaker 2>called callback methods. It's quite neat actually.

144
00:07:18.439 --> 00:07:20.600
<v Speaker 1>Okay, so you've got your sensors talk in your Rdueno

145
00:07:20.680 --> 00:07:23.759
<v Speaker 1>or Pie listening maybe using XP. Now the crucial next

146
00:07:23.800 --> 00:07:27.279
<v Speaker 1>step data storage. Where do you put all that valuable information?

147
00:07:27.519 --> 00:07:30.639
<v Speaker 1>Options range from local to the cloud to even your

148
00:07:30.680 --> 00:07:31.199
<v Speaker 1>own server.

149
00:07:31.560 --> 00:07:34.639
<v Speaker 2>Right for local storage on an Arduino, well, it doesn't

150
00:07:34.639 --> 00:07:36.600
<v Speaker 2>have much built in storage itself, but it can use

151
00:07:36.600 --> 00:07:40.160
<v Speaker 2>its e prom for tiny amounts of data. For anything

152
00:07:40.199 --> 00:07:42.879
<v Speaker 2>more substantial, you'd use one of those SDCRD shields we

153
00:07:42.959 --> 00:07:45.920
<v Speaker 2>mentioned add on boards that give it SD card capability

154
00:07:46.240 --> 00:07:49.199
<v Speaker 2>that lets your device capture potentially days or weeks of

155
00:07:49.279 --> 00:07:52.680
<v Speaker 2>data locally. And a really vital addition here for meaningful

156
00:07:52.720 --> 00:07:56.160
<v Speaker 2>data is an RTC, a real time clock module, so

157
00:07:56.160 --> 00:08:00.000
<v Speaker 2>you get accurate timestamps. This redundancy having a local backup

158
00:08:00.120 --> 00:08:03.800
<v Speaker 2>plus transmitting the data that builds real durability into your network, and.

159
00:08:03.759 --> 00:08:07.680
<v Speaker 1>The Raspberry Pie being a full computer makes local storage

160
00:08:07.720 --> 00:08:09.160
<v Speaker 1>easier much easier.

161
00:08:09.240 --> 00:08:13.040
<v Speaker 2>It naturally supports creating, reading, writing files. You can easily

162
00:08:13.040 --> 00:08:15.959
<v Speaker 2>connect and manage external USB hard drives for huge amounts

163
00:08:15.959 --> 00:08:18.800
<v Speaker 2>of local storage. You can even partition those drives using

164
00:08:18.839 --> 00:08:22.439
<v Speaker 2>command line tools like f disc, and for extra reliability,

165
00:08:22.680 --> 00:08:26.800
<v Speaker 2>configure them to mount automatically using UUIDs. These unique identifiers,

166
00:08:27.120 --> 00:08:29.360
<v Speaker 2>it ensures the Pie always finds the right drive even

167
00:08:29.399 --> 00:08:30.360
<v Speaker 2>if you unplug things.

168
00:08:30.480 --> 00:08:33.399
<v Speaker 1>Okay, local storage covered. What about sending data out maybe

169
00:08:33.399 --> 00:08:33.919
<v Speaker 1>to the cloud?

170
00:08:34.159 --> 00:08:37.639
<v Speaker 2>Yeah? The source explores things Speak. It's an IoT platform

171
00:08:37.639 --> 00:08:40.519
<v Speaker 2>from MathWorks. It's basically a cloud service where you create

172
00:08:40.639 --> 00:08:44.200
<v Speaker 2>channels for your data. Each channel gets a unique apikey

173
00:08:44.360 --> 00:08:47.600
<v Speaker 2>you use to send information up and both Arduino using

174
00:08:47.600 --> 00:08:50.360
<v Speaker 2>the Wi Fi wan one library and Raspberry Pie using

175
00:08:50.399 --> 00:08:53.399
<v Speaker 2>Pithelon libraries like HTDP, dot client and or lib can

176
00:08:53.399 --> 00:08:55.639
<v Speaker 2>be set up to push sensor data directly to your

177
00:08:55.679 --> 00:08:58.159
<v Speaker 2>things speak channels. It's a pretty straightforward way to get

178
00:08:58.200 --> 00:08:59.120
<v Speaker 2>your data online.

179
00:08:59.240 --> 00:09:01.159
<v Speaker 1>But for those who are want to own their data

180
00:09:01.440 --> 00:09:04.960
<v Speaker 1>maybe avoid subscription fees, here's where it gets really interesting.

181
00:09:05.000 --> 00:09:08.960
<v Speaker 1>Turning a Raspberry Pie into its own database server using

182
00:09:09.000 --> 00:09:10.200
<v Speaker 1>my sqel exactly.

183
00:09:10.440 --> 00:09:13.240
<v Speaker 2>This is the game changer for cost effective self managed

184
00:09:13.279 --> 00:09:16.080
<v Speaker 2>data storage. You can take a Raspberry Pie, especially a

185
00:09:16.120 --> 00:09:19.039
<v Speaker 2>PRI four B with decent memory, and turn it into

186
00:09:19.120 --> 00:09:24.120
<v Speaker 2>a full fledged relational database management system and URDBMS running mysequol.

187
00:09:23.759 --> 00:09:26.320
<v Speaker 1>In my squel itself. It's pretty robust. How does it

188
00:09:26.360 --> 00:09:27.919
<v Speaker 1>handle this kind of sensor data?

189
00:09:28.039 --> 00:09:31.440
<v Speaker 2>It's very efficient. It organizes readings into tables, lets you

190
00:09:31.519 --> 00:09:36.519
<v Speaker 2>query historical data quickly, build reports, and crucially for sensor networks,

191
00:09:36.600 --> 00:09:39.440
<v Speaker 2>you can configure my school to accept connections over the

192
00:09:39.480 --> 00:09:43.360
<v Speaker 2>network so your ARDWENOS or other pays can send data

193
00:09:43.440 --> 00:09:47.720
<v Speaker 2>directly to it. You create specific users, set permissions, restrict hosts,

194
00:09:48.039 --> 00:09:48.440
<v Speaker 2>keep it.

195
00:09:48.399 --> 00:09:52.960
<v Speaker 1>Secure and connecting this back to resilience. Mysequel supports replication

196
00:09:53.600 --> 00:09:54.480
<v Speaker 1>like having backups.

197
00:09:54.639 --> 00:09:57.600
<v Speaker 2>Yes, master slave replication. You can set up a primary

198
00:09:57.639 --> 00:10:01.240
<v Speaker 2>master database and it logs all changes and slave databases

199
00:10:01.279 --> 00:10:03.879
<v Speaker 2>automatically copy those changes, so if the master fails, a

200
00:10:03.960 --> 00:10:07.120
<v Speaker 2>slave can take over. It provides this powerful, low cost

201
00:10:07.159 --> 00:10:09.960
<v Speaker 2>way to collect and manage potentially huge amounts of censor

202
00:10:10.039 --> 00:10:12.679
<v Speaker 2>data without relying purely on cloud services.

203
00:10:12.759 --> 00:10:15.000
<v Speaker 1>Right. So these aggregator nodes we keep mentioning that really

204
00:10:15.000 --> 00:10:16.399
<v Speaker 1>are key for scaling things.

205
00:10:16.200 --> 00:10:19.480
<v Speaker 2>Up absolutely central. They extend your network range, especially with

206
00:10:19.559 --> 00:10:23.519
<v Speaker 2>mesh networking like ZIGBXB. They allow you to use less powerful,

207
00:10:23.639 --> 00:10:27.320
<v Speaker 2>cheaper remote sensor hosts, and they provide that durability through

208
00:10:27.399 --> 00:10:31.879
<v Speaker 2>data redundancy, maybe storing locally and sending remotely. And this

209
00:10:31.919 --> 00:10:35.519
<v Speaker 2>brings up an interesting design choice. Do you store the raw,

210
00:10:35.679 --> 00:10:38.799
<v Speaker 2>unprocessed data and do all the calculations centrally on the

211
00:10:38.840 --> 00:10:40.840
<v Speaker 2>aggregator And the answer.

212
00:10:40.559 --> 00:10:43.159
<v Speaker 1>Is yes you can, ok, which can simplify the sensor

213
00:10:43.200 --> 00:10:43.840
<v Speaker 1>nodes quite a.

214
00:10:43.759 --> 00:10:47.000
<v Speaker 2>Bit exactly keeps the complex processing code in one place,

215
00:10:47.080 --> 00:10:48.200
<v Speaker 2>makes updates easier.

216
00:10:48.279 --> 00:10:51.000
<v Speaker 1>Okay, let's talk about some concrete projects from the source

217
00:10:51.039 --> 00:10:54.159
<v Speaker 1>that tie all this together. First, and our Dueno as

218
00:10:54.200 --> 00:10:55.639
<v Speaker 1>a wireless aggregator YEA.

219
00:10:55.919 --> 00:10:59.000
<v Speaker 2>And our Dueno maybe with an Ethernet shield for network connection,

220
00:10:59.519 --> 00:11:03.240
<v Speaker 2>receives data from remote XB sensor nodes. It can store

221
00:11:03.279 --> 00:11:06.279
<v Speaker 2>some data locally, perhaps in its EPROM, maybe just the

222
00:11:06.360 --> 00:11:08.519
<v Speaker 2>last few bites of the sending XP's address and the

223
00:11:08.559 --> 00:11:11.639
<v Speaker 2>raw sensor value. And it can even host a tiny

224
00:11:11.679 --> 00:11:14.480
<v Speaker 2>web server to display the aggregated data right in your

225
00:11:14.519 --> 00:11:16.960
<v Speaker 2>web browser. Pretty neat for such a small board.

226
00:11:17.080 --> 00:11:19.440
<v Speaker 1>And then taking it up a notch, the are Dueno

227
00:11:19.480 --> 00:11:23.000
<v Speaker 1>aggregator sending data to a Raspberry Pie running mysequel.

228
00:11:22.759 --> 00:11:25.639
<v Speaker 2>Right, this is the next level. The Ardueno aggregator gets

229
00:11:25.679 --> 00:11:28.960
<v Speaker 2>the XP data, then uses a specific library, the Mycole

230
00:11:29.000 --> 00:11:32.240
<v Speaker 2>connector Ardueno library to push that data straight to the

231
00:11:32.240 --> 00:11:35.240
<v Speaker 2>Mycole database on the Pie. And the database itself is

232
00:11:35.240 --> 00:11:39.480
<v Speaker 2>designed smartly tables for say, temperature storing, not just the

233
00:11:39.559 --> 00:11:43.600
<v Speaker 2>raw reading but also the timestamp the sensor's address. Maybe

234
00:11:43.639 --> 00:11:46.960
<v Speaker 2>calculated values like fahrenheit and celsius are stored right there too.

235
00:11:47.200 --> 00:11:50.679
<v Speaker 1>Okay, we've seen these project examples, what part of these

236
00:11:50.840 --> 00:11:53.399
<v Speaker 1>real world applications really stands out to you.

237
00:11:53.639 --> 00:11:56.200
<v Speaker 2>For me, it's probably the database design aspect. They didn't

238
00:11:56.240 --> 00:11:59.679
<v Speaker 2>just dump raw numbers. They included fields that make sense immediately,

239
00:11:59.759 --> 00:12:04.200
<v Speaker 2>like precalculated temperatures that forethought, making the data useful right

240
00:12:04.200 --> 00:12:06.840
<v Speaker 2>from the start. That's key for building something you'll actually

241
00:12:06.919 --> 00:12:07.360
<v Speaker 2>use later.

242
00:12:07.720 --> 00:12:10.759
<v Speaker 1>Yeah, I agree, And for me it's the query. The

243
00:12:10.840 --> 00:12:14.480
<v Speaker 1>ability to use SQL use functions like group by y

244
00:12:14.559 --> 00:12:18.200
<v Speaker 1>and max inside subqueries to instantly pull up the very

245
00:12:18.279 --> 00:12:20.960
<v Speaker 1>latest reading from each sensor and maybe join that with

246
00:12:21.000 --> 00:12:23.639
<v Speaker 1>a lookup table to see living room sensor instead of

247
00:12:23.679 --> 00:12:26.679
<v Speaker 1>just a hex address. That's where the raw data suddenly

248
00:12:26.720 --> 00:12:30.759
<v Speaker 1>becomes real actionable intelligence. You have bought trends in your

249
00:12:30.799 --> 00:12:34.679
<v Speaker 1>garden pond temperature over months correlating with algae, all logged

250
00:12:34.679 --> 00:12:35.440
<v Speaker 1>by your Pie.

251
00:12:35.679 --> 00:12:38.559
<v Speaker 2>And finally, there's the Raspberry Pie itself acting as the

252
00:12:38.639 --> 00:12:43.159
<v Speaker 2>wireless aggregator. It mirrors the Arduino setups function, but uses

253
00:12:43.200 --> 00:12:46.360
<v Speaker 2>the Pie's Python power and that XP Python library to

254
00:12:46.399 --> 00:12:48.759
<v Speaker 2>grab the sensor samples and pop them directly into the

255
00:12:48.799 --> 00:12:52.399
<v Speaker 2>myceycle database. Offers more flexibility if you prefer Python or

256
00:12:52.480 --> 00:12:54.679
<v Speaker 2>need more processing, grunt right there on the aggregator.

257
00:12:54.720 --> 00:12:57.240
<v Speaker 1>Okay, fantastic stuff. Now, with all this knowledge, let's share

258
00:12:57.240 --> 00:12:59.639
<v Speaker 1>some wisdom from the trenches. Tips for anyone wanting to

259
00:12:59.679 --> 00:13:03.440
<v Speaker 1>start their own deep dive. First up, network design. Simple

260
00:13:03.480 --> 00:13:07.080
<v Speaker 1>things can matter, right, like antenna's even diy ones huh.

261
00:13:07.320 --> 00:13:10.559
<v Speaker 2>Yes. The source mentions creating a directional Wi Fi antenna

262
00:13:10.600 --> 00:13:14.200
<v Speaker 2>from a pringles can sometimes simple works also really important.

263
00:13:14.399 --> 00:13:16.639
<v Speaker 2>Make sure you to find what each sensor is measuring.

264
00:13:16.840 --> 00:13:19.679
<v Speaker 2>Document it, Otherwise you end up with columns of numbers

265
00:13:19.720 --> 00:13:23.919
<v Speaker 2>and no idea what they mean, unknown values and database

266
00:13:23.960 --> 00:13:28.519
<v Speaker 2>design fundamentals. Use primary keys, unique IDs for each row

267
00:13:28.679 --> 00:13:32.679
<v Speaker 2>makes data retrieval way faster and prevess duplicates. Consider auto

268
00:13:32.720 --> 00:13:35.799
<v Speaker 2>increment fields for those primary keys, makes inserting data easier,

269
00:13:36.120 --> 00:13:39.799
<v Speaker 2>and crucially add secondary indexes on columns you search or

270
00:13:39.799 --> 00:13:43.279
<v Speaker 2>filter by, often like the sensor's ID or timestamp. This

271
00:13:43.399 --> 00:13:46.639
<v Speaker 2>dramatically speeds up queries avoids slow table scans.

272
00:13:46.759 --> 00:13:49.600
<v Speaker 1>My absolute favorite tip from the source, maybe because I've

273
00:13:49.639 --> 00:13:51.879
<v Speaker 1>learned the hard way, is the engineering logbook. Just the

274
00:13:51.919 --> 00:13:56.240
<v Speaker 1>simple notebook. Write down ideas, experiments, problems, solutions, even little things.

275
00:13:56.480 --> 00:13:58.679
<v Speaker 1>It saves so much time trying to remember why something

276
00:13:58.679 --> 00:14:01.559
<v Speaker 1>didn't work last week or what that wan wiring configuration.

277
00:14:01.200 --> 00:14:06.000
<v Speaker 2>Was, Oh, absolutely, it sounds basic, but diligently documenting your

278
00:14:06.000 --> 00:14:08.919
<v Speaker 2>process it's probably the simplest tip that saves the most

279
00:14:08.960 --> 00:14:12.679
<v Speaker 2>frustration later on and for testing and deploying. Take it

280
00:14:12.759 --> 00:14:16.799
<v Speaker 2>step by step, gradual approach. Test individual parts first, get

281
00:14:16.799 --> 00:14:19.360
<v Speaker 2>the sensor talking to the arduino, then maybe a small

282
00:14:19.399 --> 00:14:22.919
<v Speaker 2>two node network, then the full system, and always monitor

283
00:14:22.919 --> 00:14:25.879
<v Speaker 2>your nodes during testing and write after deployment, catch weird

284
00:14:25.879 --> 00:14:27.639
<v Speaker 2>behavior or bad connections early.

285
00:14:27.840 --> 00:14:32.120
<v Speaker 1>Okay, Final big comparison choosing your host. Our Dueno versus

286
00:14:32.200 --> 00:14:35.399
<v Speaker 1>Raspberry Pie cost is one angle PI three b around

287
00:14:35.399 --> 00:14:39.480
<v Speaker 1>forty dollars. Are tweenos start cheaper maybe twenty five dollars roughly? Yeah?

288
00:14:39.600 --> 00:14:42.240
<v Speaker 2>And versatility wise, the Pie wins if you need complex

289
00:14:42.240 --> 00:14:44.679
<v Speaker 2>displays or want to easily attach say a big hard

290
00:14:44.759 --> 00:14:47.360
<v Speaker 2>drive for a local storage. But the Ardreno, with that

291
00:14:47.519 --> 00:14:50.720
<v Speaker 2>huge ecosystem of shields, it makes adding specific functions for

292
00:14:50.759 --> 00:14:53.759
<v Speaker 2>sensor networks incredibly easy. Often just plug and play for

293
00:14:53.840 --> 00:14:55.960
<v Speaker 2>things like Ethernet Wi Fi FD cards.

294
00:14:56.039 --> 00:14:57.559
<v Speaker 1>And it's not just those two anymore, is it? The

295
00:14:57.559 --> 00:15:00.240
<v Speaker 1>source mentions other options right, our.

296
00:15:00.200 --> 00:15:03.120
<v Speaker 2>Purpose built sensor nodes now boards like the Ada, Fruit,

297
00:15:03.120 --> 00:15:06.919
<v Speaker 2>Feather or Spark fun Thing series designed specifically for low

298
00:15:06.960 --> 00:15:10.320
<v Speaker 2>power IoT and even hybrid boards that try to combine

299
00:15:10.399 --> 00:15:14.759
<v Speaker 2>Raspberry Pie processing power with our Dueno like microcontroller capabilities

300
00:15:14.759 --> 00:15:17.799
<v Speaker 2>for really specialized needs. The landscape is definitely growing.

301
00:15:18.000 --> 00:15:21.600
<v Speaker 1>Wow. Okay, what a journey we've taken today. We've gone

302
00:15:21.720 --> 00:15:26.320
<v Speaker 1>from the basic definition of a sensor all the way

303
00:15:26.360 --> 00:15:31.240
<v Speaker 1>to building pretty sophisticated, low cost sensor networks capable of

304
00:15:31.279 --> 00:15:34.080
<v Speaker 1>monitoring the physical world, storing data locally, sending it to

305
00:15:34.159 --> 00:15:36.759
<v Speaker 1>the cloud, or even managing it on your own database

306
00:15:36.799 --> 00:15:37.919
<v Speaker 1>server right there on a pie.

307
00:15:38.120 --> 00:15:41.600
<v Speaker 2>Yeah, and you've seen how accessible and frankly powerful this

308
00:15:41.879 --> 00:15:44.679
<v Speaker 2>open source hardware like our Dueno and Raspberry Pie can be,

309
00:15:45.039 --> 00:15:47.399
<v Speaker 2>especially when you combine them with wireless like XB and

310
00:15:47.440 --> 00:15:50.960
<v Speaker 2>smart data strategies. For me, the real aha moments are

311
00:15:51.120 --> 00:15:54.159
<v Speaker 2>that surprising affordability, the ease of getting started, especially how

312
00:15:54.320 --> 00:15:58.519
<v Speaker 2>XB can simplify connecting sensors, and that sheer satisfaction when

313
00:15:58.559 --> 00:16:00.360
<v Speaker 2>you see your data flowing into a data base you

314
00:16:00.440 --> 00:16:01.480
<v Speaker 2>set up. That's pretty cool.

315
00:16:01.679 --> 00:16:04.000
<v Speaker 1>It really is, so now that you know how within

316
00:16:04.080 --> 00:16:07.399
<v Speaker 1>reach this technology actually is. Here's a thought to leave

317
00:16:07.440 --> 00:16:09.600
<v Speaker 1>you with, what's one burning question you have about the

318
00:16:09.600 --> 00:16:13.440
<v Speaker 1>physical world? Around you, your home, your garden, maybe your

319
00:16:13.480 --> 00:16:17.519
<v Speaker 1>local environment that you could now potentially measure and track

320
00:16:17.879 --> 00:16:21.480
<v Speaker 1>in what surprising insights might that data actually reveal. We

321
00:16:21.600 --> 00:16:23.480
<v Speaker 1>definitely encourage you to start your own deep dive.
