├── 3d print housing files ├── for v1.1 │ ├── base.STL │ └── top.STL ├── for v1.2 & 1.2a │ ├── base.STL │ └── top.STL └── for v2.0 │ ├── base.STL │ └── top.STL ├── Eagle&gerber files ├── v1.0 │ ├── mqtt doorbell v1.GBL │ ├── mqtt doorbell v1.GBO │ ├── mqtt doorbell v1.GBP │ ├── mqtt doorbell v1.GBS │ ├── mqtt doorbell v1.GML │ ├── mqtt doorbell v1.GTL │ ├── mqtt doorbell v1.GTO │ ├── mqtt doorbell v1.GTP │ ├── mqtt doorbell v1.GTS │ ├── mqtt doorbell v1.TXT │ ├── mqtt doorbell v1.brd │ ├── mqtt doorbell v1.dri │ ├── mqtt doorbell v1.gpi │ └── mqtt doorbell v1.sch ├── v1.1 │ ├── mqtt doorbell v1.1.GBL │ ├── mqtt doorbell v1.1.GBO │ ├── mqtt doorbell v1.1.GBP │ ├── mqtt doorbell v1.1.GBS │ ├── mqtt doorbell v1.1.GML │ ├── mqtt doorbell v1.1.GTL │ ├── mqtt doorbell v1.1.GTO │ ├── mqtt doorbell v1.1.GTP │ ├── mqtt doorbell v1.1.GTS │ ├── mqtt doorbell v1.1.TXT │ ├── mqtt doorbell v1.1.brd │ ├── mqtt doorbell v1.1.dri │ ├── mqtt doorbell v1.1.gpi │ └── mqtt doorbell v1.1.sch ├── v1.2 │ ├── mqtt doorbell v1.2.GBL │ ├── mqtt doorbell v1.2.GBO │ ├── mqtt doorbell v1.2.GBP │ ├── mqtt doorbell v1.2.GBS │ ├── mqtt doorbell v1.2.GML │ ├── mqtt doorbell v1.2.GTL │ ├── mqtt doorbell v1.2.GTO │ ├── mqtt doorbell v1.2.GTP │ ├── mqtt doorbell v1.2.GTS │ ├── mqtt doorbell v1.2.TXT │ ├── mqtt doorbell v1.2.brd │ ├── mqtt doorbell v1.2.dri │ ├── mqtt doorbell v1.2.gpi │ └── mqtt doorbell v1.2.sch └── v2.0 │ ├── mqtt doorbell v2a.GBL │ ├── mqtt doorbell v2a.GBO │ ├── mqtt doorbell v2a.GBP │ ├── mqtt doorbell v2a.GBS │ ├── mqtt doorbell v2a.GML │ ├── mqtt doorbell v2a.GTL │ ├── mqtt doorbell v2a.GTO │ ├── mqtt doorbell v2a.GTP │ ├── mqtt doorbell v2a.GTS │ ├── mqtt doorbell v2a.TXT │ ├── mqtt doorbell v2a.brd │ ├── mqtt doorbell v2a.dri │ ├── mqtt doorbell v2a.gpi │ └── mqtt doorbell v2a.sch ├── README.md ├── arduino sample code ├── For v1.0 & v1.1 │ ├── simple sample │ │ └── sample.ino │ └── wifi manager sample │ │ ├── index.H │ │ ├── src │ │ ├── LICENSE │ │ ├── README.md │ │ ├── WiFiManager.cpp │ │ ├── WiFiManager.h │ │ ├── keywords.txt │ │ ├── library.json │ │ └── library.properties │ │ └── wifimanagerDoorbell.ino ├── For v1.2 │ ├── simple sample │ │ └── sample.ino │ └── wifi manager sample │ │ ├── index.H │ │ ├── src │ │ ├── LICENSE │ │ ├── README.md │ │ ├── WiFiManager.cpp │ │ ├── WiFiManager.h │ │ ├── keywords.txt │ │ ├── library.json │ │ └── library.properties │ │ └── wifimanagerDoorbelv1.2.ino ├── For v1.2a │ ├── simple sample │ │ └── sample.ino │ └── wifi manager sample │ │ ├── index.H │ │ ├── src │ │ ├── LICENSE │ │ ├── README.md │ │ ├── WiFiManager.cpp │ │ ├── WiFiManager.h │ │ ├── keywords.txt │ │ ├── library.json │ │ └── library.properties │ │ └── wifimanagerDoorbelv1.2.ino └── For v2.0 │ ├── WifiManager sample │ ├── DoorbellModernizrv1OH.ino │ ├── index.H │ ├── logo.H │ └── src │ │ ├── LICENSE │ │ ├── README.md │ │ ├── WiFiManager.cpp │ │ ├── WiFiManager.h │ │ ├── keywords.txt │ │ ├── library.json │ │ └── library.properties │ └── simple sample │ └── sample.ino └── manual v1.0.pdf /3d print housing files/for v1.1/base.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eriknl1982/Doorbell_modernizr/464c9607ad0bc0ddf967ab130513d6de762a8144/3d print housing files/for v1.1/base.STL -------------------------------------------------------------------------------- /3d print housing files/for v1.1/top.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eriknl1982/Doorbell_modernizr/464c9607ad0bc0ddf967ab130513d6de762a8144/3d print housing files/for v1.1/top.STL -------------------------------------------------------------------------------- /3d print housing files/for v1.2 & 1.2a/base.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eriknl1982/Doorbell_modernizr/464c9607ad0bc0ddf967ab130513d6de762a8144/3d print housing files/for v1.2 & 1.2a/base.STL -------------------------------------------------------------------------------- /3d print housing files/for v1.2 & 1.2a/top.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eriknl1982/Doorbell_modernizr/464c9607ad0bc0ddf967ab130513d6de762a8144/3d print housing files/for v1.2 & 1.2a/top.STL -------------------------------------------------------------------------------- /3d print housing files/for v2.0/base.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eriknl1982/Doorbell_modernizr/464c9607ad0bc0ddf967ab130513d6de762a8144/3d print housing files/for v2.0/base.STL -------------------------------------------------------------------------------- /3d print housing files/for v2.0/top.STL: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eriknl1982/Doorbell_modernizr/464c9607ad0bc0ddf967ab130513d6de762a8144/3d print housing files/for v2.0/top.STL -------------------------------------------------------------------------------- /Eagle&gerber files/v1.0/mqtt doorbell v1.GBP: -------------------------------------------------------------------------------- 1 | G75* 2 | %MOIN*% 3 | %OFA0B0*% 4 | %FSLAX25Y25*% 5 | %IPPOS*% 6 | %LPD*% 7 | %AMOC8* 8 | 5,1,8,0,0,1.08239X$1,22.5* 9 | % 10 | %ADD10C,0.03200*% 11 | %ADD11C,0.01600*% 12 | D10* 13 | X0077178Y0017130D02* 14 | X0077178Y0023944D01* 15 | X0077178Y0030344D02* 16 | X0077178Y0037158D01* 17 | X0077178Y0043558D02* 18 | X0077178Y0050372D01* 19 | X0077178Y0056772D02* 20 | X0077178Y0063587D01* 21 | X0082199Y0068607D01* 22 | X0086724Y0073133D02* 23 | X0091745Y0078154D01* 24 | X0091745Y0088390D01* 25 | X0095288Y0091933D01* 26 | X0102439Y0091933D01* 27 | X0108839Y0091933D02* 28 | X0115990Y0091933D01* 29 | X0122390Y0091933D02* 30 | X0129540Y0091933D01* 31 | X0137020Y0084453D01* 32 | X0137020Y0076266D01* 33 | X0137020Y0069866D02* 34 | X0137020Y0061679D01* 35 | X0137020Y0055279D02* 36 | X0137020Y0047091D01* 37 | X0137020Y0040691D02* 38 | X0137020Y0032504D01* 39 | X0137020Y0026104D02* 40 | X0137020Y0017917D01* 41 | D11* 42 | X0138202Y0016736D02* 43 | X0010643Y0016736D01* 44 | X0010502Y0016738D01* 45 | X0010361Y0016744D01* 46 | X0010220Y0016753D01* 47 | X0010080Y0016767D01* 48 | X0009940Y0016785D01* 49 | X0009801Y0016806D01* 50 | X0009662Y0016831D01* 51 | X0009524Y0016860D01* 52 | X0009387Y0016893D01* 53 | X0009250Y0016929D01* 54 | X0009115Y0016969D01* 55 | X0008981Y0017013D01* 56 | X0008848Y0017061D01* 57 | X0008717Y0017112D01* 58 | X0008587Y0017167D01* 59 | X0008459Y0017226D01* 60 | X0008332Y0017287D01* 61 | X0008207Y0017353D01* 62 | X0008084Y0017422D01* 63 | X0007963Y0017494D01* 64 | X0007844Y0017569D01* 65 | X0007727Y0017648D01* 66 | X0007612Y0017730D01* 67 | X0007499Y0017815D01* 68 | X0007389Y0017903D01* 69 | X0007282Y0017994D01* 70 | X0007177Y0018089D01* 71 | X0007074Y0018186D01* 72 | X0006975Y0018285D01* 73 | X0006878Y0018388D01* 74 | X0006783Y0018493D01* 75 | X0006692Y0018600D01* 76 | X0006604Y0018710D01* 77 | X0006519Y0018823D01* 78 | X0006437Y0018938D01* 79 | X0006358Y0019055D01* 80 | X0006283Y0019174D01* 81 | X0006211Y0019295D01* 82 | X0006142Y0019418D01* 83 | X0006076Y0019543D01* 84 | X0006015Y0019670D01* 85 | X0005956Y0019798D01* 86 | X0005901Y0019928D01* 87 | X0005850Y0020059D01* 88 | X0005802Y0020192D01* 89 | X0005758Y0020326D01* 90 | X0005718Y0020461D01* 91 | X0005682Y0020598D01* 92 | X0005649Y0020735D01* 93 | X0005620Y0020873D01* 94 | X0005595Y0021012D01* 95 | X0005574Y0021151D01* 96 | X0005556Y0021291D01* 97 | X0005542Y0021431D01* 98 | X0005533Y0021572D01* 99 | X0005527Y0021713D01* 100 | X0005525Y0021854D01* 101 | X0005524Y0021854D02* 102 | X0005524Y0205713D01* 103 | X0005526Y0205865D01* 104 | X0005532Y0206017D01* 105 | X0005542Y0206169D01* 106 | X0005555Y0206320D01* 107 | X0005573Y0206471D01* 108 | X0005594Y0206622D01* 109 | X0005620Y0206772D01* 110 | X0005649Y0206921D01* 111 | X0005682Y0207070D01* 112 | X0005719Y0207217D01* 113 | X0005759Y0207364D01* 114 | X0005804Y0207509D01* 115 | X0005852Y0207653D01* 116 | X0005904Y0207796D01* 117 | X0005959Y0207938D01* 118 | X0006018Y0208078D01* 119 | X0006081Y0208217D01* 120 | X0006147Y0208354D01* 121 | X0006217Y0208489D01* 122 | X0006290Y0208622D01* 123 | X0006367Y0208753D01* 124 | X0006447Y0208883D01* 125 | X0006530Y0209010D01* 126 | X0006616Y0209135D01* 127 | X0006706Y0209258D01* 128 | X0006799Y0209378D01* 129 | X0006895Y0209496D01* 130 | X0006994Y0209612D01* 131 | X0007096Y0209725D01* 132 | X0007200Y0209835D01* 133 | X0007308Y0209943D01* 134 | X0007418Y0210047D01* 135 | X0007531Y0210149D01* 136 | X0007647Y0210248D01* 137 | X0007765Y0210344D01* 138 | X0007885Y0210437D01* 139 | X0008008Y0210527D01* 140 | X0008133Y0210613D01* 141 | X0008260Y0210696D01* 142 | X0008390Y0210776D01* 143 | X0008521Y0210853D01* 144 | X0008654Y0210926D01* 145 | X0008789Y0210996D01* 146 | X0008926Y0211062D01* 147 | X0009065Y0211125D01* 148 | X0009205Y0211184D01* 149 | X0009347Y0211239D01* 150 | X0009490Y0211291D01* 151 | X0009634Y0211339D01* 152 | X0009779Y0211384D01* 153 | X0009926Y0211424D01* 154 | X0010073Y0211461D01* 155 | X0010222Y0211494D01* 156 | X0010371Y0211523D01* 157 | X0010521Y0211549D01* 158 | X0010672Y0211570D01* 159 | X0010823Y0211588D01* 160 | X0010974Y0211601D01* 161 | X0011126Y0211611D01* 162 | X0011278Y0211617D01* 163 | X0011430Y0211619D01* 164 | X0011430Y0211618D02* 165 | X0051194Y0211618D01* 166 | X0051310Y0211616D01* 167 | X0051426Y0211610D01* 168 | X0051541Y0211601D01* 169 | X0051656Y0211588D01* 170 | X0051771Y0211571D01* 171 | X0051885Y0211550D01* 172 | X0051999Y0211525D01* 173 | X0052111Y0211497D01* 174 | X0052222Y0211465D01* 175 | X0052333Y0211430D01* 176 | X0052442Y0211391D01* 177 | X0052550Y0211348D01* 178 | X0052656Y0211302D01* 179 | X0052761Y0211253D01* 180 | X0052864Y0211200D01* 181 | X0052966Y0211143D01* 182 | X0053065Y0211084D01* 183 | X0053162Y0211021D01* 184 | X0053258Y0210955D01* 185 | X0053351Y0210886D01* 186 | X0053442Y0210814D01* 187 | X0053530Y0210739D01* 188 | X0053616Y0210661D01* 189 | X0053699Y0210580D01* 190 | X0053780Y0210497D01* 191 | X0053858Y0210411D01* 192 | X0053933Y0210323D01* 193 | X0054005Y0210232D01* 194 | X0054074Y0210139D01* 195 | X0054140Y0210043D01* 196 | X0054203Y0209946D01* 197 | X0054262Y0209847D01* 198 | X0054319Y0209745D01* 199 | X0054372Y0209642D01* 200 | X0054421Y0209537D01* 201 | X0054467Y0209431D01* 202 | X0054510Y0209323D01* 203 | X0054549Y0209214D01* 204 | X0054584Y0209103D01* 205 | X0054616Y0208992D01* 206 | X0054644Y0208880D01* 207 | X0054669Y0208766D01* 208 | X0054690Y0208652D01* 209 | X0054707Y0208537D01* 210 | X0054720Y0208422D01* 211 | X0054729Y0208307D01* 212 | X0054735Y0208191D01* 213 | X0054737Y0208075D01* 214 | X0054737Y0191146D01* 215 | X0054739Y0191051D01* 216 | X0054745Y0190956D01* 217 | X0054754Y0190861D01* 218 | X0054768Y0190767D01* 219 | X0054785Y0190674D01* 220 | X0054806Y0190581D01* 221 | X0054830Y0190489D01* 222 | X0054859Y0190398D01* 223 | X0054890Y0190308D01* 224 | X0054926Y0190220D01* 225 | X0054965Y0190133D01* 226 | X0055008Y0190048D01* 227 | X0055053Y0189965D01* 228 | X0055103Y0189884D01* 229 | X0055155Y0189804D01* 230 | X0055211Y0189727D01* 231 | X0055269Y0189652D01* 232 | X0055331Y0189580D01* 233 | X0055396Y0189510D01* 234 | X0055463Y0189443D01* 235 | X0055533Y0189378D01* 236 | X0055605Y0189316D01* 237 | X0055680Y0189258D01* 238 | X0055757Y0189202D01* 239 | X0055837Y0189150D01* 240 | X0055918Y0189100D01* 241 | X0056001Y0189055D01* 242 | X0056086Y0189012D01* 243 | X0056173Y0188973D01* 244 | X0056261Y0188937D01* 245 | X0056351Y0188906D01* 246 | X0056442Y0188877D01* 247 | X0056534Y0188853D01* 248 | X0056627Y0188832D01* 249 | X0056720Y0188815D01* 250 | X0056814Y0188801D01* 251 | X0056909Y0188792D01* 252 | X0057004Y0188786D01* 253 | X0057099Y0188784D01* 254 | X0057099Y0188783D02* 255 | X0101981Y0188783D01* 256 | X0101981Y0188784D02* 257 | X0102076Y0188786D01* 258 | X0102171Y0188792D01* 259 | X0102266Y0188801D01* 260 | X0102360Y0188815D01* 261 | X0102453Y0188832D01* 262 | X0102546Y0188853D01* 263 | X0102638Y0188877D01* 264 | X0102729Y0188906D01* 265 | X0102819Y0188937D01* 266 | X0102907Y0188973D01* 267 | X0102994Y0189012D01* 268 | X0103079Y0189055D01* 269 | X0103162Y0189100D01* 270 | X0103243Y0189150D01* 271 | X0103323Y0189202D01* 272 | X0103400Y0189258D01* 273 | X0103475Y0189316D01* 274 | X0103547Y0189378D01* 275 | X0103617Y0189443D01* 276 | X0103684Y0189510D01* 277 | X0103749Y0189580D01* 278 | X0103811Y0189652D01* 279 | X0103869Y0189727D01* 280 | X0103925Y0189804D01* 281 | X0103977Y0189884D01* 282 | X0104027Y0189965D01* 283 | X0104072Y0190048D01* 284 | X0104115Y0190133D01* 285 | X0104154Y0190220D01* 286 | X0104190Y0190308D01* 287 | X0104221Y0190398D01* 288 | X0104250Y0190489D01* 289 | X0104274Y0190581D01* 290 | X0104295Y0190674D01* 291 | X0104312Y0190767D01* 292 | X0104326Y0190861D01* 293 | X0104335Y0190956D01* 294 | X0104341Y0191051D01* 295 | X0104343Y0191146D01* 296 | X0104343Y0210043D01* 297 | X0104345Y0210129D01* 298 | X0104350Y0210215D01* 299 | X0104360Y0210300D01* 300 | X0104373Y0210385D01* 301 | X0104390Y0210469D01* 302 | X0104410Y0210553D01* 303 | X0104434Y0210635D01* 304 | X0104462Y0210716D01* 305 | X0104493Y0210797D01* 306 | X0104527Y0210875D01* 307 | X0104565Y0210952D01* 308 | X0104607Y0211028D01* 309 | X0104651Y0211101D01* 310 | X0104699Y0211172D01* 311 | X0104750Y0211242D01* 312 | X0104804Y0211309D01* 313 | X0104860Y0211373D01* 314 | X0104920Y0211435D01* 315 | X0104982Y0211495D01* 316 | X0105046Y0211551D01* 317 | X0105113Y0211605D01* 318 | X0105183Y0211656D01* 319 | X0105254Y0211704D01* 320 | X0105328Y0211748D01* 321 | X0105403Y0211790D01* 322 | X0105480Y0211828D01* 323 | X0105558Y0211862D01* 324 | X0105639Y0211893D01* 325 | X0105720Y0211921D01* 326 | X0105802Y0211945D01* 327 | X0105886Y0211965D01* 328 | X0105970Y0211982D01* 329 | X0106055Y0211995D01* 330 | X0106140Y0212005D01* 331 | X0106226Y0212010D01* 332 | X0106312Y0212012D01* 333 | X0140170Y0212012D01* 334 | X0140327Y0212010D01* 335 | X0140484Y0212004D01* 336 | X0140641Y0211994D01* 337 | X0140797Y0211981D01* 338 | X0140953Y0211963D01* 339 | X0141109Y0211942D01* 340 | X0141264Y0211916D01* 341 | X0141418Y0211887D01* 342 | X0141572Y0211854D01* 343 | X0141724Y0211817D01* 344 | X0141876Y0211777D01* 345 | X0142027Y0211732D01* 346 | X0142176Y0211684D01* 347 | X0142324Y0211632D01* 348 | X0142471Y0211577D01* 349 | X0142617Y0211517D01* 350 | X0142761Y0211455D01* 351 | X0142903Y0211388D01* 352 | X0143044Y0211318D01* 353 | X0143183Y0211245D01* 354 | X0143320Y0211168D01* 355 | X0143455Y0211088D01* 356 | X0143587Y0211004D01* 357 | X0143718Y0210917D01* 358 | X0143847Y0210827D01* 359 | X0143973Y0210734D01* 360 | X0144097Y0210638D01* 361 | X0144219Y0210538D01* 362 | X0144338Y0210436D01* 363 | X0144454Y0210330D01* 364 | X0144568Y0210222D01* 365 | X0144679Y0210111D01* 366 | X0144787Y0209997D01* 367 | X0144893Y0209881D01* 368 | X0144995Y0209762D01* 369 | X0145095Y0209640D01* 370 | X0145191Y0209516D01* 371 | X0145284Y0209390D01* 372 | X0145374Y0209261D01* 373 | X0145461Y0209130D01* 374 | X0145545Y0208998D01* 375 | X0145625Y0208863D01* 376 | X0145702Y0208726D01* 377 | X0145775Y0208587D01* 378 | X0145845Y0208446D01* 379 | X0145912Y0208304D01* 380 | X0145974Y0208160D01* 381 | X0146034Y0208014D01* 382 | X0146089Y0207867D01* 383 | X0146141Y0207719D01* 384 | X0146189Y0207570D01* 385 | X0146234Y0207419D01* 386 | X0146274Y0207267D01* 387 | X0146311Y0207115D01* 388 | X0146344Y0206961D01* 389 | X0146373Y0206807D01* 390 | X0146399Y0206652D01* 391 | X0146420Y0206496D01* 392 | X0146438Y0206340D01* 393 | X0146451Y0206184D01* 394 | X0146461Y0206027D01* 395 | X0146467Y0205870D01* 396 | X0146469Y0205713D01* 397 | X0146469Y0025004D01* 398 | X0146470Y0025004D02* 399 | X0146468Y0024804D01* 400 | X0146460Y0024605D01* 401 | X0146448Y0024405D01* 402 | X0146431Y0024206D01* 403 | X0146410Y0024007D01* 404 | X0146383Y0023809D01* 405 | X0146352Y0023612D01* 406 | X0146316Y0023415D01* 407 | X0146275Y0023220D01* 408 | X0146230Y0023025D01* 409 | X0146180Y0022832D01* 410 | X0146125Y0022640D01* 411 | X0146065Y0022449D01* 412 | X0146001Y0022260D01* 413 | X0145933Y0022072D01* 414 | X0145860Y0021886D01* 415 | X0145782Y0021702D01* 416 | X0145700Y0021520D01* 417 | X0145614Y0021340D01* 418 | X0145523Y0021162D01* 419 | X0145428Y0020986D01* 420 | X0145329Y0020812D01* 421 | X0145225Y0020641D01* 422 | X0145118Y0020473D01* 423 | X0145006Y0020307D01* 424 | X0144891Y0020144D01* 425 | X0144772Y0019984D01* 426 | X0144648Y0019827D01* 427 | X0144521Y0019672D01* 428 | X0144391Y0019521D01* 429 | X0144256Y0019373D01* 430 | X0144119Y0019229D01* 431 | X0143977Y0019087D01* 432 | X0143833Y0018950D01* 433 | X0143685Y0018815D01* 434 | X0143534Y0018685D01* 435 | X0143379Y0018558D01* 436 | X0143222Y0018434D01* 437 | X0143062Y0018315D01* 438 | X0142899Y0018200D01* 439 | X0142733Y0018088D01* 440 | X0142565Y0017981D01* 441 | X0142394Y0017877D01* 442 | X0142220Y0017778D01* 443 | X0142044Y0017683D01* 444 | X0141866Y0017592D01* 445 | X0141686Y0017506D01* 446 | X0141504Y0017424D01* 447 | X0141320Y0017346D01* 448 | X0141134Y0017273D01* 449 | X0140946Y0017205D01* 450 | X0140757Y0017141D01* 451 | X0140566Y0017081D01* 452 | X0140374Y0017026D01* 453 | X0140181Y0016976D01* 454 | X0139986Y0016931D01* 455 | X0139791Y0016890D01* 456 | X0139594Y0016854D01* 457 | X0139397Y0016823D01* 458 | X0139199Y0016796D01* 459 | X0139000Y0016775D01* 460 | X0138801Y0016758D01* 461 | X0138601Y0016746D01* 462 | X0138402Y0016738D01* 463 | X0138202Y0016736D01* 464 | M02* 465 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.0/mqtt doorbell v1.GBS: -------------------------------------------------------------------------------- 1 | G75* 2 | %MOIN*% 3 | %OFA0B0*% 4 | %FSLAX25Y25*% 5 | %IPPOS*% 6 | %LPD*% 7 | %AMOC8* 8 | 5,1,8,0,0,1.08239X$1,22.5* 9 | % 10 | %ADD10C,0.03200*% 11 | %ADD11C,0.01600*% 12 | %ADD12C,0.07200*% 13 | %ADD13C,0.06400*% 14 | %ADD14C,0.08674*% 15 | %ADD15C,0.07900*% 16 | %ADD16R,0.05162X0.05162*% 17 | D10* 18 | X0077178Y0017130D02* 19 | X0077178Y0023944D01* 20 | X0077178Y0030344D02* 21 | X0077178Y0037158D01* 22 | X0077178Y0043558D02* 23 | X0077178Y0050372D01* 24 | X0077178Y0056772D02* 25 | X0077178Y0063587D01* 26 | X0082199Y0068607D01* 27 | X0086724Y0073133D02* 28 | X0091745Y0078154D01* 29 | X0091745Y0088390D01* 30 | X0095288Y0091933D01* 31 | X0102439Y0091933D01* 32 | X0108839Y0091933D02* 33 | X0115990Y0091933D01* 34 | X0122390Y0091933D02* 35 | X0129540Y0091933D01* 36 | X0137020Y0084453D01* 37 | X0137020Y0076266D01* 38 | X0137020Y0069866D02* 39 | X0137020Y0061679D01* 40 | X0137020Y0055279D02* 41 | X0137020Y0047091D01* 42 | X0137020Y0040691D02* 43 | X0137020Y0032504D01* 44 | X0137020Y0026104D02* 45 | X0137020Y0017917D01* 46 | D11* 47 | X0138202Y0016736D02* 48 | X0010643Y0016736D01* 49 | X0010502Y0016738D01* 50 | X0010361Y0016744D01* 51 | X0010220Y0016753D01* 52 | X0010080Y0016767D01* 53 | X0009940Y0016785D01* 54 | X0009801Y0016806D01* 55 | X0009662Y0016831D01* 56 | X0009524Y0016860D01* 57 | X0009387Y0016893D01* 58 | X0009250Y0016929D01* 59 | X0009115Y0016969D01* 60 | X0008981Y0017013D01* 61 | X0008848Y0017061D01* 62 | X0008717Y0017112D01* 63 | X0008587Y0017167D01* 64 | X0008459Y0017226D01* 65 | X0008332Y0017287D01* 66 | X0008207Y0017353D01* 67 | X0008084Y0017422D01* 68 | X0007963Y0017494D01* 69 | X0007844Y0017569D01* 70 | X0007727Y0017648D01* 71 | X0007612Y0017730D01* 72 | X0007499Y0017815D01* 73 | X0007389Y0017903D01* 74 | X0007282Y0017994D01* 75 | X0007177Y0018089D01* 76 | X0007074Y0018186D01* 77 | X0006975Y0018285D01* 78 | X0006878Y0018388D01* 79 | X0006783Y0018493D01* 80 | X0006692Y0018600D01* 81 | X0006604Y0018710D01* 82 | X0006519Y0018823D01* 83 | X0006437Y0018938D01* 84 | X0006358Y0019055D01* 85 | X0006283Y0019174D01* 86 | X0006211Y0019295D01* 87 | X0006142Y0019418D01* 88 | X0006076Y0019543D01* 89 | X0006015Y0019670D01* 90 | X0005956Y0019798D01* 91 | X0005901Y0019928D01* 92 | X0005850Y0020059D01* 93 | X0005802Y0020192D01* 94 | X0005758Y0020326D01* 95 | X0005718Y0020461D01* 96 | X0005682Y0020598D01* 97 | X0005649Y0020735D01* 98 | X0005620Y0020873D01* 99 | X0005595Y0021012D01* 100 | X0005574Y0021151D01* 101 | X0005556Y0021291D01* 102 | X0005542Y0021431D01* 103 | X0005533Y0021572D01* 104 | X0005527Y0021713D01* 105 | X0005525Y0021854D01* 106 | X0005524Y0021854D02* 107 | X0005524Y0205713D01* 108 | X0005526Y0205865D01* 109 | X0005532Y0206017D01* 110 | X0005542Y0206169D01* 111 | X0005555Y0206320D01* 112 | X0005573Y0206471D01* 113 | X0005594Y0206622D01* 114 | X0005620Y0206772D01* 115 | X0005649Y0206921D01* 116 | X0005682Y0207070D01* 117 | X0005719Y0207217D01* 118 | X0005759Y0207364D01* 119 | X0005804Y0207509D01* 120 | X0005852Y0207653D01* 121 | X0005904Y0207796D01* 122 | X0005959Y0207938D01* 123 | X0006018Y0208078D01* 124 | X0006081Y0208217D01* 125 | X0006147Y0208354D01* 126 | X0006217Y0208489D01* 127 | X0006290Y0208622D01* 128 | X0006367Y0208753D01* 129 | X0006447Y0208883D01* 130 | X0006530Y0209010D01* 131 | X0006616Y0209135D01* 132 | X0006706Y0209258D01* 133 | X0006799Y0209378D01* 134 | X0006895Y0209496D01* 135 | X0006994Y0209612D01* 136 | X0007096Y0209725D01* 137 | X0007200Y0209835D01* 138 | X0007308Y0209943D01* 139 | X0007418Y0210047D01* 140 | X0007531Y0210149D01* 141 | X0007647Y0210248D01* 142 | X0007765Y0210344D01* 143 | X0007885Y0210437D01* 144 | X0008008Y0210527D01* 145 | X0008133Y0210613D01* 146 | X0008260Y0210696D01* 147 | X0008390Y0210776D01* 148 | X0008521Y0210853D01* 149 | X0008654Y0210926D01* 150 | X0008789Y0210996D01* 151 | X0008926Y0211062D01* 152 | X0009065Y0211125D01* 153 | X0009205Y0211184D01* 154 | X0009347Y0211239D01* 155 | X0009490Y0211291D01* 156 | X0009634Y0211339D01* 157 | X0009779Y0211384D01* 158 | X0009926Y0211424D01* 159 | X0010073Y0211461D01* 160 | X0010222Y0211494D01* 161 | X0010371Y0211523D01* 162 | X0010521Y0211549D01* 163 | X0010672Y0211570D01* 164 | X0010823Y0211588D01* 165 | X0010974Y0211601D01* 166 | X0011126Y0211611D01* 167 | X0011278Y0211617D01* 168 | X0011430Y0211619D01* 169 | X0011430Y0211618D02* 170 | X0051194Y0211618D01* 171 | X0051310Y0211616D01* 172 | X0051426Y0211610D01* 173 | X0051541Y0211601D01* 174 | X0051656Y0211588D01* 175 | X0051771Y0211571D01* 176 | X0051885Y0211550D01* 177 | X0051999Y0211525D01* 178 | X0052111Y0211497D01* 179 | X0052222Y0211465D01* 180 | X0052333Y0211430D01* 181 | X0052442Y0211391D01* 182 | X0052550Y0211348D01* 183 | X0052656Y0211302D01* 184 | X0052761Y0211253D01* 185 | X0052864Y0211200D01* 186 | X0052966Y0211143D01* 187 | X0053065Y0211084D01* 188 | X0053162Y0211021D01* 189 | X0053258Y0210955D01* 190 | X0053351Y0210886D01* 191 | X0053442Y0210814D01* 192 | X0053530Y0210739D01* 193 | X0053616Y0210661D01* 194 | X0053699Y0210580D01* 195 | X0053780Y0210497D01* 196 | X0053858Y0210411D01* 197 | X0053933Y0210323D01* 198 | X0054005Y0210232D01* 199 | X0054074Y0210139D01* 200 | X0054140Y0210043D01* 201 | X0054203Y0209946D01* 202 | X0054262Y0209847D01* 203 | X0054319Y0209745D01* 204 | X0054372Y0209642D01* 205 | X0054421Y0209537D01* 206 | X0054467Y0209431D01* 207 | X0054510Y0209323D01* 208 | X0054549Y0209214D01* 209 | X0054584Y0209103D01* 210 | X0054616Y0208992D01* 211 | X0054644Y0208880D01* 212 | X0054669Y0208766D01* 213 | X0054690Y0208652D01* 214 | X0054707Y0208537D01* 215 | X0054720Y0208422D01* 216 | X0054729Y0208307D01* 217 | X0054735Y0208191D01* 218 | X0054737Y0208075D01* 219 | X0054737Y0191146D01* 220 | X0054739Y0191051D01* 221 | X0054745Y0190956D01* 222 | X0054754Y0190861D01* 223 | X0054768Y0190767D01* 224 | X0054785Y0190674D01* 225 | X0054806Y0190581D01* 226 | X0054830Y0190489D01* 227 | X0054859Y0190398D01* 228 | X0054890Y0190308D01* 229 | X0054926Y0190220D01* 230 | X0054965Y0190133D01* 231 | X0055008Y0190048D01* 232 | X0055053Y0189965D01* 233 | X0055103Y0189884D01* 234 | X0055155Y0189804D01* 235 | X0055211Y0189727D01* 236 | X0055269Y0189652D01* 237 | X0055331Y0189580D01* 238 | X0055396Y0189510D01* 239 | X0055463Y0189443D01* 240 | X0055533Y0189378D01* 241 | X0055605Y0189316D01* 242 | X0055680Y0189258D01* 243 | X0055757Y0189202D01* 244 | X0055837Y0189150D01* 245 | X0055918Y0189100D01* 246 | X0056001Y0189055D01* 247 | X0056086Y0189012D01* 248 | X0056173Y0188973D01* 249 | X0056261Y0188937D01* 250 | X0056351Y0188906D01* 251 | X0056442Y0188877D01* 252 | X0056534Y0188853D01* 253 | X0056627Y0188832D01* 254 | X0056720Y0188815D01* 255 | X0056814Y0188801D01* 256 | X0056909Y0188792D01* 257 | X0057004Y0188786D01* 258 | X0057099Y0188784D01* 259 | X0057099Y0188783D02* 260 | X0101981Y0188783D01* 261 | X0101981Y0188784D02* 262 | X0102076Y0188786D01* 263 | X0102171Y0188792D01* 264 | X0102266Y0188801D01* 265 | X0102360Y0188815D01* 266 | X0102453Y0188832D01* 267 | X0102546Y0188853D01* 268 | X0102638Y0188877D01* 269 | X0102729Y0188906D01* 270 | X0102819Y0188937D01* 271 | X0102907Y0188973D01* 272 | X0102994Y0189012D01* 273 | X0103079Y0189055D01* 274 | X0103162Y0189100D01* 275 | X0103243Y0189150D01* 276 | X0103323Y0189202D01* 277 | X0103400Y0189258D01* 278 | X0103475Y0189316D01* 279 | X0103547Y0189378D01* 280 | X0103617Y0189443D01* 281 | X0103684Y0189510D01* 282 | X0103749Y0189580D01* 283 | X0103811Y0189652D01* 284 | X0103869Y0189727D01* 285 | X0103925Y0189804D01* 286 | X0103977Y0189884D01* 287 | X0104027Y0189965D01* 288 | X0104072Y0190048D01* 289 | X0104115Y0190133D01* 290 | X0104154Y0190220D01* 291 | X0104190Y0190308D01* 292 | X0104221Y0190398D01* 293 | X0104250Y0190489D01* 294 | X0104274Y0190581D01* 295 | X0104295Y0190674D01* 296 | X0104312Y0190767D01* 297 | X0104326Y0190861D01* 298 | X0104335Y0190956D01* 299 | X0104341Y0191051D01* 300 | X0104343Y0191146D01* 301 | X0104343Y0210043D01* 302 | X0104345Y0210129D01* 303 | X0104350Y0210215D01* 304 | X0104360Y0210300D01* 305 | X0104373Y0210385D01* 306 | X0104390Y0210469D01* 307 | X0104410Y0210553D01* 308 | X0104434Y0210635D01* 309 | X0104462Y0210716D01* 310 | X0104493Y0210797D01* 311 | X0104527Y0210875D01* 312 | X0104565Y0210952D01* 313 | X0104607Y0211028D01* 314 | X0104651Y0211101D01* 315 | X0104699Y0211172D01* 316 | X0104750Y0211242D01* 317 | X0104804Y0211309D01* 318 | X0104860Y0211373D01* 319 | X0104920Y0211435D01* 320 | X0104982Y0211495D01* 321 | X0105046Y0211551D01* 322 | X0105113Y0211605D01* 323 | X0105183Y0211656D01* 324 | X0105254Y0211704D01* 325 | X0105328Y0211748D01* 326 | X0105403Y0211790D01* 327 | X0105480Y0211828D01* 328 | X0105558Y0211862D01* 329 | X0105639Y0211893D01* 330 | X0105720Y0211921D01* 331 | X0105802Y0211945D01* 332 | X0105886Y0211965D01* 333 | X0105970Y0211982D01* 334 | X0106055Y0211995D01* 335 | X0106140Y0212005D01* 336 | X0106226Y0212010D01* 337 | X0106312Y0212012D01* 338 | X0140170Y0212012D01* 339 | X0140327Y0212010D01* 340 | X0140484Y0212004D01* 341 | X0140641Y0211994D01* 342 | X0140797Y0211981D01* 343 | X0140953Y0211963D01* 344 | X0141109Y0211942D01* 345 | X0141264Y0211916D01* 346 | X0141418Y0211887D01* 347 | X0141572Y0211854D01* 348 | X0141724Y0211817D01* 349 | X0141876Y0211777D01* 350 | X0142027Y0211732D01* 351 | X0142176Y0211684D01* 352 | X0142324Y0211632D01* 353 | X0142471Y0211577D01* 354 | X0142617Y0211517D01* 355 | X0142761Y0211455D01* 356 | X0142903Y0211388D01* 357 | X0143044Y0211318D01* 358 | X0143183Y0211245D01* 359 | X0143320Y0211168D01* 360 | X0143455Y0211088D01* 361 | X0143587Y0211004D01* 362 | X0143718Y0210917D01* 363 | X0143847Y0210827D01* 364 | X0143973Y0210734D01* 365 | X0144097Y0210638D01* 366 | X0144219Y0210538D01* 367 | X0144338Y0210436D01* 368 | X0144454Y0210330D01* 369 | X0144568Y0210222D01* 370 | X0144679Y0210111D01* 371 | X0144787Y0209997D01* 372 | X0144893Y0209881D01* 373 | X0144995Y0209762D01* 374 | X0145095Y0209640D01* 375 | X0145191Y0209516D01* 376 | X0145284Y0209390D01* 377 | X0145374Y0209261D01* 378 | X0145461Y0209130D01* 379 | X0145545Y0208998D01* 380 | X0145625Y0208863D01* 381 | X0145702Y0208726D01* 382 | X0145775Y0208587D01* 383 | X0145845Y0208446D01* 384 | X0145912Y0208304D01* 385 | X0145974Y0208160D01* 386 | X0146034Y0208014D01* 387 | X0146089Y0207867D01* 388 | X0146141Y0207719D01* 389 | X0146189Y0207570D01* 390 | X0146234Y0207419D01* 391 | X0146274Y0207267D01* 392 | X0146311Y0207115D01* 393 | X0146344Y0206961D01* 394 | X0146373Y0206807D01* 395 | X0146399Y0206652D01* 396 | X0146420Y0206496D01* 397 | X0146438Y0206340D01* 398 | X0146451Y0206184D01* 399 | X0146461Y0206027D01* 400 | X0146467Y0205870D01* 401 | X0146469Y0205713D01* 402 | X0146469Y0025004D01* 403 | X0146470Y0025004D02* 404 | X0146468Y0024804D01* 405 | X0146460Y0024605D01* 406 | X0146448Y0024405D01* 407 | X0146431Y0024206D01* 408 | X0146410Y0024007D01* 409 | X0146383Y0023809D01* 410 | X0146352Y0023612D01* 411 | X0146316Y0023415D01* 412 | X0146275Y0023220D01* 413 | X0146230Y0023025D01* 414 | X0146180Y0022832D01* 415 | X0146125Y0022640D01* 416 | X0146065Y0022449D01* 417 | X0146001Y0022260D01* 418 | X0145933Y0022072D01* 419 | X0145860Y0021886D01* 420 | X0145782Y0021702D01* 421 | X0145700Y0021520D01* 422 | X0145614Y0021340D01* 423 | X0145523Y0021162D01* 424 | X0145428Y0020986D01* 425 | X0145329Y0020812D01* 426 | X0145225Y0020641D01* 427 | X0145118Y0020473D01* 428 | X0145006Y0020307D01* 429 | X0144891Y0020144D01* 430 | X0144772Y0019984D01* 431 | X0144648Y0019827D01* 432 | X0144521Y0019672D01* 433 | X0144391Y0019521D01* 434 | X0144256Y0019373D01* 435 | X0144119Y0019229D01* 436 | X0143977Y0019087D01* 437 | X0143833Y0018950D01* 438 | X0143685Y0018815D01* 439 | X0143534Y0018685D01* 440 | X0143379Y0018558D01* 441 | X0143222Y0018434D01* 442 | X0143062Y0018315D01* 443 | X0142899Y0018200D01* 444 | X0142733Y0018088D01* 445 | X0142565Y0017981D01* 446 | X0142394Y0017877D01* 447 | X0142220Y0017778D01* 448 | X0142044Y0017683D01* 449 | X0141866Y0017592D01* 450 | X0141686Y0017506D01* 451 | X0141504Y0017424D01* 452 | X0141320Y0017346D01* 453 | X0141134Y0017273D01* 454 | X0140946Y0017205D01* 455 | X0140757Y0017141D01* 456 | X0140566Y0017081D01* 457 | X0140374Y0017026D01* 458 | X0140181Y0016976D01* 459 | X0139986Y0016931D01* 460 | X0139791Y0016890D01* 461 | X0139594Y0016854D01* 462 | X0139397Y0016823D01* 463 | X0139199Y0016796D01* 464 | X0139000Y0016775D01* 465 | X0138801Y0016758D01* 466 | X0138601Y0016746D01* 467 | X0138402Y0016738D01* 468 | X0138202Y0016736D01* 469 | D12* 470 | X0067892Y0029557D02* 471 | X0067892Y0035957D01* 472 | X0067892Y0055157D02* 473 | X0067892Y0061557D01* 474 | X0050092Y0061557D02* 475 | X0050092Y0055157D01* 476 | X0050092Y0035957D02* 477 | X0050092Y0029557D01* 478 | X0134546Y0152787D02* 479 | X0140946Y0152787D01* 480 | X0140946Y0162787D02* 481 | X0134546Y0162787D01* 482 | X0134546Y0172787D02* 483 | X0140946Y0172787D01* 484 | X0140946Y0182787D02* 485 | X0134546Y0182787D01* 486 | X0134546Y0192787D02* 487 | X0140946Y0192787D01* 488 | X0140946Y0202787D02* 489 | X0134546Y0202787D01* 490 | D13* 491 | X0118005Y0114108D02* 492 | X0118005Y0108508D01* 493 | X0108005Y0108508D02* 494 | X0108005Y0114108D01* 495 | X0108005Y0078508D02* 496 | X0108005Y0072908D01* 497 | X0118005Y0072908D02* 498 | X0118005Y0078508D01* 499 | X0024760Y0095730D02* 500 | X0024760Y0101330D01* 501 | X0024760Y0125730D02* 502 | X0024760Y0131330D01* 503 | D14* 504 | X0019094Y0059331D02* 505 | X0011220Y0059331D01* 506 | X0011220Y0034528D02* 507 | X0019094Y0034528D01* 508 | X0034843Y0043583D02* 509 | X0034843Y0051457D01* 510 | D15* 511 | X0103162Y0037333D02* 512 | X0103162Y0030233D01* 513 | X0122847Y0030233D02* 514 | X0122847Y0037333D01* 515 | D16* 516 | X0072060Y0104531D03* 517 | X0092532Y0137996D03* 518 | X0089383Y0152169D03* 519 | X0066548Y0168705D03* 520 | X0137414Y0135240D03* 521 | M02* 522 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.0/mqtt doorbell v1.GTP: -------------------------------------------------------------------------------- 1 | G75* 2 | %MOIN*% 3 | %OFA0B0*% 4 | %FSLAX25Y25*% 5 | %IPPOS*% 6 | %LPD*% 7 | %AMOC8* 8 | 5,1,8,0,0,1.08239X$1,22.5* 9 | % 10 | %ADD10C,0.03200*% 11 | %ADD11C,0.01600*% 12 | %ADD12R,0.05512X0.06299*% 13 | %ADD13R,0.07087X0.06299*% 14 | %ADD14R,0.11811X0.04724*% 15 | %ADD15R,0.11811X0.05512*% 16 | %ADD16R,0.02756X0.04331*% 17 | %ADD17R,0.07874X0.11024*% 18 | %ADD18R,0.02500X0.05000*% 19 | %ADD19R,0.05906X0.08268*% 20 | D10* 21 | X0077178Y0017130D02* 22 | X0077178Y0023944D01* 23 | X0077178Y0030344D02* 24 | X0077178Y0037158D01* 25 | X0077178Y0043558D02* 26 | X0077178Y0050372D01* 27 | X0077178Y0056772D02* 28 | X0077178Y0063587D01* 29 | X0082199Y0068607D01* 30 | X0086724Y0073133D02* 31 | X0091745Y0078154D01* 32 | X0091745Y0088390D01* 33 | X0095288Y0091933D01* 34 | X0102439Y0091933D01* 35 | X0108839Y0091933D02* 36 | X0115990Y0091933D01* 37 | X0122390Y0091933D02* 38 | X0129540Y0091933D01* 39 | X0137020Y0084453D01* 40 | X0137020Y0076266D01* 41 | X0137020Y0069866D02* 42 | X0137020Y0061679D01* 43 | X0137020Y0055279D02* 44 | X0137020Y0047091D01* 45 | X0137020Y0040691D02* 46 | X0137020Y0032504D01* 47 | X0137020Y0026104D02* 48 | X0137020Y0017917D01* 49 | D11* 50 | X0138202Y0016736D02* 51 | X0010643Y0016736D01* 52 | X0010502Y0016738D01* 53 | X0010361Y0016744D01* 54 | X0010220Y0016753D01* 55 | X0010080Y0016767D01* 56 | X0009940Y0016785D01* 57 | X0009801Y0016806D01* 58 | X0009662Y0016831D01* 59 | X0009524Y0016860D01* 60 | X0009387Y0016893D01* 61 | X0009250Y0016929D01* 62 | X0009115Y0016969D01* 63 | X0008981Y0017013D01* 64 | X0008848Y0017061D01* 65 | X0008717Y0017112D01* 66 | X0008587Y0017167D01* 67 | X0008459Y0017226D01* 68 | X0008332Y0017287D01* 69 | X0008207Y0017353D01* 70 | X0008084Y0017422D01* 71 | X0007963Y0017494D01* 72 | X0007844Y0017569D01* 73 | X0007727Y0017648D01* 74 | X0007612Y0017730D01* 75 | X0007499Y0017815D01* 76 | X0007389Y0017903D01* 77 | X0007282Y0017994D01* 78 | X0007177Y0018089D01* 79 | X0007074Y0018186D01* 80 | X0006975Y0018285D01* 81 | X0006878Y0018388D01* 82 | X0006783Y0018493D01* 83 | X0006692Y0018600D01* 84 | X0006604Y0018710D01* 85 | X0006519Y0018823D01* 86 | X0006437Y0018938D01* 87 | X0006358Y0019055D01* 88 | X0006283Y0019174D01* 89 | X0006211Y0019295D01* 90 | X0006142Y0019418D01* 91 | X0006076Y0019543D01* 92 | X0006015Y0019670D01* 93 | X0005956Y0019798D01* 94 | X0005901Y0019928D01* 95 | X0005850Y0020059D01* 96 | X0005802Y0020192D01* 97 | X0005758Y0020326D01* 98 | X0005718Y0020461D01* 99 | X0005682Y0020598D01* 100 | X0005649Y0020735D01* 101 | X0005620Y0020873D01* 102 | X0005595Y0021012D01* 103 | X0005574Y0021151D01* 104 | X0005556Y0021291D01* 105 | X0005542Y0021431D01* 106 | X0005533Y0021572D01* 107 | X0005527Y0021713D01* 108 | X0005525Y0021854D01* 109 | X0005524Y0021854D02* 110 | X0005524Y0205713D01* 111 | X0005526Y0205865D01* 112 | X0005532Y0206017D01* 113 | X0005542Y0206169D01* 114 | X0005555Y0206320D01* 115 | X0005573Y0206471D01* 116 | X0005594Y0206622D01* 117 | X0005620Y0206772D01* 118 | X0005649Y0206921D01* 119 | X0005682Y0207070D01* 120 | X0005719Y0207217D01* 121 | X0005759Y0207364D01* 122 | X0005804Y0207509D01* 123 | X0005852Y0207653D01* 124 | X0005904Y0207796D01* 125 | X0005959Y0207938D01* 126 | X0006018Y0208078D01* 127 | X0006081Y0208217D01* 128 | X0006147Y0208354D01* 129 | X0006217Y0208489D01* 130 | X0006290Y0208622D01* 131 | X0006367Y0208753D01* 132 | X0006447Y0208883D01* 133 | X0006530Y0209010D01* 134 | X0006616Y0209135D01* 135 | X0006706Y0209258D01* 136 | X0006799Y0209378D01* 137 | X0006895Y0209496D01* 138 | X0006994Y0209612D01* 139 | X0007096Y0209725D01* 140 | X0007200Y0209835D01* 141 | X0007308Y0209943D01* 142 | X0007418Y0210047D01* 143 | X0007531Y0210149D01* 144 | X0007647Y0210248D01* 145 | X0007765Y0210344D01* 146 | X0007885Y0210437D01* 147 | X0008008Y0210527D01* 148 | X0008133Y0210613D01* 149 | X0008260Y0210696D01* 150 | X0008390Y0210776D01* 151 | X0008521Y0210853D01* 152 | X0008654Y0210926D01* 153 | X0008789Y0210996D01* 154 | X0008926Y0211062D01* 155 | X0009065Y0211125D01* 156 | X0009205Y0211184D01* 157 | X0009347Y0211239D01* 158 | X0009490Y0211291D01* 159 | X0009634Y0211339D01* 160 | X0009779Y0211384D01* 161 | X0009926Y0211424D01* 162 | X0010073Y0211461D01* 163 | X0010222Y0211494D01* 164 | X0010371Y0211523D01* 165 | X0010521Y0211549D01* 166 | X0010672Y0211570D01* 167 | X0010823Y0211588D01* 168 | X0010974Y0211601D01* 169 | X0011126Y0211611D01* 170 | X0011278Y0211617D01* 171 | X0011430Y0211619D01* 172 | X0011430Y0211618D02* 173 | X0051194Y0211618D01* 174 | X0051310Y0211616D01* 175 | X0051426Y0211610D01* 176 | X0051541Y0211601D01* 177 | X0051656Y0211588D01* 178 | X0051771Y0211571D01* 179 | X0051885Y0211550D01* 180 | X0051999Y0211525D01* 181 | X0052111Y0211497D01* 182 | X0052222Y0211465D01* 183 | X0052333Y0211430D01* 184 | X0052442Y0211391D01* 185 | X0052550Y0211348D01* 186 | X0052656Y0211302D01* 187 | X0052761Y0211253D01* 188 | X0052864Y0211200D01* 189 | X0052966Y0211143D01* 190 | X0053065Y0211084D01* 191 | X0053162Y0211021D01* 192 | X0053258Y0210955D01* 193 | X0053351Y0210886D01* 194 | X0053442Y0210814D01* 195 | X0053530Y0210739D01* 196 | X0053616Y0210661D01* 197 | X0053699Y0210580D01* 198 | X0053780Y0210497D01* 199 | X0053858Y0210411D01* 200 | X0053933Y0210323D01* 201 | X0054005Y0210232D01* 202 | X0054074Y0210139D01* 203 | X0054140Y0210043D01* 204 | X0054203Y0209946D01* 205 | X0054262Y0209847D01* 206 | X0054319Y0209745D01* 207 | X0054372Y0209642D01* 208 | X0054421Y0209537D01* 209 | X0054467Y0209431D01* 210 | X0054510Y0209323D01* 211 | X0054549Y0209214D01* 212 | X0054584Y0209103D01* 213 | X0054616Y0208992D01* 214 | X0054644Y0208880D01* 215 | X0054669Y0208766D01* 216 | X0054690Y0208652D01* 217 | X0054707Y0208537D01* 218 | X0054720Y0208422D01* 219 | X0054729Y0208307D01* 220 | X0054735Y0208191D01* 221 | X0054737Y0208075D01* 222 | X0054737Y0191146D01* 223 | X0054739Y0191051D01* 224 | X0054745Y0190956D01* 225 | X0054754Y0190861D01* 226 | X0054768Y0190767D01* 227 | X0054785Y0190674D01* 228 | X0054806Y0190581D01* 229 | X0054830Y0190489D01* 230 | X0054859Y0190398D01* 231 | X0054890Y0190308D01* 232 | X0054926Y0190220D01* 233 | X0054965Y0190133D01* 234 | X0055008Y0190048D01* 235 | X0055053Y0189965D01* 236 | X0055103Y0189884D01* 237 | X0055155Y0189804D01* 238 | X0055211Y0189727D01* 239 | X0055269Y0189652D01* 240 | X0055331Y0189580D01* 241 | X0055396Y0189510D01* 242 | X0055463Y0189443D01* 243 | X0055533Y0189378D01* 244 | X0055605Y0189316D01* 245 | X0055680Y0189258D01* 246 | X0055757Y0189202D01* 247 | X0055837Y0189150D01* 248 | X0055918Y0189100D01* 249 | X0056001Y0189055D01* 250 | X0056086Y0189012D01* 251 | X0056173Y0188973D01* 252 | X0056261Y0188937D01* 253 | X0056351Y0188906D01* 254 | X0056442Y0188877D01* 255 | X0056534Y0188853D01* 256 | X0056627Y0188832D01* 257 | X0056720Y0188815D01* 258 | X0056814Y0188801D01* 259 | X0056909Y0188792D01* 260 | X0057004Y0188786D01* 261 | X0057099Y0188784D01* 262 | X0057099Y0188783D02* 263 | X0101981Y0188783D01* 264 | X0101981Y0188784D02* 265 | X0102076Y0188786D01* 266 | X0102171Y0188792D01* 267 | X0102266Y0188801D01* 268 | X0102360Y0188815D01* 269 | X0102453Y0188832D01* 270 | X0102546Y0188853D01* 271 | X0102638Y0188877D01* 272 | X0102729Y0188906D01* 273 | X0102819Y0188937D01* 274 | X0102907Y0188973D01* 275 | X0102994Y0189012D01* 276 | X0103079Y0189055D01* 277 | X0103162Y0189100D01* 278 | X0103243Y0189150D01* 279 | X0103323Y0189202D01* 280 | X0103400Y0189258D01* 281 | X0103475Y0189316D01* 282 | X0103547Y0189378D01* 283 | X0103617Y0189443D01* 284 | X0103684Y0189510D01* 285 | X0103749Y0189580D01* 286 | X0103811Y0189652D01* 287 | X0103869Y0189727D01* 288 | X0103925Y0189804D01* 289 | X0103977Y0189884D01* 290 | X0104027Y0189965D01* 291 | X0104072Y0190048D01* 292 | X0104115Y0190133D01* 293 | X0104154Y0190220D01* 294 | X0104190Y0190308D01* 295 | X0104221Y0190398D01* 296 | X0104250Y0190489D01* 297 | X0104274Y0190581D01* 298 | X0104295Y0190674D01* 299 | X0104312Y0190767D01* 300 | X0104326Y0190861D01* 301 | X0104335Y0190956D01* 302 | X0104341Y0191051D01* 303 | X0104343Y0191146D01* 304 | X0104343Y0210043D01* 305 | X0104345Y0210129D01* 306 | X0104350Y0210215D01* 307 | X0104360Y0210300D01* 308 | X0104373Y0210385D01* 309 | X0104390Y0210469D01* 310 | X0104410Y0210553D01* 311 | X0104434Y0210635D01* 312 | X0104462Y0210716D01* 313 | X0104493Y0210797D01* 314 | X0104527Y0210875D01* 315 | X0104565Y0210952D01* 316 | X0104607Y0211028D01* 317 | X0104651Y0211101D01* 318 | X0104699Y0211172D01* 319 | X0104750Y0211242D01* 320 | X0104804Y0211309D01* 321 | X0104860Y0211373D01* 322 | X0104920Y0211435D01* 323 | X0104982Y0211495D01* 324 | X0105046Y0211551D01* 325 | X0105113Y0211605D01* 326 | X0105183Y0211656D01* 327 | X0105254Y0211704D01* 328 | X0105328Y0211748D01* 329 | X0105403Y0211790D01* 330 | X0105480Y0211828D01* 331 | X0105558Y0211862D01* 332 | X0105639Y0211893D01* 333 | X0105720Y0211921D01* 334 | X0105802Y0211945D01* 335 | X0105886Y0211965D01* 336 | X0105970Y0211982D01* 337 | X0106055Y0211995D01* 338 | X0106140Y0212005D01* 339 | X0106226Y0212010D01* 340 | X0106312Y0212012D01* 341 | X0140170Y0212012D01* 342 | X0140327Y0212010D01* 343 | X0140484Y0212004D01* 344 | X0140641Y0211994D01* 345 | X0140797Y0211981D01* 346 | X0140953Y0211963D01* 347 | X0141109Y0211942D01* 348 | X0141264Y0211916D01* 349 | X0141418Y0211887D01* 350 | X0141572Y0211854D01* 351 | X0141724Y0211817D01* 352 | X0141876Y0211777D01* 353 | X0142027Y0211732D01* 354 | X0142176Y0211684D01* 355 | X0142324Y0211632D01* 356 | X0142471Y0211577D01* 357 | X0142617Y0211517D01* 358 | X0142761Y0211455D01* 359 | X0142903Y0211388D01* 360 | X0143044Y0211318D01* 361 | X0143183Y0211245D01* 362 | X0143320Y0211168D01* 363 | X0143455Y0211088D01* 364 | X0143587Y0211004D01* 365 | X0143718Y0210917D01* 366 | X0143847Y0210827D01* 367 | X0143973Y0210734D01* 368 | X0144097Y0210638D01* 369 | X0144219Y0210538D01* 370 | X0144338Y0210436D01* 371 | X0144454Y0210330D01* 372 | X0144568Y0210222D01* 373 | X0144679Y0210111D01* 374 | X0144787Y0209997D01* 375 | X0144893Y0209881D01* 376 | X0144995Y0209762D01* 377 | X0145095Y0209640D01* 378 | X0145191Y0209516D01* 379 | X0145284Y0209390D01* 380 | X0145374Y0209261D01* 381 | X0145461Y0209130D01* 382 | X0145545Y0208998D01* 383 | X0145625Y0208863D01* 384 | X0145702Y0208726D01* 385 | X0145775Y0208587D01* 386 | X0145845Y0208446D01* 387 | X0145912Y0208304D01* 388 | X0145974Y0208160D01* 389 | X0146034Y0208014D01* 390 | X0146089Y0207867D01* 391 | X0146141Y0207719D01* 392 | X0146189Y0207570D01* 393 | X0146234Y0207419D01* 394 | X0146274Y0207267D01* 395 | X0146311Y0207115D01* 396 | X0146344Y0206961D01* 397 | X0146373Y0206807D01* 398 | X0146399Y0206652D01* 399 | X0146420Y0206496D01* 400 | X0146438Y0206340D01* 401 | X0146451Y0206184D01* 402 | X0146461Y0206027D01* 403 | X0146467Y0205870D01* 404 | X0146469Y0205713D01* 405 | X0146469Y0025004D01* 406 | X0146470Y0025004D02* 407 | X0146468Y0024804D01* 408 | X0146460Y0024605D01* 409 | X0146448Y0024405D01* 410 | X0146431Y0024206D01* 411 | X0146410Y0024007D01* 412 | X0146383Y0023809D01* 413 | X0146352Y0023612D01* 414 | X0146316Y0023415D01* 415 | X0146275Y0023220D01* 416 | X0146230Y0023025D01* 417 | X0146180Y0022832D01* 418 | X0146125Y0022640D01* 419 | X0146065Y0022449D01* 420 | X0146001Y0022260D01* 421 | X0145933Y0022072D01* 422 | X0145860Y0021886D01* 423 | X0145782Y0021702D01* 424 | X0145700Y0021520D01* 425 | X0145614Y0021340D01* 426 | X0145523Y0021162D01* 427 | X0145428Y0020986D01* 428 | X0145329Y0020812D01* 429 | X0145225Y0020641D01* 430 | X0145118Y0020473D01* 431 | X0145006Y0020307D01* 432 | X0144891Y0020144D01* 433 | X0144772Y0019984D01* 434 | X0144648Y0019827D01* 435 | X0144521Y0019672D01* 436 | X0144391Y0019521D01* 437 | X0144256Y0019373D01* 438 | X0144119Y0019229D01* 439 | X0143977Y0019087D01* 440 | X0143833Y0018950D01* 441 | X0143685Y0018815D01* 442 | X0143534Y0018685D01* 443 | X0143379Y0018558D01* 444 | X0143222Y0018434D01* 445 | X0143062Y0018315D01* 446 | X0142899Y0018200D01* 447 | X0142733Y0018088D01* 448 | X0142565Y0017981D01* 449 | X0142394Y0017877D01* 450 | X0142220Y0017778D01* 451 | X0142044Y0017683D01* 452 | X0141866Y0017592D01* 453 | X0141686Y0017506D01* 454 | X0141504Y0017424D01* 455 | X0141320Y0017346D01* 456 | X0141134Y0017273D01* 457 | X0140946Y0017205D01* 458 | X0140757Y0017141D01* 459 | X0140566Y0017081D01* 460 | X0140374Y0017026D01* 461 | X0140181Y0016976D01* 462 | X0139986Y0016931D01* 463 | X0139791Y0016890D01* 464 | X0139594Y0016854D01* 465 | X0139397Y0016823D01* 466 | X0139199Y0016796D01* 467 | X0139000Y0016775D01* 468 | X0138801Y0016758D01* 469 | X0138601Y0016746D01* 470 | X0138402Y0016738D01* 471 | X0138202Y0016736D01* 472 | D12* 473 | X0068809Y0112697D03* 474 | X0057785Y0112697D03* 475 | D13* 476 | X0023422Y0143957D03* 477 | X0023422Y0154981D03* 478 | X0023816Y0169942D03* 479 | X0023816Y0180965D03* 480 | X0085052Y0056106D03* 481 | X0085052Y0045083D03* 482 | X0125759Y0117917D03* 483 | X0125759Y0128941D03* 484 | X0125206Y0138783D03* 485 | X0125206Y0149807D03* 486 | D14* 487 | X0110344Y0149469D03* 488 | X0110344Y0157343D03* 489 | X0110344Y0165217D03* 490 | X0110344Y0173091D03* 491 | X0110344Y0180965D03* 492 | X0110344Y0141594D03* 493 | X0110344Y0133720D03* 494 | X0110344Y0125846D03* 495 | X0045777Y0125846D03* 496 | X0045777Y0133720D03* 497 | X0045777Y0141594D03* 498 | X0045777Y0149469D03* 499 | X0045777Y0157343D03* 500 | X0045777Y0165217D03* 501 | X0045777Y0173091D03* 502 | X0045777Y0180965D03* 503 | D15* 504 | X0062217Y0088390D03* 505 | X0081115Y0088390D03* 506 | D16* 507 | X0031509Y0082031D03* 508 | X0019698Y0082031D03* 509 | D17* 510 | X0025603Y0071598D03* 511 | D18* 512 | X0025603Y0071461D03* 513 | X0025603Y0073429D03* 514 | X0025603Y0075791D03* 515 | X0025603Y0078941D03* 516 | X0025603Y0081697D03* 517 | X0025997Y0069098D03* 518 | D19* 519 | X0105524Y0062406D03* 520 | X0119698Y0062406D03* 521 | M02* 522 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.0/mqtt doorbell v1.TXT: -------------------------------------------------------------------------------- 1 | % 2 | M48 3 | M72 4 | T01C0.02362 5 | T02C0.03200 6 | T03C0.03937 7 | T04C0.04000 8 | T05C0.04700 9 | % 10 | T01 11 | X72060Y104531 12 | X137414Y135240 13 | X92532Y137996 14 | X89383Y152169 15 | X66548Y168705 16 | T02 17 | X24760Y98530 18 | X24760Y128530 19 | X108005Y78508 20 | X118005Y78508 21 | X118005Y108508 22 | X108005Y108508 23 | T03 24 | X15157Y34528 25 | X15157Y59331 26 | X34843Y47520 27 | T04 28 | X50092Y32757 29 | X67892Y32757 30 | X67892Y58357 31 | X50092Y58357 32 | X137746Y152787 33 | X137746Y162787 34 | X137746Y172787 35 | X137746Y182787 36 | X137746Y192787 37 | X137746Y202787 38 | T05 39 | X122847Y33783 40 | X103162Y33783 41 | M30 42 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.0/mqtt doorbell v1.dri: -------------------------------------------------------------------------------- 1 | Generated by EAGLE CAM Processor 7.6.0 2 | 3 | Drill Station Info File: C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell/mqtt doorbell v1.dri 4 | 5 | Date : 27-3-2018 20:04 6 | Drills : generated 7 | Device : Excellon drill station, coordinate format 2.5 inch 8 | 9 | Parameter settings: 10 | 11 | Tolerance Drill + : 0.00 % 12 | Tolerance Drill - : 0.00 % 13 | Rotate : no 14 | Mirror : no 15 | Optimize : yes 16 | Auto fit : yes 17 | OffsetX : 0inch 18 | OffsetY : 0inch 19 | Layers : Drills Holes 20 | 21 | Drill File Info: 22 | 23 | Data Mode : Absolute 24 | Units : 1/100000 Inch 25 | 26 | Drills used: 27 | 28 | Code Size used 29 | 30 | T01 0.0236inch 5 31 | T02 0.0320inch 6 32 | T03 0.0394inch 3 33 | T04 0.0400inch 10 34 | T05 0.0470inch 2 35 | 36 | Total number of drills: 26 37 | 38 | Plotfiles: 39 | 40 | C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell/mqtt doorbell v1.TXT 41 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.0/mqtt doorbell v1.gpi: -------------------------------------------------------------------------------- 1 | Generated by EAGLE CAM Processor 7.6.0 2 | 3 | Photoplotter Info File: C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell/mqtt doorbell v1.gpi 4 | 5 | Date : 27-3-2018 20:04 6 | Plotfile : C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell/mqtt doorbell v1.GTL 7 | Apertures : generated: 8 | Device : Gerber RS-274-X photoplotter, coordinate format 2.5 inch 9 | 10 | Parameter settings: 11 | 12 | Emulate Apertures : no 13 | Tolerance Draw + : 0.00 % 14 | Tolerance Draw - : 0.00 % 15 | Tolerance Flash + : 0.00 % 16 | Tolerance Flash - : 0.00 % 17 | Rotate : no 18 | Mirror : no 19 | Optimize : yes 20 | Auto fit : yes 21 | OffsetX : 0inch 22 | OffsetY : 0inch 23 | 24 | Plotfile Info: 25 | 26 | Coordinate Format : 2.5 27 | Coordinate Units : Inch 28 | Data Mode : Absolute 29 | Zero Suppression : None 30 | End Of Block : * 31 | 32 | Apertures used: 33 | 34 | Code Shape Size used 35 | 36 | D10 draw 0.0320inch 126 37 | D11 draw 0.0160inch 16 38 | D12 rectangle 0.0551inch x 0.0630inch 2 39 | D13 rectangle 0.0709inch x 0.0630inch 10 40 | D14 rectangle 0.1181inch x 0.0472inch 16 41 | D15 draw 0.0640inch 10 42 | D16 draw 0.0560inch 6 43 | D17 draw 0.0787inch 3 44 | D18 rectangle 0.1181inch x 0.0551inch 2 45 | D19 rectangle 0.0276inch x 0.0433inch 2 46 | D20 rectangle 0.0276inch x 0.0709inch 1 47 | D21 rectangle 0.0787inch x 0.1102inch 1 48 | D22 rectangle 0.0250inch x 0.0500inch 6 49 | D23 draw 0.0710inch 2 50 | D24 rectangle 0.0591inch x 0.0827inch 2 51 | D25 square 0.0436inch 5 52 | 53 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.1/mqtt doorbell v1.1.GBP: -------------------------------------------------------------------------------- 1 | G75* 2 | %MOIN*% 3 | %OFA0B0*% 4 | %FSLAX25Y25*% 5 | %IPPOS*% 6 | %LPD*% 7 | %AMOC8* 8 | 5,1,8,0,0,1.08239X$1,22.5* 9 | % 10 | %ADD10C,0.03200*% 11 | %ADD11C,0.01600*% 12 | D10* 13 | X0106935Y0044645D02* 14 | X0106935Y0051459D01* 15 | X0106935Y0057859D02* 16 | X0106935Y0064673D01* 17 | X0106935Y0071073D02* 18 | X0106935Y0077887D01* 19 | X0106935Y0084287D02* 20 | X0106935Y0091102D01* 21 | X0111956Y0096122D01* 22 | X0116482Y0100648D02* 23 | X0121502Y0105669D01* 24 | X0121502Y0115905D01* 25 | X0125046Y0119448D01* 26 | X0132196Y0119448D01* 27 | X0138596Y0119448D02* 28 | X0145747Y0119448D01* 29 | X0152147Y0119448D02* 30 | X0159298Y0119448D01* 31 | X0166778Y0111968D01* 32 | X0166778Y0103781D01* 33 | X0166778Y0097381D02* 34 | X0166778Y0089194D01* 35 | X0166778Y0082794D02* 36 | X0166778Y0074606D01* 37 | X0166778Y0068206D02* 38 | X0166778Y0060019D01* 39 | X0166778Y0053619D02* 40 | X0166778Y0045432D01* 41 | D11* 42 | X0035282Y0049369D02* 43 | X0035282Y0233228D01* 44 | X0035281Y0233228D02* 45 | X0035283Y0233380D01* 46 | X0035289Y0233532D01* 47 | X0035299Y0233684D01* 48 | X0035312Y0233835D01* 49 | X0035330Y0233986D01* 50 | X0035351Y0234137D01* 51 | X0035377Y0234287D01* 52 | X0035406Y0234436D01* 53 | X0035439Y0234585D01* 54 | X0035476Y0234732D01* 55 | X0035516Y0234879D01* 56 | X0035561Y0235024D01* 57 | X0035609Y0235168D01* 58 | X0035661Y0235311D01* 59 | X0035716Y0235453D01* 60 | X0035775Y0235593D01* 61 | X0035838Y0235732D01* 62 | X0035904Y0235869D01* 63 | X0035974Y0236004D01* 64 | X0036047Y0236137D01* 65 | X0036124Y0236268D01* 66 | X0036204Y0236398D01* 67 | X0036287Y0236525D01* 68 | X0036373Y0236650D01* 69 | X0036463Y0236773D01* 70 | X0036556Y0236893D01* 71 | X0036652Y0237011D01* 72 | X0036751Y0237127D01* 73 | X0036853Y0237240D01* 74 | X0036957Y0237350D01* 75 | X0037065Y0237458D01* 76 | X0037175Y0237562D01* 77 | X0037288Y0237664D01* 78 | X0037404Y0237763D01* 79 | X0037522Y0237859D01* 80 | X0037642Y0237952D01* 81 | X0037765Y0238042D01* 82 | X0037890Y0238128D01* 83 | X0038017Y0238211D01* 84 | X0038147Y0238291D01* 85 | X0038278Y0238368D01* 86 | X0038411Y0238441D01* 87 | X0038546Y0238511D01* 88 | X0038683Y0238577D01* 89 | X0038822Y0238640D01* 90 | X0038962Y0238699D01* 91 | X0039104Y0238754D01* 92 | X0039247Y0238806D01* 93 | X0039391Y0238854D01* 94 | X0039536Y0238899D01* 95 | X0039683Y0238939D01* 96 | X0039830Y0238976D01* 97 | X0039979Y0239009D01* 98 | X0040128Y0239038D01* 99 | X0040278Y0239064D01* 100 | X0040429Y0239085D01* 101 | X0040580Y0239103D01* 102 | X0040731Y0239116D01* 103 | X0040883Y0239126D01* 104 | X0041035Y0239132D01* 105 | X0041187Y0239134D01* 106 | X0041187Y0239133D02* 107 | X0080951Y0239133D01* 108 | X0081067Y0239131D01* 109 | X0081183Y0239125D01* 110 | X0081298Y0239116D01* 111 | X0081413Y0239103D01* 112 | X0081528Y0239086D01* 113 | X0081642Y0239065D01* 114 | X0081756Y0239040D01* 115 | X0081868Y0239012D01* 116 | X0081979Y0238980D01* 117 | X0082090Y0238945D01* 118 | X0082199Y0238906D01* 119 | X0082307Y0238863D01* 120 | X0082413Y0238817D01* 121 | X0082518Y0238768D01* 122 | X0082621Y0238715D01* 123 | X0082723Y0238658D01* 124 | X0082822Y0238599D01* 125 | X0082919Y0238536D01* 126 | X0083015Y0238470D01* 127 | X0083108Y0238401D01* 128 | X0083199Y0238329D01* 129 | X0083287Y0238254D01* 130 | X0083373Y0238176D01* 131 | X0083456Y0238095D01* 132 | X0083537Y0238012D01* 133 | X0083615Y0237926D01* 134 | X0083690Y0237838D01* 135 | X0083762Y0237747D01* 136 | X0083831Y0237654D01* 137 | X0083897Y0237558D01* 138 | X0083960Y0237461D01* 139 | X0084019Y0237362D01* 140 | X0084076Y0237260D01* 141 | X0084129Y0237157D01* 142 | X0084178Y0237052D01* 143 | X0084224Y0236946D01* 144 | X0084267Y0236838D01* 145 | X0084306Y0236729D01* 146 | X0084341Y0236618D01* 147 | X0084373Y0236507D01* 148 | X0084401Y0236395D01* 149 | X0084426Y0236281D01* 150 | X0084447Y0236167D01* 151 | X0084464Y0236052D01* 152 | X0084477Y0235937D01* 153 | X0084486Y0235822D01* 154 | X0084492Y0235706D01* 155 | X0084494Y0235590D01* 156 | X0084494Y0218661D01* 157 | X0084495Y0218661D02* 158 | X0084497Y0218566D01* 159 | X0084503Y0218471D01* 160 | X0084512Y0218376D01* 161 | X0084526Y0218282D01* 162 | X0084543Y0218189D01* 163 | X0084564Y0218096D01* 164 | X0084588Y0218004D01* 165 | X0084617Y0217913D01* 166 | X0084648Y0217823D01* 167 | X0084684Y0217735D01* 168 | X0084723Y0217648D01* 169 | X0084766Y0217563D01* 170 | X0084811Y0217480D01* 171 | X0084861Y0217399D01* 172 | X0084913Y0217319D01* 173 | X0084969Y0217242D01* 174 | X0085027Y0217167D01* 175 | X0085089Y0217095D01* 176 | X0085154Y0217025D01* 177 | X0085221Y0216958D01* 178 | X0085291Y0216893D01* 179 | X0085363Y0216831D01* 180 | X0085438Y0216773D01* 181 | X0085515Y0216717D01* 182 | X0085595Y0216665D01* 183 | X0085676Y0216615D01* 184 | X0085759Y0216570D01* 185 | X0085844Y0216527D01* 186 | X0085931Y0216488D01* 187 | X0086019Y0216452D01* 188 | X0086109Y0216421D01* 189 | X0086200Y0216392D01* 190 | X0086292Y0216368D01* 191 | X0086385Y0216347D01* 192 | X0086478Y0216330D01* 193 | X0086572Y0216316D01* 194 | X0086667Y0216307D01* 195 | X0086762Y0216301D01* 196 | X0086857Y0216299D01* 197 | X0086857Y0216298D02* 198 | X0131739Y0216298D01* 199 | X0131739Y0216299D02* 200 | X0131834Y0216301D01* 201 | X0131929Y0216307D01* 202 | X0132024Y0216316D01* 203 | X0132118Y0216330D01* 204 | X0132211Y0216347D01* 205 | X0132304Y0216368D01* 206 | X0132396Y0216392D01* 207 | X0132487Y0216421D01* 208 | X0132577Y0216452D01* 209 | X0132665Y0216488D01* 210 | X0132752Y0216527D01* 211 | X0132837Y0216570D01* 212 | X0132920Y0216615D01* 213 | X0133001Y0216665D01* 214 | X0133081Y0216717D01* 215 | X0133158Y0216773D01* 216 | X0133233Y0216831D01* 217 | X0133305Y0216893D01* 218 | X0133375Y0216958D01* 219 | X0133442Y0217025D01* 220 | X0133507Y0217095D01* 221 | X0133569Y0217167D01* 222 | X0133627Y0217242D01* 223 | X0133683Y0217319D01* 224 | X0133735Y0217399D01* 225 | X0133785Y0217480D01* 226 | X0133830Y0217563D01* 227 | X0133873Y0217648D01* 228 | X0133912Y0217735D01* 229 | X0133948Y0217823D01* 230 | X0133979Y0217913D01* 231 | X0134008Y0218004D01* 232 | X0134032Y0218096D01* 233 | X0134053Y0218189D01* 234 | X0134070Y0218282D01* 235 | X0134084Y0218376D01* 236 | X0134093Y0218471D01* 237 | X0134099Y0218566D01* 238 | X0134101Y0218661D01* 239 | X0134101Y0237558D01* 240 | X0134100Y0237558D02* 241 | X0134102Y0237644D01* 242 | X0134107Y0237730D01* 243 | X0134117Y0237815D01* 244 | X0134130Y0237900D01* 245 | X0134147Y0237984D01* 246 | X0134167Y0238068D01* 247 | X0134191Y0238150D01* 248 | X0134219Y0238231D01* 249 | X0134250Y0238312D01* 250 | X0134284Y0238390D01* 251 | X0134322Y0238467D01* 252 | X0134364Y0238543D01* 253 | X0134408Y0238616D01* 254 | X0134456Y0238687D01* 255 | X0134507Y0238757D01* 256 | X0134561Y0238824D01* 257 | X0134617Y0238888D01* 258 | X0134677Y0238950D01* 259 | X0134739Y0239010D01* 260 | X0134803Y0239066D01* 261 | X0134870Y0239120D01* 262 | X0134940Y0239171D01* 263 | X0135011Y0239219D01* 264 | X0135085Y0239263D01* 265 | X0135160Y0239305D01* 266 | X0135237Y0239343D01* 267 | X0135315Y0239377D01* 268 | X0135396Y0239408D01* 269 | X0135477Y0239436D01* 270 | X0135559Y0239460D01* 271 | X0135643Y0239480D01* 272 | X0135727Y0239497D01* 273 | X0135812Y0239510D01* 274 | X0135897Y0239520D01* 275 | X0135983Y0239525D01* 276 | X0136069Y0239527D01* 277 | X0169928Y0239527D01* 278 | X0170085Y0239525D01* 279 | X0170242Y0239519D01* 280 | X0170399Y0239509D01* 281 | X0170555Y0239496D01* 282 | X0170711Y0239478D01* 283 | X0170867Y0239457D01* 284 | X0171022Y0239431D01* 285 | X0171176Y0239402D01* 286 | X0171330Y0239369D01* 287 | X0171482Y0239332D01* 288 | X0171634Y0239292D01* 289 | X0171785Y0239247D01* 290 | X0171934Y0239199D01* 291 | X0172082Y0239147D01* 292 | X0172229Y0239092D01* 293 | X0172375Y0239032D01* 294 | X0172519Y0238970D01* 295 | X0172661Y0238903D01* 296 | X0172802Y0238833D01* 297 | X0172941Y0238760D01* 298 | X0173078Y0238683D01* 299 | X0173213Y0238603D01* 300 | X0173345Y0238519D01* 301 | X0173476Y0238432D01* 302 | X0173605Y0238342D01* 303 | X0173731Y0238249D01* 304 | X0173855Y0238153D01* 305 | X0173977Y0238053D01* 306 | X0174096Y0237951D01* 307 | X0174212Y0237845D01* 308 | X0174326Y0237737D01* 309 | X0174437Y0237626D01* 310 | X0174545Y0237512D01* 311 | X0174651Y0237396D01* 312 | X0174753Y0237277D01* 313 | X0174853Y0237155D01* 314 | X0174949Y0237031D01* 315 | X0175042Y0236905D01* 316 | X0175132Y0236776D01* 317 | X0175219Y0236645D01* 318 | X0175303Y0236513D01* 319 | X0175383Y0236378D01* 320 | X0175460Y0236241D01* 321 | X0175533Y0236102D01* 322 | X0175603Y0235961D01* 323 | X0175670Y0235819D01* 324 | X0175732Y0235675D01* 325 | X0175792Y0235529D01* 326 | X0175847Y0235382D01* 327 | X0175899Y0235234D01* 328 | X0175947Y0235085D01* 329 | X0175992Y0234934D01* 330 | X0176032Y0234782D01* 331 | X0176069Y0234630D01* 332 | X0176102Y0234476D01* 333 | X0176131Y0234322D01* 334 | X0176157Y0234167D01* 335 | X0176178Y0234011D01* 336 | X0176196Y0233855D01* 337 | X0176209Y0233699D01* 338 | X0176219Y0233542D01* 339 | X0176225Y0233385D01* 340 | X0176227Y0233228D01* 341 | X0176227Y0052519D01* 342 | X0176225Y0052319D01* 343 | X0176217Y0052120D01* 344 | X0176205Y0051920D01* 345 | X0176188Y0051721D01* 346 | X0176167Y0051522D01* 347 | X0176140Y0051324D01* 348 | X0176109Y0051127D01* 349 | X0176073Y0050930D01* 350 | X0176032Y0050735D01* 351 | X0175987Y0050540D01* 352 | X0175937Y0050347D01* 353 | X0175882Y0050155D01* 354 | X0175822Y0049964D01* 355 | X0175758Y0049775D01* 356 | X0175690Y0049587D01* 357 | X0175617Y0049401D01* 358 | X0175539Y0049217D01* 359 | X0175457Y0049035D01* 360 | X0175371Y0048855D01* 361 | X0175280Y0048677D01* 362 | X0175185Y0048501D01* 363 | X0175086Y0048327D01* 364 | X0174982Y0048156D01* 365 | X0174875Y0047988D01* 366 | X0174763Y0047822D01* 367 | X0174648Y0047659D01* 368 | X0174529Y0047499D01* 369 | X0174405Y0047342D01* 370 | X0174278Y0047187D01* 371 | X0174148Y0047036D01* 372 | X0174013Y0046888D01* 373 | X0173876Y0046744D01* 374 | X0173734Y0046602D01* 375 | X0173590Y0046465D01* 376 | X0173442Y0046330D01* 377 | X0173291Y0046200D01* 378 | X0173136Y0046073D01* 379 | X0172979Y0045949D01* 380 | X0172819Y0045830D01* 381 | X0172656Y0045715D01* 382 | X0172490Y0045603D01* 383 | X0172322Y0045496D01* 384 | X0172151Y0045392D01* 385 | X0171977Y0045293D01* 386 | X0171801Y0045198D01* 387 | X0171623Y0045107D01* 388 | X0171443Y0045021D01* 389 | X0171261Y0044939D01* 390 | X0171077Y0044861D01* 391 | X0170891Y0044788D01* 392 | X0170703Y0044720D01* 393 | X0170514Y0044656D01* 394 | X0170323Y0044596D01* 395 | X0170131Y0044541D01* 396 | X0169938Y0044491D01* 397 | X0169743Y0044446D01* 398 | X0169548Y0044405D01* 399 | X0169351Y0044369D01* 400 | X0169154Y0044338D01* 401 | X0168956Y0044311D01* 402 | X0168757Y0044290D01* 403 | X0168558Y0044273D01* 404 | X0168358Y0044261D01* 405 | X0168159Y0044253D01* 406 | X0167959Y0044251D01* 407 | X0040400Y0044251D01* 408 | X0040259Y0044253D01* 409 | X0040118Y0044259D01* 410 | X0039977Y0044268D01* 411 | X0039837Y0044282D01* 412 | X0039697Y0044300D01* 413 | X0039558Y0044321D01* 414 | X0039419Y0044346D01* 415 | X0039281Y0044375D01* 416 | X0039144Y0044408D01* 417 | X0039007Y0044444D01* 418 | X0038872Y0044484D01* 419 | X0038738Y0044528D01* 420 | X0038605Y0044576D01* 421 | X0038474Y0044627D01* 422 | X0038344Y0044682D01* 423 | X0038216Y0044741D01* 424 | X0038089Y0044802D01* 425 | X0037964Y0044868D01* 426 | X0037841Y0044937D01* 427 | X0037720Y0045009D01* 428 | X0037601Y0045084D01* 429 | X0037484Y0045163D01* 430 | X0037369Y0045245D01* 431 | X0037256Y0045330D01* 432 | X0037146Y0045418D01* 433 | X0037039Y0045509D01* 434 | X0036934Y0045604D01* 435 | X0036831Y0045701D01* 436 | X0036732Y0045800D01* 437 | X0036635Y0045903D01* 438 | X0036540Y0046008D01* 439 | X0036449Y0046115D01* 440 | X0036361Y0046225D01* 441 | X0036276Y0046338D01* 442 | X0036194Y0046453D01* 443 | X0036115Y0046570D01* 444 | X0036040Y0046689D01* 445 | X0035968Y0046810D01* 446 | X0035899Y0046933D01* 447 | X0035833Y0047058D01* 448 | X0035772Y0047185D01* 449 | X0035713Y0047313D01* 450 | X0035658Y0047443D01* 451 | X0035607Y0047574D01* 452 | X0035559Y0047707D01* 453 | X0035515Y0047841D01* 454 | X0035475Y0047976D01* 455 | X0035439Y0048113D01* 456 | X0035406Y0048250D01* 457 | X0035377Y0048388D01* 458 | X0035352Y0048527D01* 459 | X0035331Y0048666D01* 460 | X0035313Y0048806D01* 461 | X0035299Y0048946D01* 462 | X0035290Y0049087D01* 463 | X0035284Y0049228D01* 464 | X0035282Y0049369D01* 465 | M02* 466 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.1/mqtt doorbell v1.1.GBS: -------------------------------------------------------------------------------- 1 | G75* 2 | %MOIN*% 3 | %OFA0B0*% 4 | %FSLAX25Y25*% 5 | %IPPOS*% 6 | %LPD*% 7 | %AMOC8* 8 | 5,1,8,0,0,1.08239X$1,22.5* 9 | % 10 | %ADD10C,0.03200*% 11 | %ADD11C,0.01600*% 12 | %ADD12C,0.06400*% 13 | %ADD13C,0.05600*% 14 | %ADD14C,0.07450*% 15 | %ADD15C,0.08274*% 16 | D10* 17 | X0106935Y0044645D02* 18 | X0106935Y0051459D01* 19 | X0106935Y0057859D02* 20 | X0106935Y0064673D01* 21 | X0106935Y0071073D02* 22 | X0106935Y0077887D01* 23 | X0106935Y0084287D02* 24 | X0106935Y0091102D01* 25 | X0111956Y0096122D01* 26 | X0116482Y0100648D02* 27 | X0121502Y0105669D01* 28 | X0121502Y0115905D01* 29 | X0125046Y0119448D01* 30 | X0132196Y0119448D01* 31 | X0138596Y0119448D02* 32 | X0145747Y0119448D01* 33 | X0152147Y0119448D02* 34 | X0159298Y0119448D01* 35 | X0166778Y0111968D01* 36 | X0166778Y0103781D01* 37 | X0166778Y0097381D02* 38 | X0166778Y0089194D01* 39 | X0166778Y0082794D02* 40 | X0166778Y0074606D01* 41 | X0166778Y0068206D02* 42 | X0166778Y0060019D01* 43 | X0166778Y0053619D02* 44 | X0166778Y0045432D01* 45 | D11* 46 | X0035282Y0049369D02* 47 | X0035282Y0233228D01* 48 | X0035281Y0233228D02* 49 | X0035283Y0233380D01* 50 | X0035289Y0233532D01* 51 | X0035299Y0233684D01* 52 | X0035312Y0233835D01* 53 | X0035330Y0233986D01* 54 | X0035351Y0234137D01* 55 | X0035377Y0234287D01* 56 | X0035406Y0234436D01* 57 | X0035439Y0234585D01* 58 | X0035476Y0234732D01* 59 | X0035516Y0234879D01* 60 | X0035561Y0235024D01* 61 | X0035609Y0235168D01* 62 | X0035661Y0235311D01* 63 | X0035716Y0235453D01* 64 | X0035775Y0235593D01* 65 | X0035838Y0235732D01* 66 | X0035904Y0235869D01* 67 | X0035974Y0236004D01* 68 | X0036047Y0236137D01* 69 | X0036124Y0236268D01* 70 | X0036204Y0236398D01* 71 | X0036287Y0236525D01* 72 | X0036373Y0236650D01* 73 | X0036463Y0236773D01* 74 | X0036556Y0236893D01* 75 | X0036652Y0237011D01* 76 | X0036751Y0237127D01* 77 | X0036853Y0237240D01* 78 | X0036957Y0237350D01* 79 | X0037065Y0237458D01* 80 | X0037175Y0237562D01* 81 | X0037288Y0237664D01* 82 | X0037404Y0237763D01* 83 | X0037522Y0237859D01* 84 | X0037642Y0237952D01* 85 | X0037765Y0238042D01* 86 | X0037890Y0238128D01* 87 | X0038017Y0238211D01* 88 | X0038147Y0238291D01* 89 | X0038278Y0238368D01* 90 | X0038411Y0238441D01* 91 | X0038546Y0238511D01* 92 | X0038683Y0238577D01* 93 | X0038822Y0238640D01* 94 | X0038962Y0238699D01* 95 | X0039104Y0238754D01* 96 | X0039247Y0238806D01* 97 | X0039391Y0238854D01* 98 | X0039536Y0238899D01* 99 | X0039683Y0238939D01* 100 | X0039830Y0238976D01* 101 | X0039979Y0239009D01* 102 | X0040128Y0239038D01* 103 | X0040278Y0239064D01* 104 | X0040429Y0239085D01* 105 | X0040580Y0239103D01* 106 | X0040731Y0239116D01* 107 | X0040883Y0239126D01* 108 | X0041035Y0239132D01* 109 | X0041187Y0239134D01* 110 | X0041187Y0239133D02* 111 | X0080951Y0239133D01* 112 | X0081067Y0239131D01* 113 | X0081183Y0239125D01* 114 | X0081298Y0239116D01* 115 | X0081413Y0239103D01* 116 | X0081528Y0239086D01* 117 | X0081642Y0239065D01* 118 | X0081756Y0239040D01* 119 | X0081868Y0239012D01* 120 | X0081979Y0238980D01* 121 | X0082090Y0238945D01* 122 | X0082199Y0238906D01* 123 | X0082307Y0238863D01* 124 | X0082413Y0238817D01* 125 | X0082518Y0238768D01* 126 | X0082621Y0238715D01* 127 | X0082723Y0238658D01* 128 | X0082822Y0238599D01* 129 | X0082919Y0238536D01* 130 | X0083015Y0238470D01* 131 | X0083108Y0238401D01* 132 | X0083199Y0238329D01* 133 | X0083287Y0238254D01* 134 | X0083373Y0238176D01* 135 | X0083456Y0238095D01* 136 | X0083537Y0238012D01* 137 | X0083615Y0237926D01* 138 | X0083690Y0237838D01* 139 | X0083762Y0237747D01* 140 | X0083831Y0237654D01* 141 | X0083897Y0237558D01* 142 | X0083960Y0237461D01* 143 | X0084019Y0237362D01* 144 | X0084076Y0237260D01* 145 | X0084129Y0237157D01* 146 | X0084178Y0237052D01* 147 | X0084224Y0236946D01* 148 | X0084267Y0236838D01* 149 | X0084306Y0236729D01* 150 | X0084341Y0236618D01* 151 | X0084373Y0236507D01* 152 | X0084401Y0236395D01* 153 | X0084426Y0236281D01* 154 | X0084447Y0236167D01* 155 | X0084464Y0236052D01* 156 | X0084477Y0235937D01* 157 | X0084486Y0235822D01* 158 | X0084492Y0235706D01* 159 | X0084494Y0235590D01* 160 | X0084494Y0218661D01* 161 | X0084495Y0218661D02* 162 | X0084497Y0218566D01* 163 | X0084503Y0218471D01* 164 | X0084512Y0218376D01* 165 | X0084526Y0218282D01* 166 | X0084543Y0218189D01* 167 | X0084564Y0218096D01* 168 | X0084588Y0218004D01* 169 | X0084617Y0217913D01* 170 | X0084648Y0217823D01* 171 | X0084684Y0217735D01* 172 | X0084723Y0217648D01* 173 | X0084766Y0217563D01* 174 | X0084811Y0217480D01* 175 | X0084861Y0217399D01* 176 | X0084913Y0217319D01* 177 | X0084969Y0217242D01* 178 | X0085027Y0217167D01* 179 | X0085089Y0217095D01* 180 | X0085154Y0217025D01* 181 | X0085221Y0216958D01* 182 | X0085291Y0216893D01* 183 | X0085363Y0216831D01* 184 | X0085438Y0216773D01* 185 | X0085515Y0216717D01* 186 | X0085595Y0216665D01* 187 | X0085676Y0216615D01* 188 | X0085759Y0216570D01* 189 | X0085844Y0216527D01* 190 | X0085931Y0216488D01* 191 | X0086019Y0216452D01* 192 | X0086109Y0216421D01* 193 | X0086200Y0216392D01* 194 | X0086292Y0216368D01* 195 | X0086385Y0216347D01* 196 | X0086478Y0216330D01* 197 | X0086572Y0216316D01* 198 | X0086667Y0216307D01* 199 | X0086762Y0216301D01* 200 | X0086857Y0216299D01* 201 | X0086857Y0216298D02* 202 | X0131739Y0216298D01* 203 | X0131739Y0216299D02* 204 | X0131834Y0216301D01* 205 | X0131929Y0216307D01* 206 | X0132024Y0216316D01* 207 | X0132118Y0216330D01* 208 | X0132211Y0216347D01* 209 | X0132304Y0216368D01* 210 | X0132396Y0216392D01* 211 | X0132487Y0216421D01* 212 | X0132577Y0216452D01* 213 | X0132665Y0216488D01* 214 | X0132752Y0216527D01* 215 | X0132837Y0216570D01* 216 | X0132920Y0216615D01* 217 | X0133001Y0216665D01* 218 | X0133081Y0216717D01* 219 | X0133158Y0216773D01* 220 | X0133233Y0216831D01* 221 | X0133305Y0216893D01* 222 | X0133375Y0216958D01* 223 | X0133442Y0217025D01* 224 | X0133507Y0217095D01* 225 | X0133569Y0217167D01* 226 | X0133627Y0217242D01* 227 | X0133683Y0217319D01* 228 | X0133735Y0217399D01* 229 | X0133785Y0217480D01* 230 | X0133830Y0217563D01* 231 | X0133873Y0217648D01* 232 | X0133912Y0217735D01* 233 | X0133948Y0217823D01* 234 | X0133979Y0217913D01* 235 | X0134008Y0218004D01* 236 | X0134032Y0218096D01* 237 | X0134053Y0218189D01* 238 | X0134070Y0218282D01* 239 | X0134084Y0218376D01* 240 | X0134093Y0218471D01* 241 | X0134099Y0218566D01* 242 | X0134101Y0218661D01* 243 | X0134101Y0237558D01* 244 | X0134100Y0237558D02* 245 | X0134102Y0237644D01* 246 | X0134107Y0237730D01* 247 | X0134117Y0237815D01* 248 | X0134130Y0237900D01* 249 | X0134147Y0237984D01* 250 | X0134167Y0238068D01* 251 | X0134191Y0238150D01* 252 | X0134219Y0238231D01* 253 | X0134250Y0238312D01* 254 | X0134284Y0238390D01* 255 | X0134322Y0238467D01* 256 | X0134364Y0238543D01* 257 | X0134408Y0238616D01* 258 | X0134456Y0238687D01* 259 | X0134507Y0238757D01* 260 | X0134561Y0238824D01* 261 | X0134617Y0238888D01* 262 | X0134677Y0238950D01* 263 | X0134739Y0239010D01* 264 | X0134803Y0239066D01* 265 | X0134870Y0239120D01* 266 | X0134940Y0239171D01* 267 | X0135011Y0239219D01* 268 | X0135085Y0239263D01* 269 | X0135160Y0239305D01* 270 | X0135237Y0239343D01* 271 | X0135315Y0239377D01* 272 | X0135396Y0239408D01* 273 | X0135477Y0239436D01* 274 | X0135559Y0239460D01* 275 | X0135643Y0239480D01* 276 | X0135727Y0239497D01* 277 | X0135812Y0239510D01* 278 | X0135897Y0239520D01* 279 | X0135983Y0239525D01* 280 | X0136069Y0239527D01* 281 | X0169928Y0239527D01* 282 | X0170085Y0239525D01* 283 | X0170242Y0239519D01* 284 | X0170399Y0239509D01* 285 | X0170555Y0239496D01* 286 | X0170711Y0239478D01* 287 | X0170867Y0239457D01* 288 | X0171022Y0239431D01* 289 | X0171176Y0239402D01* 290 | X0171330Y0239369D01* 291 | X0171482Y0239332D01* 292 | X0171634Y0239292D01* 293 | X0171785Y0239247D01* 294 | X0171934Y0239199D01* 295 | X0172082Y0239147D01* 296 | X0172229Y0239092D01* 297 | X0172375Y0239032D01* 298 | X0172519Y0238970D01* 299 | X0172661Y0238903D01* 300 | X0172802Y0238833D01* 301 | X0172941Y0238760D01* 302 | X0173078Y0238683D01* 303 | X0173213Y0238603D01* 304 | X0173345Y0238519D01* 305 | X0173476Y0238432D01* 306 | X0173605Y0238342D01* 307 | X0173731Y0238249D01* 308 | X0173855Y0238153D01* 309 | X0173977Y0238053D01* 310 | X0174096Y0237951D01* 311 | X0174212Y0237845D01* 312 | X0174326Y0237737D01* 313 | X0174437Y0237626D01* 314 | X0174545Y0237512D01* 315 | X0174651Y0237396D01* 316 | X0174753Y0237277D01* 317 | X0174853Y0237155D01* 318 | X0174949Y0237031D01* 319 | X0175042Y0236905D01* 320 | X0175132Y0236776D01* 321 | X0175219Y0236645D01* 322 | X0175303Y0236513D01* 323 | X0175383Y0236378D01* 324 | X0175460Y0236241D01* 325 | X0175533Y0236102D01* 326 | X0175603Y0235961D01* 327 | X0175670Y0235819D01* 328 | X0175732Y0235675D01* 329 | X0175792Y0235529D01* 330 | X0175847Y0235382D01* 331 | X0175899Y0235234D01* 332 | X0175947Y0235085D01* 333 | X0175992Y0234934D01* 334 | X0176032Y0234782D01* 335 | X0176069Y0234630D01* 336 | X0176102Y0234476D01* 337 | X0176131Y0234322D01* 338 | X0176157Y0234167D01* 339 | X0176178Y0234011D01* 340 | X0176196Y0233855D01* 341 | X0176209Y0233699D01* 342 | X0176219Y0233542D01* 343 | X0176225Y0233385D01* 344 | X0176227Y0233228D01* 345 | X0176227Y0052519D01* 346 | X0176225Y0052319D01* 347 | X0176217Y0052120D01* 348 | X0176205Y0051920D01* 349 | X0176188Y0051721D01* 350 | X0176167Y0051522D01* 351 | X0176140Y0051324D01* 352 | X0176109Y0051127D01* 353 | X0176073Y0050930D01* 354 | X0176032Y0050735D01* 355 | X0175987Y0050540D01* 356 | X0175937Y0050347D01* 357 | X0175882Y0050155D01* 358 | X0175822Y0049964D01* 359 | X0175758Y0049775D01* 360 | X0175690Y0049587D01* 361 | X0175617Y0049401D01* 362 | X0175539Y0049217D01* 363 | X0175457Y0049035D01* 364 | X0175371Y0048855D01* 365 | X0175280Y0048677D01* 366 | X0175185Y0048501D01* 367 | X0175086Y0048327D01* 368 | X0174982Y0048156D01* 369 | X0174875Y0047988D01* 370 | X0174763Y0047822D01* 371 | X0174648Y0047659D01* 372 | X0174529Y0047499D01* 373 | X0174405Y0047342D01* 374 | X0174278Y0047187D01* 375 | X0174148Y0047036D01* 376 | X0174013Y0046888D01* 377 | X0173876Y0046744D01* 378 | X0173734Y0046602D01* 379 | X0173590Y0046465D01* 380 | X0173442Y0046330D01* 381 | X0173291Y0046200D01* 382 | X0173136Y0046073D01* 383 | X0172979Y0045949D01* 384 | X0172819Y0045830D01* 385 | X0172656Y0045715D01* 386 | X0172490Y0045603D01* 387 | X0172322Y0045496D01* 388 | X0172151Y0045392D01* 389 | X0171977Y0045293D01* 390 | X0171801Y0045198D01* 391 | X0171623Y0045107D01* 392 | X0171443Y0045021D01* 393 | X0171261Y0044939D01* 394 | X0171077Y0044861D01* 395 | X0170891Y0044788D01* 396 | X0170703Y0044720D01* 397 | X0170514Y0044656D01* 398 | X0170323Y0044596D01* 399 | X0170131Y0044541D01* 400 | X0169938Y0044491D01* 401 | X0169743Y0044446D01* 402 | X0169548Y0044405D01* 403 | X0169351Y0044369D01* 404 | X0169154Y0044338D01* 405 | X0168956Y0044311D01* 406 | X0168757Y0044290D01* 407 | X0168558Y0044273D01* 408 | X0168358Y0044261D01* 409 | X0168159Y0044253D01* 410 | X0167959Y0044251D01* 411 | X0040400Y0044251D01* 412 | X0040259Y0044253D01* 413 | X0040118Y0044259D01* 414 | X0039977Y0044268D01* 415 | X0039837Y0044282D01* 416 | X0039697Y0044300D01* 417 | X0039558Y0044321D01* 418 | X0039419Y0044346D01* 419 | X0039281Y0044375D01* 420 | X0039144Y0044408D01* 421 | X0039007Y0044444D01* 422 | X0038872Y0044484D01* 423 | X0038738Y0044528D01* 424 | X0038605Y0044576D01* 425 | X0038474Y0044627D01* 426 | X0038344Y0044682D01* 427 | X0038216Y0044741D01* 428 | X0038089Y0044802D01* 429 | X0037964Y0044868D01* 430 | X0037841Y0044937D01* 431 | X0037720Y0045009D01* 432 | X0037601Y0045084D01* 433 | X0037484Y0045163D01* 434 | X0037369Y0045245D01* 435 | X0037256Y0045330D01* 436 | X0037146Y0045418D01* 437 | X0037039Y0045509D01* 438 | X0036934Y0045604D01* 439 | X0036831Y0045701D01* 440 | X0036732Y0045800D01* 441 | X0036635Y0045903D01* 442 | X0036540Y0046008D01* 443 | X0036449Y0046115D01* 444 | X0036361Y0046225D01* 445 | X0036276Y0046338D01* 446 | X0036194Y0046453D01* 447 | X0036115Y0046570D01* 448 | X0036040Y0046689D01* 449 | X0035968Y0046810D01* 450 | X0035899Y0046933D01* 451 | X0035833Y0047058D01* 452 | X0035772Y0047185D01* 453 | X0035713Y0047313D01* 454 | X0035658Y0047443D01* 455 | X0035607Y0047574D01* 456 | X0035559Y0047707D01* 457 | X0035515Y0047841D01* 458 | X0035475Y0047976D01* 459 | X0035439Y0048113D01* 460 | X0035406Y0048250D01* 461 | X0035377Y0048388D01* 462 | X0035352Y0048527D01* 463 | X0035331Y0048666D01* 464 | X0035313Y0048806D01* 465 | X0035299Y0048946D01* 466 | X0035290Y0049087D01* 467 | X0035284Y0049228D01* 468 | X0035282Y0049369D01* 469 | D12* 470 | X0063550Y0097522D02* 471 | X0063550Y0103522D01* 472 | X0063550Y0123122D02* 473 | X0063550Y0129122D01* 474 | X0081350Y0129122D02* 475 | X0081350Y0123122D01* 476 | X0081350Y0103522D02* 477 | X0081350Y0097522D01* 478 | X0164503Y0180302D02* 479 | X0170503Y0180302D01* 480 | X0170503Y0190302D02* 481 | X0164503Y0190302D01* 482 | X0164503Y0200302D02* 483 | X0170503Y0200302D01* 484 | X0170503Y0210302D02* 485 | X0164503Y0210302D01* 486 | X0164503Y0220302D02* 487 | X0170503Y0220302D01* 488 | X0170503Y0230302D02* 489 | X0164503Y0230302D01* 490 | D13* 491 | X0147762Y0141223D02* 492 | X0147762Y0136023D01* 493 | X0137762Y0136023D02* 494 | X0137762Y0141223D01* 495 | X0137762Y0106023D02* 496 | X0137762Y0100823D01* 497 | X0147762Y0100823D02* 498 | X0147762Y0106023D01* 499 | X0048817Y0168545D02* 500 | X0048817Y0173745D01* 501 | X0048817Y0198545D02* 502 | X0048817Y0203745D01* 503 | D14* 504 | X0132920Y0064823D02* 505 | X0132920Y0057773D01* 506 | X0152605Y0057773D02* 507 | X0152605Y0064823D01* 508 | D15* 509 | X0085592Y0070710D02* 510 | X0085592Y0078584D01* 511 | X0069844Y0086458D02* 512 | X0061970Y0086458D01* 513 | X0061970Y0061655D02* 514 | X0069844Y0061655D01* 515 | M02* 516 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.1/mqtt doorbell v1.1.TXT: -------------------------------------------------------------------------------- 1 | % 2 | M48 3 | M72 4 | T01C0.02362 5 | T02C0.03200 6 | T03C0.03937 7 | T04C0.04000 8 | T05C0.04700 9 | % 10 | T01 11 | X68348Y218348 12 | X96306Y196220 13 | X119140Y179684 14 | X122290Y165511 15 | X101817Y132046 16 | X167172Y162755 17 | X154569Y190789 18 | X63230Y159687 19 | T02 20 | X48817Y201145 21 | X48817Y171145 22 | X137762Y106023 23 | X147762Y106023 24 | X147762Y136023 25 | X137762Y136023 26 | T03 27 | X85592Y74647 28 | X65907Y86458 29 | X65907Y61655 30 | T04 31 | X63550Y126122 32 | X81350Y126122 33 | X81350Y100522 34 | X63550Y100522 35 | X167503Y180302 36 | X167503Y190302 37 | X167503Y200302 38 | X167503Y210302 39 | X167503Y220302 40 | X167503Y230302 41 | T05 42 | X132920Y61298 43 | X152605Y61298 44 | M30 45 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.1/mqtt doorbell v1.1.dri: -------------------------------------------------------------------------------- 1 | Generated by EAGLE CAM Processor 7.6.0 2 | 3 | Drill Station Info File: C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell v1.1/mqtt doorbell v1.1.dri 4 | 5 | Date : 25-5-2018 08:44 6 | Drills : generated 7 | Device : Excellon drill station, coordinate format 2.5 inch 8 | 9 | Parameter settings: 10 | 11 | Tolerance Drill + : 0.00 % 12 | Tolerance Drill - : 0.00 % 13 | Rotate : no 14 | Mirror : no 15 | Optimize : yes 16 | Auto fit : yes 17 | OffsetX : 0inch 18 | OffsetY : 0inch 19 | Layers : Drills Holes 20 | 21 | Drill File Info: 22 | 23 | Data Mode : Absolute 24 | Units : 1/100000 Inch 25 | 26 | Drills used: 27 | 28 | Code Size used 29 | 30 | T01 0.0236inch 8 31 | T02 0.0320inch 6 32 | T03 0.0394inch 3 33 | T04 0.0400inch 10 34 | T05 0.0470inch 2 35 | 36 | Total number of drills: 29 37 | 38 | Plotfiles: 39 | 40 | C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell v1.1/mqtt doorbell v1.1.TXT 41 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.1/mqtt doorbell v1.1.gpi: -------------------------------------------------------------------------------- 1 | Generated by EAGLE CAM Processor 7.6.0 2 | 3 | Photoplotter Info File: C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell v1.1/mqtt doorbell v1.1.gpi 4 | 5 | Date : 25-5-2018 08:44 6 | Plotfile : C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell v1.1/mqtt doorbell v1.1.GTL 7 | Apertures : generated: 8 | Device : Gerber RS-274-X photoplotter, coordinate format 2.5 inch 9 | 10 | Parameter settings: 11 | 12 | Emulate Apertures : no 13 | Tolerance Draw + : 0.00 % 14 | Tolerance Draw - : 0.00 % 15 | Tolerance Flash + : 0.00 % 16 | Tolerance Flash - : 0.00 % 17 | Rotate : no 18 | Mirror : no 19 | Optimize : yes 20 | Auto fit : yes 21 | OffsetX : 0inch 22 | OffsetY : 0inch 23 | 24 | Plotfile Info: 25 | 26 | Coordinate Format : 2.5 27 | Coordinate Units : Inch 28 | Data Mode : Absolute 29 | Zero Suppression : None 30 | End Of Block : * 31 | 32 | Apertures used: 33 | 34 | Code Shape Size used 35 | 36 | D10 draw 0.0320inch 1316 37 | D11 draw 0.0160inch 16 38 | D12 rectangle 0.0551inch x 0.0630inch 2 39 | D13 rectangle 0.0709inch x 0.0630inch 10 40 | D14 rectangle 0.1181inch x 0.0472inch 16 41 | D15 draw 0.0600inch 10 42 | D16 draw 0.0520inch 6 43 | D17 rectangle 0.1181inch x 0.0551inch 2 44 | D18 rectangle 0.0276inch x 0.0433inch 2 45 | D19 rectangle 0.0276inch x 0.0709inch 1 46 | D20 rectangle 0.0787inch x 0.1102inch 1 47 | D21 rectangle 0.0250inch x 0.0500inch 6 48 | D22 draw 0.0705inch 2 49 | D23 rectangle 0.0591inch x 0.0827inch 2 50 | D24 square 0.0472inch 4 51 | D25 draw 0.0787inch 3 52 | D26 square 0.0356inch 7 53 | D27 draw 0.0400inch 15 54 | D28 round 0.0356inch 1 55 | D29 draw 0.0500inch 10 56 | 57 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.2/mqtt doorbell v1.2.GBP: -------------------------------------------------------------------------------- 1 | G75* 2 | %MOIN*% 3 | %OFA0B0*% 4 | %FSLAX25Y25*% 5 | %IPPOS*% 6 | %LPD*% 7 | %AMOC8* 8 | 5,1,8,0,0,1.08239X$1,22.5* 9 | % 10 | %ADD10C,0.03200*% 11 | %ADD11C,0.01600*% 12 | D10* 13 | X0137233Y0044645D02* 14 | X0137233Y0051459D01* 15 | X0137233Y0057859D02* 16 | X0137233Y0064673D01* 17 | X0137233Y0071073D02* 18 | X0137233Y0077887D01* 19 | X0137233Y0084287D02* 20 | X0137233Y0091102D01* 21 | X0142254Y0096122D01* 22 | X0146779Y0100648D02* 23 | X0151800Y0105669D01* 24 | X0151800Y0115905D01* 25 | X0155343Y0119448D01* 26 | X0162494Y0119448D01* 27 | X0168894Y0119448D02* 28 | X0176045Y0119448D01* 29 | X0182445Y0119448D02* 30 | X0189595Y0119448D01* 31 | X0197076Y0111968D01* 32 | X0197076Y0103781D01* 33 | X0197076Y0097381D02* 34 | X0197076Y0089194D01* 35 | X0197076Y0082794D02* 36 | X0197076Y0074606D01* 37 | X0197076Y0068206D02* 38 | X0197076Y0060019D01* 39 | X0197076Y0053619D02* 40 | X0197076Y0045432D01* 41 | D11* 42 | X0198257Y0044251D02* 43 | X0040776Y0044251D01* 44 | X0040635Y0044253D01* 45 | X0040494Y0044259D01* 46 | X0040353Y0044268D01* 47 | X0040213Y0044282D01* 48 | X0040073Y0044300D01* 49 | X0039934Y0044321D01* 50 | X0039795Y0044346D01* 51 | X0039657Y0044375D01* 52 | X0039520Y0044408D01* 53 | X0039383Y0044444D01* 54 | X0039248Y0044484D01* 55 | X0039114Y0044528D01* 56 | X0038981Y0044576D01* 57 | X0038850Y0044627D01* 58 | X0038720Y0044682D01* 59 | X0038592Y0044741D01* 60 | X0038465Y0044802D01* 61 | X0038340Y0044868D01* 62 | X0038217Y0044937D01* 63 | X0038096Y0045009D01* 64 | X0037977Y0045084D01* 65 | X0037860Y0045163D01* 66 | X0037745Y0045245D01* 67 | X0037632Y0045330D01* 68 | X0037522Y0045418D01* 69 | X0037415Y0045509D01* 70 | X0037310Y0045604D01* 71 | X0037207Y0045701D01* 72 | X0037108Y0045800D01* 73 | X0037011Y0045903D01* 74 | X0036916Y0046008D01* 75 | X0036825Y0046115D01* 76 | X0036737Y0046225D01* 77 | X0036652Y0046338D01* 78 | X0036570Y0046453D01* 79 | X0036491Y0046570D01* 80 | X0036416Y0046689D01* 81 | X0036344Y0046810D01* 82 | X0036275Y0046933D01* 83 | X0036209Y0047058D01* 84 | X0036148Y0047185D01* 85 | X0036089Y0047313D01* 86 | X0036034Y0047443D01* 87 | X0035983Y0047574D01* 88 | X0035935Y0047707D01* 89 | X0035891Y0047841D01* 90 | X0035851Y0047976D01* 91 | X0035815Y0048113D01* 92 | X0035782Y0048250D01* 93 | X0035753Y0048388D01* 94 | X0035728Y0048527D01* 95 | X0035707Y0048666D01* 96 | X0035689Y0048806D01* 97 | X0035675Y0048946D01* 98 | X0035666Y0049087D01* 99 | X0035660Y0049228D01* 100 | X0035658Y0049369D01* 101 | X0035658Y0233228D01* 102 | X0035660Y0233380D01* 103 | X0035666Y0233532D01* 104 | X0035676Y0233684D01* 105 | X0035689Y0233835D01* 106 | X0035707Y0233986D01* 107 | X0035728Y0234137D01* 108 | X0035754Y0234287D01* 109 | X0035783Y0234436D01* 110 | X0035816Y0234585D01* 111 | X0035853Y0234732D01* 112 | X0035893Y0234879D01* 113 | X0035938Y0235024D01* 114 | X0035986Y0235168D01* 115 | X0036038Y0235311D01* 116 | X0036093Y0235453D01* 117 | X0036152Y0235593D01* 118 | X0036215Y0235732D01* 119 | X0036281Y0235869D01* 120 | X0036351Y0236004D01* 121 | X0036424Y0236137D01* 122 | X0036501Y0236268D01* 123 | X0036581Y0236398D01* 124 | X0036664Y0236525D01* 125 | X0036750Y0236650D01* 126 | X0036840Y0236773D01* 127 | X0036933Y0236893D01* 128 | X0037029Y0237011D01* 129 | X0037128Y0237127D01* 130 | X0037230Y0237240D01* 131 | X0037334Y0237350D01* 132 | X0037442Y0237458D01* 133 | X0037552Y0237562D01* 134 | X0037665Y0237664D01* 135 | X0037781Y0237763D01* 136 | X0037899Y0237859D01* 137 | X0038019Y0237952D01* 138 | X0038142Y0238042D01* 139 | X0038267Y0238128D01* 140 | X0038394Y0238211D01* 141 | X0038524Y0238291D01* 142 | X0038655Y0238368D01* 143 | X0038788Y0238441D01* 144 | X0038923Y0238511D01* 145 | X0039060Y0238577D01* 146 | X0039199Y0238640D01* 147 | X0039339Y0238699D01* 148 | X0039481Y0238754D01* 149 | X0039624Y0238806D01* 150 | X0039768Y0238854D01* 151 | X0039913Y0238899D01* 152 | X0040060Y0238939D01* 153 | X0040207Y0238976D01* 154 | X0040356Y0239009D01* 155 | X0040505Y0239038D01* 156 | X0040655Y0239064D01* 157 | X0040806Y0239085D01* 158 | X0040957Y0239103D01* 159 | X0041108Y0239116D01* 160 | X0041260Y0239126D01* 161 | X0041412Y0239132D01* 162 | X0041564Y0239134D01* 163 | X0041564Y0239133D02* 164 | X0111249Y0239133D01* 165 | X0111365Y0239131D01* 166 | X0111481Y0239125D01* 167 | X0111596Y0239116D01* 168 | X0111711Y0239103D01* 169 | X0111826Y0239086D01* 170 | X0111940Y0239065D01* 171 | X0112054Y0239040D01* 172 | X0112166Y0239012D01* 173 | X0112277Y0238980D01* 174 | X0112388Y0238945D01* 175 | X0112497Y0238906D01* 176 | X0112605Y0238863D01* 177 | X0112711Y0238817D01* 178 | X0112816Y0238768D01* 179 | X0112919Y0238715D01* 180 | X0113021Y0238658D01* 181 | X0113120Y0238599D01* 182 | X0113217Y0238536D01* 183 | X0113313Y0238470D01* 184 | X0113406Y0238401D01* 185 | X0113497Y0238329D01* 186 | X0113585Y0238254D01* 187 | X0113671Y0238176D01* 188 | X0113754Y0238095D01* 189 | X0113835Y0238012D01* 190 | X0113913Y0237926D01* 191 | X0113988Y0237838D01* 192 | X0114060Y0237747D01* 193 | X0114129Y0237654D01* 194 | X0114195Y0237558D01* 195 | X0114258Y0237461D01* 196 | X0114317Y0237362D01* 197 | X0114374Y0237260D01* 198 | X0114427Y0237157D01* 199 | X0114476Y0237052D01* 200 | X0114522Y0236946D01* 201 | X0114565Y0236838D01* 202 | X0114604Y0236729D01* 203 | X0114639Y0236618D01* 204 | X0114671Y0236507D01* 205 | X0114699Y0236395D01* 206 | X0114724Y0236281D01* 207 | X0114745Y0236167D01* 208 | X0114762Y0236052D01* 209 | X0114775Y0235937D01* 210 | X0114784Y0235822D01* 211 | X0114790Y0235706D01* 212 | X0114792Y0235590D01* 213 | X0114792Y0218661D01* 214 | X0114794Y0218566D01* 215 | X0114800Y0218471D01* 216 | X0114809Y0218376D01* 217 | X0114823Y0218282D01* 218 | X0114840Y0218189D01* 219 | X0114861Y0218096D01* 220 | X0114885Y0218004D01* 221 | X0114914Y0217913D01* 222 | X0114945Y0217823D01* 223 | X0114981Y0217735D01* 224 | X0115020Y0217648D01* 225 | X0115063Y0217563D01* 226 | X0115108Y0217480D01* 227 | X0115158Y0217399D01* 228 | X0115210Y0217319D01* 229 | X0115266Y0217242D01* 230 | X0115324Y0217167D01* 231 | X0115386Y0217095D01* 232 | X0115451Y0217025D01* 233 | X0115518Y0216958D01* 234 | X0115588Y0216893D01* 235 | X0115660Y0216831D01* 236 | X0115735Y0216773D01* 237 | X0115812Y0216717D01* 238 | X0115892Y0216665D01* 239 | X0115973Y0216615D01* 240 | X0116056Y0216570D01* 241 | X0116141Y0216527D01* 242 | X0116228Y0216488D01* 243 | X0116316Y0216452D01* 244 | X0116406Y0216421D01* 245 | X0116497Y0216392D01* 246 | X0116589Y0216368D01* 247 | X0116682Y0216347D01* 248 | X0116775Y0216330D01* 249 | X0116869Y0216316D01* 250 | X0116964Y0216307D01* 251 | X0117059Y0216301D01* 252 | X0117154Y0216299D01* 253 | X0117154Y0216298D02* 254 | X0162036Y0216298D01* 255 | X0162036Y0216299D02* 256 | X0162131Y0216301D01* 257 | X0162226Y0216307D01* 258 | X0162321Y0216316D01* 259 | X0162415Y0216330D01* 260 | X0162508Y0216347D01* 261 | X0162601Y0216368D01* 262 | X0162693Y0216392D01* 263 | X0162784Y0216421D01* 264 | X0162874Y0216452D01* 265 | X0162962Y0216488D01* 266 | X0163049Y0216527D01* 267 | X0163134Y0216570D01* 268 | X0163217Y0216615D01* 269 | X0163298Y0216665D01* 270 | X0163378Y0216717D01* 271 | X0163455Y0216773D01* 272 | X0163530Y0216831D01* 273 | X0163602Y0216893D01* 274 | X0163672Y0216958D01* 275 | X0163739Y0217025D01* 276 | X0163804Y0217095D01* 277 | X0163866Y0217167D01* 278 | X0163924Y0217242D01* 279 | X0163980Y0217319D01* 280 | X0164032Y0217399D01* 281 | X0164082Y0217480D01* 282 | X0164127Y0217563D01* 283 | X0164170Y0217648D01* 284 | X0164209Y0217735D01* 285 | X0164245Y0217823D01* 286 | X0164276Y0217913D01* 287 | X0164305Y0218004D01* 288 | X0164329Y0218096D01* 289 | X0164350Y0218189D01* 290 | X0164367Y0218282D01* 291 | X0164381Y0218376D01* 292 | X0164390Y0218471D01* 293 | X0164396Y0218566D01* 294 | X0164398Y0218661D01* 295 | X0164398Y0237558D01* 296 | X0164400Y0237644D01* 297 | X0164405Y0237730D01* 298 | X0164415Y0237815D01* 299 | X0164428Y0237900D01* 300 | X0164445Y0237984D01* 301 | X0164465Y0238068D01* 302 | X0164489Y0238150D01* 303 | X0164517Y0238231D01* 304 | X0164548Y0238312D01* 305 | X0164582Y0238390D01* 306 | X0164620Y0238467D01* 307 | X0164662Y0238543D01* 308 | X0164706Y0238616D01* 309 | X0164754Y0238687D01* 310 | X0164805Y0238757D01* 311 | X0164859Y0238824D01* 312 | X0164915Y0238888D01* 313 | X0164975Y0238950D01* 314 | X0165037Y0239010D01* 315 | X0165101Y0239066D01* 316 | X0165168Y0239120D01* 317 | X0165238Y0239171D01* 318 | X0165309Y0239219D01* 319 | X0165383Y0239263D01* 320 | X0165458Y0239305D01* 321 | X0165535Y0239343D01* 322 | X0165613Y0239377D01* 323 | X0165694Y0239408D01* 324 | X0165775Y0239436D01* 325 | X0165857Y0239460D01* 326 | X0165941Y0239480D01* 327 | X0166025Y0239497D01* 328 | X0166110Y0239510D01* 329 | X0166195Y0239520D01* 330 | X0166281Y0239525D01* 331 | X0166367Y0239527D01* 332 | X0200225Y0239527D01* 333 | X0200382Y0239525D01* 334 | X0200539Y0239519D01* 335 | X0200696Y0239509D01* 336 | X0200852Y0239496D01* 337 | X0201008Y0239478D01* 338 | X0201164Y0239457D01* 339 | X0201319Y0239431D01* 340 | X0201473Y0239402D01* 341 | X0201627Y0239369D01* 342 | X0201779Y0239332D01* 343 | X0201931Y0239292D01* 344 | X0202082Y0239247D01* 345 | X0202231Y0239199D01* 346 | X0202379Y0239147D01* 347 | X0202526Y0239092D01* 348 | X0202672Y0239032D01* 349 | X0202816Y0238970D01* 350 | X0202958Y0238903D01* 351 | X0203099Y0238833D01* 352 | X0203238Y0238760D01* 353 | X0203375Y0238683D01* 354 | X0203510Y0238603D01* 355 | X0203642Y0238519D01* 356 | X0203773Y0238432D01* 357 | X0203902Y0238342D01* 358 | X0204028Y0238249D01* 359 | X0204152Y0238153D01* 360 | X0204274Y0238053D01* 361 | X0204393Y0237951D01* 362 | X0204509Y0237845D01* 363 | X0204623Y0237737D01* 364 | X0204734Y0237626D01* 365 | X0204842Y0237512D01* 366 | X0204948Y0237396D01* 367 | X0205050Y0237277D01* 368 | X0205150Y0237155D01* 369 | X0205246Y0237031D01* 370 | X0205339Y0236905D01* 371 | X0205429Y0236776D01* 372 | X0205516Y0236645D01* 373 | X0205600Y0236513D01* 374 | X0205680Y0236378D01* 375 | X0205757Y0236241D01* 376 | X0205830Y0236102D01* 377 | X0205900Y0235961D01* 378 | X0205967Y0235819D01* 379 | X0206029Y0235675D01* 380 | X0206089Y0235529D01* 381 | X0206144Y0235382D01* 382 | X0206196Y0235234D01* 383 | X0206244Y0235085D01* 384 | X0206289Y0234934D01* 385 | X0206329Y0234782D01* 386 | X0206366Y0234630D01* 387 | X0206399Y0234476D01* 388 | X0206428Y0234322D01* 389 | X0206454Y0234167D01* 390 | X0206475Y0234011D01* 391 | X0206493Y0233855D01* 392 | X0206506Y0233699D01* 393 | X0206516Y0233542D01* 394 | X0206522Y0233385D01* 395 | X0206524Y0233228D01* 396 | X0206524Y0052519D01* 397 | X0206525Y0052519D02* 398 | X0206523Y0052319D01* 399 | X0206515Y0052120D01* 400 | X0206503Y0051920D01* 401 | X0206486Y0051721D01* 402 | X0206465Y0051522D01* 403 | X0206438Y0051324D01* 404 | X0206407Y0051127D01* 405 | X0206371Y0050930D01* 406 | X0206330Y0050735D01* 407 | X0206285Y0050540D01* 408 | X0206235Y0050347D01* 409 | X0206180Y0050155D01* 410 | X0206120Y0049964D01* 411 | X0206056Y0049775D01* 412 | X0205988Y0049587D01* 413 | X0205915Y0049401D01* 414 | X0205837Y0049217D01* 415 | X0205755Y0049035D01* 416 | X0205669Y0048855D01* 417 | X0205578Y0048677D01* 418 | X0205483Y0048501D01* 419 | X0205384Y0048327D01* 420 | X0205280Y0048156D01* 421 | X0205173Y0047988D01* 422 | X0205061Y0047822D01* 423 | X0204946Y0047659D01* 424 | X0204827Y0047499D01* 425 | X0204703Y0047342D01* 426 | X0204576Y0047187D01* 427 | X0204446Y0047036D01* 428 | X0204311Y0046888D01* 429 | X0204174Y0046744D01* 430 | X0204032Y0046602D01* 431 | X0203888Y0046465D01* 432 | X0203740Y0046330D01* 433 | X0203589Y0046200D01* 434 | X0203434Y0046073D01* 435 | X0203277Y0045949D01* 436 | X0203117Y0045830D01* 437 | X0202954Y0045715D01* 438 | X0202788Y0045603D01* 439 | X0202620Y0045496D01* 440 | X0202449Y0045392D01* 441 | X0202275Y0045293D01* 442 | X0202099Y0045198D01* 443 | X0201921Y0045107D01* 444 | X0201741Y0045021D01* 445 | X0201559Y0044939D01* 446 | X0201375Y0044861D01* 447 | X0201189Y0044788D01* 448 | X0201001Y0044720D01* 449 | X0200812Y0044656D01* 450 | X0200621Y0044596D01* 451 | X0200429Y0044541D01* 452 | X0200236Y0044491D01* 453 | X0200041Y0044446D01* 454 | X0199846Y0044405D01* 455 | X0199649Y0044369D01* 456 | X0199452Y0044338D01* 457 | X0199254Y0044311D01* 458 | X0199055Y0044290D01* 459 | X0198856Y0044273D01* 460 | X0198656Y0044261D01* 461 | X0198457Y0044253D01* 462 | X0198257Y0044251D01* 463 | M02* 464 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.2/mqtt doorbell v1.2.GTP: -------------------------------------------------------------------------------- 1 | G75* 2 | %MOIN*% 3 | %OFA0B0*% 4 | %FSLAX25Y25*% 5 | %IPPOS*% 6 | %LPD*% 7 | %AMOC8* 8 | 5,1,8,0,0,1.08239X$1,22.5* 9 | % 10 | %ADD10C,0.03200*% 11 | %ADD11C,0.01600*% 12 | %ADD12R,0.05512X0.06299*% 13 | %ADD13R,0.07087X0.06299*% 14 | %ADD14R,0.11811X0.04724*% 15 | %ADD15R,0.11811X0.05512*% 16 | %ADD16R,0.04331X0.02756*% 17 | %ADD17R,0.11024X0.07874*% 18 | %ADD18R,0.05000X0.02500*% 19 | %ADD19R,0.05906X0.08268*% 20 | %ADD20R,0.04724X0.04724*% 21 | D10* 22 | X0137233Y0044645D02* 23 | X0137233Y0051459D01* 24 | X0137233Y0057859D02* 25 | X0137233Y0064673D01* 26 | X0137233Y0071073D02* 27 | X0137233Y0077887D01* 28 | X0137233Y0084287D02* 29 | X0137233Y0091102D01* 30 | X0142254Y0096122D01* 31 | X0146779Y0100648D02* 32 | X0151800Y0105669D01* 33 | X0151800Y0115905D01* 34 | X0155343Y0119448D01* 35 | X0162494Y0119448D01* 36 | X0168894Y0119448D02* 37 | X0176045Y0119448D01* 38 | X0182445Y0119448D02* 39 | X0189595Y0119448D01* 40 | X0197076Y0111968D01* 41 | X0197076Y0103781D01* 42 | X0197076Y0097381D02* 43 | X0197076Y0089194D01* 44 | X0197076Y0082794D02* 45 | X0197076Y0074606D01* 46 | X0197076Y0068206D02* 47 | X0197076Y0060019D01* 48 | X0197076Y0053619D02* 49 | X0197076Y0045432D01* 50 | D11* 51 | X0198257Y0044251D02* 52 | X0040776Y0044251D01* 53 | X0040635Y0044253D01* 54 | X0040494Y0044259D01* 55 | X0040353Y0044268D01* 56 | X0040213Y0044282D01* 57 | X0040073Y0044300D01* 58 | X0039934Y0044321D01* 59 | X0039795Y0044346D01* 60 | X0039657Y0044375D01* 61 | X0039520Y0044408D01* 62 | X0039383Y0044444D01* 63 | X0039248Y0044484D01* 64 | X0039114Y0044528D01* 65 | X0038981Y0044576D01* 66 | X0038850Y0044627D01* 67 | X0038720Y0044682D01* 68 | X0038592Y0044741D01* 69 | X0038465Y0044802D01* 70 | X0038340Y0044868D01* 71 | X0038217Y0044937D01* 72 | X0038096Y0045009D01* 73 | X0037977Y0045084D01* 74 | X0037860Y0045163D01* 75 | X0037745Y0045245D01* 76 | X0037632Y0045330D01* 77 | X0037522Y0045418D01* 78 | X0037415Y0045509D01* 79 | X0037310Y0045604D01* 80 | X0037207Y0045701D01* 81 | X0037108Y0045800D01* 82 | X0037011Y0045903D01* 83 | X0036916Y0046008D01* 84 | X0036825Y0046115D01* 85 | X0036737Y0046225D01* 86 | X0036652Y0046338D01* 87 | X0036570Y0046453D01* 88 | X0036491Y0046570D01* 89 | X0036416Y0046689D01* 90 | X0036344Y0046810D01* 91 | X0036275Y0046933D01* 92 | X0036209Y0047058D01* 93 | X0036148Y0047185D01* 94 | X0036089Y0047313D01* 95 | X0036034Y0047443D01* 96 | X0035983Y0047574D01* 97 | X0035935Y0047707D01* 98 | X0035891Y0047841D01* 99 | X0035851Y0047976D01* 100 | X0035815Y0048113D01* 101 | X0035782Y0048250D01* 102 | X0035753Y0048388D01* 103 | X0035728Y0048527D01* 104 | X0035707Y0048666D01* 105 | X0035689Y0048806D01* 106 | X0035675Y0048946D01* 107 | X0035666Y0049087D01* 108 | X0035660Y0049228D01* 109 | X0035658Y0049369D01* 110 | X0035658Y0233228D01* 111 | X0035660Y0233380D01* 112 | X0035666Y0233532D01* 113 | X0035676Y0233684D01* 114 | X0035689Y0233835D01* 115 | X0035707Y0233986D01* 116 | X0035728Y0234137D01* 117 | X0035754Y0234287D01* 118 | X0035783Y0234436D01* 119 | X0035816Y0234585D01* 120 | X0035853Y0234732D01* 121 | X0035893Y0234879D01* 122 | X0035938Y0235024D01* 123 | X0035986Y0235168D01* 124 | X0036038Y0235311D01* 125 | X0036093Y0235453D01* 126 | X0036152Y0235593D01* 127 | X0036215Y0235732D01* 128 | X0036281Y0235869D01* 129 | X0036351Y0236004D01* 130 | X0036424Y0236137D01* 131 | X0036501Y0236268D01* 132 | X0036581Y0236398D01* 133 | X0036664Y0236525D01* 134 | X0036750Y0236650D01* 135 | X0036840Y0236773D01* 136 | X0036933Y0236893D01* 137 | X0037029Y0237011D01* 138 | X0037128Y0237127D01* 139 | X0037230Y0237240D01* 140 | X0037334Y0237350D01* 141 | X0037442Y0237458D01* 142 | X0037552Y0237562D01* 143 | X0037665Y0237664D01* 144 | X0037781Y0237763D01* 145 | X0037899Y0237859D01* 146 | X0038019Y0237952D01* 147 | X0038142Y0238042D01* 148 | X0038267Y0238128D01* 149 | X0038394Y0238211D01* 150 | X0038524Y0238291D01* 151 | X0038655Y0238368D01* 152 | X0038788Y0238441D01* 153 | X0038923Y0238511D01* 154 | X0039060Y0238577D01* 155 | X0039199Y0238640D01* 156 | X0039339Y0238699D01* 157 | X0039481Y0238754D01* 158 | X0039624Y0238806D01* 159 | X0039768Y0238854D01* 160 | X0039913Y0238899D01* 161 | X0040060Y0238939D01* 162 | X0040207Y0238976D01* 163 | X0040356Y0239009D01* 164 | X0040505Y0239038D01* 165 | X0040655Y0239064D01* 166 | X0040806Y0239085D01* 167 | X0040957Y0239103D01* 168 | X0041108Y0239116D01* 169 | X0041260Y0239126D01* 170 | X0041412Y0239132D01* 171 | X0041564Y0239134D01* 172 | X0041564Y0239133D02* 173 | X0111249Y0239133D01* 174 | X0111365Y0239131D01* 175 | X0111481Y0239125D01* 176 | X0111596Y0239116D01* 177 | X0111711Y0239103D01* 178 | X0111826Y0239086D01* 179 | X0111940Y0239065D01* 180 | X0112054Y0239040D01* 181 | X0112166Y0239012D01* 182 | X0112277Y0238980D01* 183 | X0112388Y0238945D01* 184 | X0112497Y0238906D01* 185 | X0112605Y0238863D01* 186 | X0112711Y0238817D01* 187 | X0112816Y0238768D01* 188 | X0112919Y0238715D01* 189 | X0113021Y0238658D01* 190 | X0113120Y0238599D01* 191 | X0113217Y0238536D01* 192 | X0113313Y0238470D01* 193 | X0113406Y0238401D01* 194 | X0113497Y0238329D01* 195 | X0113585Y0238254D01* 196 | X0113671Y0238176D01* 197 | X0113754Y0238095D01* 198 | X0113835Y0238012D01* 199 | X0113913Y0237926D01* 200 | X0113988Y0237838D01* 201 | X0114060Y0237747D01* 202 | X0114129Y0237654D01* 203 | X0114195Y0237558D01* 204 | X0114258Y0237461D01* 205 | X0114317Y0237362D01* 206 | X0114374Y0237260D01* 207 | X0114427Y0237157D01* 208 | X0114476Y0237052D01* 209 | X0114522Y0236946D01* 210 | X0114565Y0236838D01* 211 | X0114604Y0236729D01* 212 | X0114639Y0236618D01* 213 | X0114671Y0236507D01* 214 | X0114699Y0236395D01* 215 | X0114724Y0236281D01* 216 | X0114745Y0236167D01* 217 | X0114762Y0236052D01* 218 | X0114775Y0235937D01* 219 | X0114784Y0235822D01* 220 | X0114790Y0235706D01* 221 | X0114792Y0235590D01* 222 | X0114792Y0218661D01* 223 | X0114794Y0218566D01* 224 | X0114800Y0218471D01* 225 | X0114809Y0218376D01* 226 | X0114823Y0218282D01* 227 | X0114840Y0218189D01* 228 | X0114861Y0218096D01* 229 | X0114885Y0218004D01* 230 | X0114914Y0217913D01* 231 | X0114945Y0217823D01* 232 | X0114981Y0217735D01* 233 | X0115020Y0217648D01* 234 | X0115063Y0217563D01* 235 | X0115108Y0217480D01* 236 | X0115158Y0217399D01* 237 | X0115210Y0217319D01* 238 | X0115266Y0217242D01* 239 | X0115324Y0217167D01* 240 | X0115386Y0217095D01* 241 | X0115451Y0217025D01* 242 | X0115518Y0216958D01* 243 | X0115588Y0216893D01* 244 | X0115660Y0216831D01* 245 | X0115735Y0216773D01* 246 | X0115812Y0216717D01* 247 | X0115892Y0216665D01* 248 | X0115973Y0216615D01* 249 | X0116056Y0216570D01* 250 | X0116141Y0216527D01* 251 | X0116228Y0216488D01* 252 | X0116316Y0216452D01* 253 | X0116406Y0216421D01* 254 | X0116497Y0216392D01* 255 | X0116589Y0216368D01* 256 | X0116682Y0216347D01* 257 | X0116775Y0216330D01* 258 | X0116869Y0216316D01* 259 | X0116964Y0216307D01* 260 | X0117059Y0216301D01* 261 | X0117154Y0216299D01* 262 | X0117154Y0216298D02* 263 | X0162036Y0216298D01* 264 | X0162036Y0216299D02* 265 | X0162131Y0216301D01* 266 | X0162226Y0216307D01* 267 | X0162321Y0216316D01* 268 | X0162415Y0216330D01* 269 | X0162508Y0216347D01* 270 | X0162601Y0216368D01* 271 | X0162693Y0216392D01* 272 | X0162784Y0216421D01* 273 | X0162874Y0216452D01* 274 | X0162962Y0216488D01* 275 | X0163049Y0216527D01* 276 | X0163134Y0216570D01* 277 | X0163217Y0216615D01* 278 | X0163298Y0216665D01* 279 | X0163378Y0216717D01* 280 | X0163455Y0216773D01* 281 | X0163530Y0216831D01* 282 | X0163602Y0216893D01* 283 | X0163672Y0216958D01* 284 | X0163739Y0217025D01* 285 | X0163804Y0217095D01* 286 | X0163866Y0217167D01* 287 | X0163924Y0217242D01* 288 | X0163980Y0217319D01* 289 | X0164032Y0217399D01* 290 | X0164082Y0217480D01* 291 | X0164127Y0217563D01* 292 | X0164170Y0217648D01* 293 | X0164209Y0217735D01* 294 | X0164245Y0217823D01* 295 | X0164276Y0217913D01* 296 | X0164305Y0218004D01* 297 | X0164329Y0218096D01* 298 | X0164350Y0218189D01* 299 | X0164367Y0218282D01* 300 | X0164381Y0218376D01* 301 | X0164390Y0218471D01* 302 | X0164396Y0218566D01* 303 | X0164398Y0218661D01* 304 | X0164398Y0237558D01* 305 | X0164400Y0237644D01* 306 | X0164405Y0237730D01* 307 | X0164415Y0237815D01* 308 | X0164428Y0237900D01* 309 | X0164445Y0237984D01* 310 | X0164465Y0238068D01* 311 | X0164489Y0238150D01* 312 | X0164517Y0238231D01* 313 | X0164548Y0238312D01* 314 | X0164582Y0238390D01* 315 | X0164620Y0238467D01* 316 | X0164662Y0238543D01* 317 | X0164706Y0238616D01* 318 | X0164754Y0238687D01* 319 | X0164805Y0238757D01* 320 | X0164859Y0238824D01* 321 | X0164915Y0238888D01* 322 | X0164975Y0238950D01* 323 | X0165037Y0239010D01* 324 | X0165101Y0239066D01* 325 | X0165168Y0239120D01* 326 | X0165238Y0239171D01* 327 | X0165309Y0239219D01* 328 | X0165383Y0239263D01* 329 | X0165458Y0239305D01* 330 | X0165535Y0239343D01* 331 | X0165613Y0239377D01* 332 | X0165694Y0239408D01* 333 | X0165775Y0239436D01* 334 | X0165857Y0239460D01* 335 | X0165941Y0239480D01* 336 | X0166025Y0239497D01* 337 | X0166110Y0239510D01* 338 | X0166195Y0239520D01* 339 | X0166281Y0239525D01* 340 | X0166367Y0239527D01* 341 | X0200225Y0239527D01* 342 | X0200382Y0239525D01* 343 | X0200539Y0239519D01* 344 | X0200696Y0239509D01* 345 | X0200852Y0239496D01* 346 | X0201008Y0239478D01* 347 | X0201164Y0239457D01* 348 | X0201319Y0239431D01* 349 | X0201473Y0239402D01* 350 | X0201627Y0239369D01* 351 | X0201779Y0239332D01* 352 | X0201931Y0239292D01* 353 | X0202082Y0239247D01* 354 | X0202231Y0239199D01* 355 | X0202379Y0239147D01* 356 | X0202526Y0239092D01* 357 | X0202672Y0239032D01* 358 | X0202816Y0238970D01* 359 | X0202958Y0238903D01* 360 | X0203099Y0238833D01* 361 | X0203238Y0238760D01* 362 | X0203375Y0238683D01* 363 | X0203510Y0238603D01* 364 | X0203642Y0238519D01* 365 | X0203773Y0238432D01* 366 | X0203902Y0238342D01* 367 | X0204028Y0238249D01* 368 | X0204152Y0238153D01* 369 | X0204274Y0238053D01* 370 | X0204393Y0237951D01* 371 | X0204509Y0237845D01* 372 | X0204623Y0237737D01* 373 | X0204734Y0237626D01* 374 | X0204842Y0237512D01* 375 | X0204948Y0237396D01* 376 | X0205050Y0237277D01* 377 | X0205150Y0237155D01* 378 | X0205246Y0237031D01* 379 | X0205339Y0236905D01* 380 | X0205429Y0236776D01* 381 | X0205516Y0236645D01* 382 | X0205600Y0236513D01* 383 | X0205680Y0236378D01* 384 | X0205757Y0236241D01* 385 | X0205830Y0236102D01* 386 | X0205900Y0235961D01* 387 | X0205967Y0235819D01* 388 | X0206029Y0235675D01* 389 | X0206089Y0235529D01* 390 | X0206144Y0235382D01* 391 | X0206196Y0235234D01* 392 | X0206244Y0235085D01* 393 | X0206289Y0234934D01* 394 | X0206329Y0234782D01* 395 | X0206366Y0234630D01* 396 | X0206399Y0234476D01* 397 | X0206428Y0234322D01* 398 | X0206454Y0234167D01* 399 | X0206475Y0234011D01* 400 | X0206493Y0233855D01* 401 | X0206506Y0233699D01* 402 | X0206516Y0233542D01* 403 | X0206522Y0233385D01* 404 | X0206524Y0233228D01* 405 | X0206524Y0052519D01* 406 | X0206525Y0052519D02* 407 | X0206523Y0052319D01* 408 | X0206515Y0052120D01* 409 | X0206503Y0051920D01* 410 | X0206486Y0051721D01* 411 | X0206465Y0051522D01* 412 | X0206438Y0051324D01* 413 | X0206407Y0051127D01* 414 | X0206371Y0050930D01* 415 | X0206330Y0050735D01* 416 | X0206285Y0050540D01* 417 | X0206235Y0050347D01* 418 | X0206180Y0050155D01* 419 | X0206120Y0049964D01* 420 | X0206056Y0049775D01* 421 | X0205988Y0049587D01* 422 | X0205915Y0049401D01* 423 | X0205837Y0049217D01* 424 | X0205755Y0049035D01* 425 | X0205669Y0048855D01* 426 | X0205578Y0048677D01* 427 | X0205483Y0048501D01* 428 | X0205384Y0048327D01* 429 | X0205280Y0048156D01* 430 | X0205173Y0047988D01* 431 | X0205061Y0047822D01* 432 | X0204946Y0047659D01* 433 | X0204827Y0047499D01* 434 | X0204703Y0047342D01* 435 | X0204576Y0047187D01* 436 | X0204446Y0047036D01* 437 | X0204311Y0046888D01* 438 | X0204174Y0046744D01* 439 | X0204032Y0046602D01* 440 | X0203888Y0046465D01* 441 | X0203740Y0046330D01* 442 | X0203589Y0046200D01* 443 | X0203434Y0046073D01* 444 | X0203277Y0045949D01* 445 | X0203117Y0045830D01* 446 | X0202954Y0045715D01* 447 | X0202788Y0045603D01* 448 | X0202620Y0045496D01* 449 | X0202449Y0045392D01* 450 | X0202275Y0045293D01* 451 | X0202099Y0045198D01* 452 | X0201921Y0045107D01* 453 | X0201741Y0045021D01* 454 | X0201559Y0044939D01* 455 | X0201375Y0044861D01* 456 | X0201189Y0044788D01* 457 | X0201001Y0044720D01* 458 | X0200812Y0044656D01* 459 | X0200621Y0044596D01* 460 | X0200429Y0044541D01* 461 | X0200236Y0044491D01* 462 | X0200041Y0044446D01* 463 | X0199846Y0044405D01* 464 | X0199649Y0044369D01* 465 | X0199452Y0044338D01* 466 | X0199254Y0044311D01* 467 | X0199055Y0044290D01* 468 | X0198856Y0044273D01* 469 | X0198656Y0044261D01* 470 | X0198457Y0044253D01* 471 | X0198257Y0044251D01* 472 | D12* 473 | X0156029Y0136669D03* 474 | X0145006Y0136669D03* 475 | D13* 476 | X0185814Y0145432D03* 477 | X0185814Y0156456D03* 478 | X0185261Y0166298D03* 479 | X0185261Y0177322D03* 480 | X0145107Y0083621D03* 481 | X0145107Y0072598D03* 482 | X0066753Y0217024D03* 483 | X0066753Y0228047D03* 484 | X0090271Y0230580D03* 485 | X0090271Y0219557D03* 486 | D14* 487 | X0105832Y0208480D03* 488 | X0105832Y0200606D03* 489 | X0105832Y0192731D03* 490 | X0105832Y0184857D03* 491 | X0105832Y0176983D03* 492 | X0105832Y0169109D03* 493 | X0105832Y0161235D03* 494 | X0105832Y0153361D03* 495 | X0170399Y0153361D03* 496 | X0170399Y0161235D03* 497 | X0170399Y0169109D03* 498 | X0170399Y0176983D03* 499 | X0170399Y0184857D03* 500 | X0170399Y0192731D03* 501 | X0170399Y0200606D03* 502 | X0170399Y0208480D03* 503 | D15* 504 | X0126987Y0129059D03* 505 | X0108090Y0129059D03* 506 | D16* 507 | X0057697Y0131262D03* 508 | X0057697Y0119451D03* 509 | D17* 510 | X0047264Y0125357D03* 511 | D18* 512 | X0047126Y0125357D03* 513 | X0049094Y0125357D03* 514 | X0051457Y0125357D03* 515 | X0054606Y0125357D03* 516 | X0057362Y0125357D03* 517 | X0044764Y0124963D03* 518 | D19* 519 | X0165580Y0089920D03* 520 | X0179753Y0089920D03* 521 | D20* 522 | X0056270Y0084583D03* 523 | X0046034Y0084583D03* 524 | X0046034Y0060567D03* 525 | X0056270Y0060567D03* 526 | M02* 527 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.2/mqtt doorbell v1.2.TXT: -------------------------------------------------------------------------------- 1 | % 2 | M48 3 | M72 4 | T01C0.02362 5 | T02C0.03200 6 | T03C0.03937 7 | T04C0.04000 8 | T05C0.04700 9 | % 10 | T01 11 | X199827Y121498 12 | X151402Y167954 13 | X149438Y179684 14 | X140772Y184883 15 | X136441Y191970 16 | X121480Y193151 17 | X135260Y172285 18 | X158488Y207718 19 | X177780Y227797 20 | X184866Y190789 21 | X98646Y217167 22 | X46677Y205750 23 | T02 24 | X168060Y106023 25 | X178060Y106023 26 | X178060Y136023 27 | X168060Y136023 28 | X79115Y171145 29 | X79115Y201145 30 | T03 31 | X96205Y61655 32 | X115890Y74647 33 | X96205Y86458 34 | T04 35 | X44206Y93535 36 | X44206Y111335 37 | X69806Y111335 38 | X69806Y93535 39 | X92740Y128939 40 | X92740Y138939 41 | X92740Y148939 42 | X92740Y158939 43 | X61089Y171306 44 | X43289Y171306 45 | X43289Y145706 46 | X61089Y145706 47 | X197801Y180302 48 | X197801Y190302 49 | X197801Y200302 50 | X197801Y210302 51 | X197801Y220302 52 | X197801Y230302 53 | T05 54 | X182902Y61298 55 | X163217Y61298 56 | M30 57 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.2/mqtt doorbell v1.2.dri: -------------------------------------------------------------------------------- 1 | Generated by EAGLE CAM Processor 7.6.0 2 | 3 | Drill Station Info File: C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell v1.2/mqtt doorbell v1.2.dri 4 | 5 | Date : 1-7-2018 14:38 6 | Drills : generated 7 | Device : Excellon drill station, coordinate format 2.5 inch 8 | 9 | Parameter settings: 10 | 11 | Tolerance Drill + : 0.00 % 12 | Tolerance Drill - : 0.00 % 13 | Rotate : no 14 | Mirror : no 15 | Optimize : yes 16 | Auto fit : yes 17 | OffsetX : 0inch 18 | OffsetY : 0inch 19 | Layers : Drills Holes 20 | 21 | Drill File Info: 22 | 23 | Data Mode : Absolute 24 | Units : 1/100000 Inch 25 | 26 | Drills used: 27 | 28 | Code Size used 29 | 30 | T01 0.0236inch 12 31 | T02 0.0320inch 6 32 | T03 0.0394inch 3 33 | T04 0.0400inch 18 34 | T05 0.0470inch 2 35 | 36 | Total number of drills: 41 37 | 38 | Plotfiles: 39 | 40 | C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell v1.2/mqtt doorbell v1.2.TXT 41 | -------------------------------------------------------------------------------- /Eagle&gerber files/v1.2/mqtt doorbell v1.2.gpi: -------------------------------------------------------------------------------- 1 | Generated by EAGLE CAM Processor 7.6.0 2 | 3 | Photoplotter Info File: C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell v1.2/mqtt doorbell v1.2.gpi 4 | 5 | Date : 1-7-2018 14:38 6 | Plotfile : C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQTT doorbell v1.2/mqtt doorbell v1.2.GTL 7 | Apertures : generated: 8 | Device : Gerber RS-274-X photoplotter, coordinate format 2.5 inch 9 | 10 | Parameter settings: 11 | 12 | Emulate Apertures : no 13 | Tolerance Draw + : 0.00 % 14 | Tolerance Draw - : 0.00 % 15 | Tolerance Flash + : 0.00 % 16 | Tolerance Flash - : 0.00 % 17 | Rotate : no 18 | Mirror : no 19 | Optimize : yes 20 | Auto fit : yes 21 | OffsetX : 0inch 22 | OffsetY : 0inch 23 | 24 | Plotfile Info: 25 | 26 | Coordinate Format : 2.5 27 | Coordinate Units : Inch 28 | Data Mode : Absolute 29 | Zero Suppression : None 30 | End Of Block : * 31 | 32 | Apertures used: 33 | 34 | Code Shape Size used 35 | 36 | D10 draw 0.0320inch 1602 37 | D11 draw 0.0160inch 16 38 | D12 rectangle 0.0551inch x 0.0630inch 2 39 | D13 rectangle 0.0709inch x 0.0630inch 10 40 | D14 rectangle 0.1181inch x 0.0472inch 16 41 | D15 draw 0.0600inch 18 42 | D16 draw 0.0520inch 6 43 | D17 rectangle 0.1181inch x 0.0551inch 2 44 | D18 rectangle 0.0433inch x 0.0276inch 2 45 | D19 rectangle 0.0709inch x 0.0276inch 1 46 | D20 rectangle 0.1102inch x 0.0787inch 1 47 | D21 rectangle 0.0500inch x 0.0250inch 6 48 | D22 draw 0.0705inch 2 49 | D23 rectangle 0.0591inch x 0.0827inch 2 50 | D24 square 0.0472inch 4 51 | D25 draw 0.0787inch 3 52 | D26 square 0.0356inch 5 53 | D27 round 0.0356inch 7 54 | D28 draw 0.0500inch 4 55 | 56 | -------------------------------------------------------------------------------- /Eagle&gerber files/v2.0/mqtt doorbell v2a.TXT: -------------------------------------------------------------------------------- 1 | % 2 | M48 3 | M72 4 | T01C0.02362 5 | T02C0.03200 6 | T03C0.03500 7 | T04C0.03740 8 | T05C0.03937 9 | T06C0.04000 10 | T07C0.04700 11 | % 12 | T01 13 | X38803Y92757 14 | X58882Y167954 15 | X40772Y188427 16 | X61638Y192757 17 | X97858Y202994 18 | X103370Y164017 19 | X125024Y159293 20 | X136047Y161655 21 | X133685Y182915 22 | X138016Y191183 23 | X156913Y233309 24 | X136835Y137639 25 | T02 26 | X49827Y211167 27 | X49827Y223167 28 | T03 29 | X71087Y157364 30 | X71087Y147364 31 | X71087Y137364 32 | X71087Y127364 33 | T04 34 | X20299Y105946 35 | X20299Y96891 36 | X19906Y193348 37 | X19906Y202403 38 | T05 39 | X74945Y86458 40 | X94630Y74647 41 | X74945Y61655 42 | T06 43 | X176541Y180302 44 | X176541Y190302 45 | X176541Y200302 46 | X176541Y210302 47 | X176541Y220302 48 | X176541Y230302 49 | T07 50 | X161643Y61298 51 | X141957Y61298 52 | M30 53 | -------------------------------------------------------------------------------- /Eagle&gerber files/v2.0/mqtt doorbell v2a.dri: -------------------------------------------------------------------------------- 1 | Generated by EAGLE CAM Processor 7.6.0 2 | 3 | Drill Station Info File: C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQtt doorbell v2/mqtt doorbell v2a.dri 4 | 5 | Date : 15-7-2018 10:57 6 | Drills : generated 7 | Device : Excellon drill station, coordinate format 2.5 inch 8 | 9 | Parameter settings: 10 | 11 | Tolerance Drill + : 0.00 % 12 | Tolerance Drill - : 0.00 % 13 | Rotate : no 14 | Mirror : no 15 | Optimize : yes 16 | Auto fit : yes 17 | OffsetX : 0inch 18 | OffsetY : 0inch 19 | Layers : Drills Holes 20 | 21 | Drill File Info: 22 | 23 | Data Mode : Absolute 24 | Units : 1/100000 Inch 25 | 26 | Drills used: 27 | 28 | Code Size used 29 | 30 | T01 0.0236inch 12 31 | T02 0.0320inch 2 32 | T03 0.0350inch 4 33 | T04 0.0374inch 4 34 | T05 0.0394inch 3 35 | T06 0.0400inch 6 36 | T07 0.0470inch 2 37 | 38 | Total number of drills: 33 39 | 40 | Plotfiles: 41 | 42 | C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQtt doorbell v2/mqtt doorbell v2a.TXT 43 | -------------------------------------------------------------------------------- /Eagle&gerber files/v2.0/mqtt doorbell v2a.gpi: -------------------------------------------------------------------------------- 1 | Generated by EAGLE CAM Processor 7.6.0 2 | 3 | Photoplotter Info File: C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQtt doorbell v2/mqtt doorbell v2a.gpi 4 | 5 | Date : 15-7-2018 10:57 6 | Plotfile : C:/Users/Erik/OneDrive - Lemcke solutions/eagle backups/MQtt doorbell v2/mqtt doorbell v2a.GTL 7 | Apertures : generated: 8 | Device : Gerber RS-274-X photoplotter, coordinate format 2.5 inch 9 | 10 | Parameter settings: 11 | 12 | Emulate Apertures : no 13 | Tolerance Draw + : 0.00 % 14 | Tolerance Draw - : 0.00 % 15 | Tolerance Flash + : 0.00 % 16 | Tolerance Flash - : 0.00 % 17 | Rotate : no 18 | Mirror : no 19 | Optimize : yes 20 | Auto fit : yes 21 | OffsetX : 0inch 22 | OffsetY : 0inch 23 | 24 | Plotfile Info: 25 | 26 | Coordinate Format : 2.5 27 | Coordinate Units : Inch 28 | Data Mode : Absolute 29 | Zero Suppression : None 30 | End Of Block : * 31 | 32 | Apertures used: 33 | 34 | Code Shape Size used 35 | 36 | D10 draw 0.0320inch 1581 37 | D11 draw 0.0160inch 23 38 | D12 rectangle 0.1181inch x 0.0472inch 16 39 | D13 draw 0.0600inch 6 40 | D14 rectangle 0.1181inch x 0.0551inch 2 41 | D15 rectangle 0.0276inch x 0.0433inch 2 42 | D16 rectangle 0.0276inch x 0.0709inch 1 43 | D17 rectangle 0.0787inch x 0.1102inch 1 44 | D18 rectangle 0.0250inch x 0.0500inch 6 45 | D19 draw 0.0705inch 2 46 | D20 rectangle 0.0591inch x 0.0827inch 2 47 | D21 square 0.0472inch 4 48 | D22 draw 0.0787inch 3 49 | D23 draw 0.0088inch 12 50 | D24 rectangle 0.0500inch x 0.0250inch 6 51 | D25 draw 0.0000inch 6 52 | D26 rectangle 0.0350inch x 0.0570inch 4 53 | D27 rectangle 0.0700inch x 0.0550inch 4 54 | D28 rectangle 0.0400inch x 0.0700inch 4 55 | D29 square 0.0650inch 1 56 | D30 round 0.0650inch 3 57 | D31 square 0.0356inch 12 58 | D32 draw 0.0400inch 18 59 | 60 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | ![Imgur](https://i.imgur.com/4t2Ilsw.png) 2 | 3 | This repository contains sample code and eagle/gerber/STL files for the Doorbell Modernizr I sell on tindie: https://www.tindie.com/products/ErikLemcke/doorbell-modernizr/ 4 | 5 | The Doorbell Modernizr is a device that can transform your ordinary doorbell (running on 8 - 24v ac) into a "smart" wifi doorbell. 6 | Whenever someone presses your doorbell, the Doorbell Modernizr can send a signal to your home automation system (currently supported: Home assistant, Domoticz and Openhab). 7 | 8 | If you want to program the device yourself (for example with the Arduino IDE),provide it with power, plug in a ftdi module and set the dipswitch on the pcb to on. 9 | 10 | I use the folowing settings for programming: 11 | 12 | - Board: Generic EP8266 module 13 | - Flash mode: QIO 14 | - Flash size: 512K (64K SPIFFS) 15 | - Debugging port: Disabled 16 | - Debug level: None 17 | - IwIP variant: V2 lower memory 18 | - reset method: ck 19 | - crystal frequency: 26Mhz 20 | - Flash frequency: 40Mhz 21 | - CPU frequency: 80Mhz 22 | - Builtin led: 2 23 | - Upload speed: 115200 24 | - Erase flash: Only sketch 25 | 26 | If you are going to build it yourself, you will need the folowing parts: 27 | 28 | #### To assemble this board, you will need the following parts: 29 | - 1x ESP12f module [(sample)](https://www.aliexpress.com/item/ESP8266-Remote-Serial-WIFI-Transceiver-Wireless-Module-Esp-12-AP-STA-TOP/32646271039.html?spm=2114.search0104.3.8.2d866f9bg356HJ&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=2d4aea06-a96e-40a3-a231-87c2b62a80c4-1&algo_pvid=2d4aea06-a96e-40a3-a231-87c2b62a80c4&transAbTest=ae803_2&priceBeautifyAB=0) 30 | - 4x 10k resitor, smd size 1206 [(sample)](https://www.aliexpress.com/item/Free-Shipping-100PCS-1206-10K-10K-OHM-1-smd-resistor/1090806202.html?spm=2114.search0104.3.1.43a21240XRFdDf&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=709525b8-8593-455c-8efa-07c3f3ce8228-0&algo_pvid=709525b8-8593-455c-8efa-07c3f3ce8228&transAbTest=ae803_2&priceBeautifyAB=0) 31 | - 1x 10k resitor, thru hole [(sample)](https://www.aliexpress.com/store/product/100pcs-set-1-4W-Resistance-1-Metal-Film-Resistor-Pack-Assorted-Kit-1K-2K-4-7K/1504763_32861819464.html?spm=2114.search0104.3.1.4c0d36baXYxkSz&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10151_10065_10344_10068_10342_10343_10340_10341_10696_10084_10083_10618_10304_10307_10820_10821_10301_10843_10059_100031_10103_10624_10623_10622_10621_10620,searchweb201603_51,ppcSwitch_5&algo_expid=e3fd0740-6222-418d-9183-fe36bdfb2f1d-0&algo_pvid=e3fd0740-6222-418d-9183-fe36bdfb2f1d&transAbTest=ae803_2&priceBeautifyAB=0) 32 | - 1x 330r resitor, smd size 1206 [(sample)](https://www.aliexpress.com/item/100Pcs-1206-SMD-resistor-0R-10M-1-2W-0-1-10-100-150-220-330-ohm/32847115923.html?spm=2114.search0104.3.1.4bcc1954MGyEbp&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=03d36d71-9210-4daa-ba6d-0d927a84b877-0&algo_pvid=03d36d71-9210-4daa-ba6d-0d927a84b877&transAbTest=ae803_2&priceBeautifyAB=0) 33 | - 1x 1p dip switch [(sample)](https://www.aliexpress.com/item/10PCS-Lot-DIP-Switch-1P-2-54mm-Toggle-Switch-Red-Snap-Switch/32778200806.html?spm=2114.search0104.3.24.1fe1d1a1sUUCAD&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=cc64cbff-a764-4662-8452-5fbc674b3830-3&algo_pvid=cc64cbff-a764-4662-8452-5fbc674b3830&transAbTest=ae803_2&priceBeautifyAB=0) 34 | - 2x tactile switch [(sample)](https://www.aliexpress.com/item/THGS-25pcs-Round-Pushbutton-4-Pins-SMD-SMT-Momentary-Tactile-Switch/32721411394.html?spm=2114.search0104.3.69.24d25580z5KXIm&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=72ad9c0a-894e-4d0d-a650-c844d18cb295-12&algo_pvid=72ad9c0a-894e-4d0d-a650-c844d18cb295&transAbTest=ae803_2&priceBeautifyAB=0) 35 | - 1x 470uf capacitor [(sample)](https://www.aliexpress.com/item/SMD-electrolytic-capacitor-470UF-6-3V-6-3-7-7MM-VT-type-chip-polarity-temperature-105/32814865187.html?spm=2114.search0104.3.87.3c9272dblaF34k&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=fa08a327-d750-4922-8d0c-8a368b171ecc-13&algo_pvid=fa08a327-d750-4922-8d0c-8a368b171ecc&transAbTest=ae803_2&priceBeautifyAB=0) 36 | - 1x 100nf capacitor, SMD size 1206 [(sample)](https://www.aliexpress.com/item/Free-Shipping-100PCS-1206-104-100NF-0-1UF-1206-SMD-capacitance/1096160798.html?spm=2114.search0104.3.1.71d322c9BiZITD&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=ae9db756-53ad-4fca-853d-d6855f03eda6-0&algo_pvid=ae9db756-53ad-4fca-853d-d6855f03eda6&transAbTest=ae803_2&priceBeautifyAB=0) 37 | - 1x 2pin screw terminal [(sample)](https://www.aliexpress.com/item/20-PCS-KF301-5-0-2P-blue-KF301-3P-Pitch-5-0mm-KF301-2P-Straight-Pin/32833138976.html?spm=2114.search0104.3.17.6b284c7ctDJEA2&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=dd191ab4-0937-468a-a91b-19ac53064bd2-2&algo_pvid=dd191ab4-0937-468a-a91b-19ac53064bd2&transAbTest=ae803_2&priceBeautifyAB=0) 38 | - 1x 6pin female header [(sample)](https://www.aliexpress.com/item/40pcs-2-54MM-6Pin-11MM-Long-Needle-Female-Header-Strip-Stackable-Header-for-arduino-W5100-6p/32668087711.html?spm=2114.search0104.3.83.154721f6xN5o5u&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=c0a98dbf-f354-486c-be51-a9068dfd1d38-12&algo_pvid=c0a98dbf-f354-486c-be51-a9068dfd1d38&transAbTest=ae803_2&priceBeautifyAB=0) 39 | - 1x HT7333 LDO [(sample)](https://www.aliexpress.com/item/10PCS-HT7333-A-SOT-89-HT7333-1-SOT89-HT7333-7333-1-SMD-7333A-1-new-and/32818420909.html?spm=2114.search0104.3.2.4b9c73ea1CR81c&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=5d51c538-7dd5-42bd-8e93-c66127f056bf-0&algo_pvid=5d51c538-7dd5-42bd-8e93-c66127f056bf&transAbTest=ae803_2&priceBeautifyAB=0) 40 | - 1x 1N4148 diode, smd size 1206 [(sample)](https://www.aliexpress.com/item/100pcs-1206-1N4148W-T4-1N4148-SOD-123-Switching-Diode/32354597825.html?spm=2114.search0104.3.1.65002565fkmX0i&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=7cf2de10-d2b9-41eb-a268-300ace100396-0&algo_pvid=7cf2de10-d2b9-41eb-a268-300ace100396&transAbTest=ae803_2&priceBeautifyAB=0) 41 | - 1x PC817 Optocoupler [(sample)](https://www.aliexpress.com/item/100PCS-PC817C-DIP-PC817-C-DIP4-PC817-C-new-and-original-IC-free-shipping/32847601895.html?spm=2114.search0104.3.9.32aa76dfaNDbvv&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=e8d061c3-7004-462e-899c-a522d5885630-1&algo_pvid=e8d061c3-7004-462e-899c-a522d5885630&transAbTest=ae803_2&priceBeautifyAB=0) 42 | - 1x 5.5 x 2.1 mm Female DC Power Jack Plug Socket [sample](https://www.aliexpress.com/item/10Pcs-PCB-Mount-5-5-x-2-1-mm-Female-DC-Power-Jack-Plug-Socket-Connector/32813661863.html?spm=2114.search0104.3.181.7aee2436K2nMqV&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=b89433cb-84ea-4f2c-b110-90657c1acf5a-26&algo_pvid=b89433cb-84ea-4f2c-b110-90657c1acf5a&transAbTest=ae803_2&priceBeautifyAB=0) 43 | - 1x 5v power supply [sample](https://www.aliexpress.com/item/1PCS-High-quality-AC-100V-240V-Converter-Switching-power-adapter-DC-5V-2A-2000MA-Supply-EU/32496043021.html?spm=2114.search0104.3.1.61197a5aNbvepX&ws_ab_test=searchweb0_0,searchweb201602_4_10152_10709_10151_10065_10344_10068_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10710_10307_10301_5722715_5711215_10059_308_100031_10103_10624_10623_10622_5711315_5722515_10621_10620,searchweb201603_36,ppcSwitch_5&algo_expid=0f10a11c-3fea-4ce8-9680-a6fa20d2b76d-3&algo_pvid=0f10a11c-3fea-4ce8-9680-a6fa20d2b76d&transAbTest=ae803_2&priceBeautifyAB=0) 44 | - 1x MB6S bridge rectifier [sample](https://www.aliexpress.com/item/Free-shipping-20pcs-600V-0-5A-SOP-4-SMD-rectifier-diode-bridge-mb6s/32336867082.html?spm=2114.search0104.3.1.25d453e0kUU3ZK&ws_ab_test=searchweb0_0,searchweb201602_3_10152_10151_10065_10344_10068_5723115_5722815_10342_10343_10340_5722915_10341_5722615_10696_10084_10083_10618_10304_10307_10820_10301_10821_5722715_10843_10059_100031_10103_10624_10623_10622_5722515_10621_10620,searchweb201603_50,ppcSwitch_5&algo_expid=d8bc8f3c-cd8b-4e61-a706-30cb63aab87a-0&algo_pvid=d8bc8f3c-cd8b-4e61-a706-30cb63aab87a&transAbTest=ae803_2&priceBeautifyAB=0) 45 | 46 | -------------------------------------------------------------------------------- /arduino sample code/For v1.0 & v1.1/simple sample/sample.ino: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | #define wifi_ssid "YOUR WIFI NAME" 5 | #define wifi_password "YOUR WIFI PASSWORD" 6 | 7 | #define mqtt_server "YOUR HOME ASSISTANT MQTT IP" 8 | #define mqtt_user "YOUR HOME ASSISTANT USERNAME" 9 | #define mqtt_password "YOUR HOME ASSISTANT PASSWORD" 10 | 11 | #define doorbell_topic "hal/doorbell" //change to whatever you like to use a s topic 12 | 13 | int doorbellState = 0; 14 | const int doorbellPin = 2; 15 | 16 | WiFiClient espClient; 17 | PubSubClient client(espClient); 18 | 19 | void setup() { 20 | Serial.begin(115200); 21 | 22 | setup_wifi(); 23 | client.setServer(mqtt_server, 1883); 24 | pinMode(doorbellPin, INPUT_PULLUP); 25 | 26 | WiFi.mode(WIFI_STA); //don't be a AP 27 | } 28 | 29 | void setup_wifi() { 30 | delay(10); 31 | // We start by connecting to a WiFi network 32 | Serial.println(); 33 | Serial.print("Connecting to "); 34 | Serial.println(wifi_ssid); 35 | 36 | WiFi.mode(WIFI_STA); 37 | WiFi.begin(wifi_ssid, wifi_password); 38 | 39 | while (WiFi.status() != WL_CONNECTED) { 40 | delay(500); 41 | Serial.print("."); 42 | } 43 | 44 | Serial.println(""); 45 | Serial.println("WiFi connected"); 46 | Serial.println("IP address: "); 47 | Serial.println(WiFi.localIP()); 48 | } 49 | 50 | void reconnect() { 51 | // Loop until we're reconnected 52 | while (!client.connected()) { 53 | Serial.print("Attempting MQTT connection..."); 54 | // Attempt to connect 55 | // If you do not want to use a username and password, change next line to 56 | // if (client.connect("ESP8266Client")) { 57 | if (client.connect("ESP8266Client", mqtt_user, mqtt_password)) { 58 | Serial.println("connected"); 59 | } else { 60 | Serial.print("failed, rc="); 61 | Serial.print(client.state()); 62 | Serial.println(" try again in 5 seconds"); 63 | // Wait 5 seconds before retrying 64 | delay(5000); 65 | } 66 | } 67 | } 68 | 69 | void loop() { 70 | if (!client.connected()) { 71 | reconnect(); 72 | } 73 | client.loop(); 74 | 75 | doorbellState = digitalRead(doorbellPin); 76 | 77 | if ( doorbellState == LOW ) { 78 | // Put your code here. e.g. connect, send, disconnect. 79 | client.publish(doorbell_topic, "on" , true); 80 | Serial.println("Doorbell is pressed!"); 81 | 82 | //wait 5 seconds, then publish the off message 83 | delay( 5000 ); 84 | client.publish(doorbell_topic, "off" , true); 85 | } 86 | } -------------------------------------------------------------------------------- /arduino sample code/For v1.0 & v1.1/wifi manager sample/index.H: -------------------------------------------------------------------------------- 1 | const char config_page[] PROGMEM = R"=====( 2 | 3 | 4 | 5 | 6 | {v} 7 | 17 | 18 | 19 |
20 | 21 |

Wifi doorbell configuration & status

22 |
23 |
MQTT connection status:
{6} 24 |
25 |
26 | mqtt server:
27 | mqtt port:
28 | mqtt username:
29 | mqtt password:
30 | mqtt topic:
31 |
32 | 33 |
34 |
35 |
36 | 37 | 38 | )====="; 39 | -------------------------------------------------------------------------------- /arduino sample code/For v1.0 & v1.1/wifi manager sample/src/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 tzapu 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /arduino sample code/For v1.0 & v1.1/wifi manager sample/src/WiFiManager.h: -------------------------------------------------------------------------------- 1 | /************************************************************** 2 | WiFiManager is a library for the ESP8266/Arduino platform 3 | (https://github.com/esp8266/Arduino) to enable easy 4 | configuration and reconfiguration of WiFi credentials using a Captive Portal 5 | inspired by: 6 | http://www.esp8266.com/viewtopic.php?f=29&t=2520 7 | https://github.com/chriscook8/esp-arduino-apboot 8 | https://github.com/esp8266/Arduino/tree/esp8266/hardware/esp8266com/esp8266/libraries/DNSServer/examples/CaptivePortalAdvanced 9 | Built by AlexT https://github.com/tzapu 10 | Licensed under MIT license 11 | **************************************************************/ 12 | 13 | #ifndef WiFiManager_h 14 | #define WiFiManager_h 15 | 16 | #include 17 | #include 18 | #include 19 | #include 20 | 21 | extern "C" { 22 | #include "user_interface.h" 23 | } 24 | 25 | const char HTTP_HEAD[] PROGMEM = "{v}"; 26 | const char HTTP_STYLE[] PROGMEM = ""; 27 | const char HTTP_SCRIPT[] PROGMEM = ""; 28 | const char HTTP_HEAD_END[] PROGMEM = "
"; 29 | const char HTTP_PORTAL_OPTIONS[] PROGMEM = "


"; 30 | const char HTTP_ITEM[] PROGMEM = "
{v} {r}%
"; 31 | const char HTTP_FORM_START[] PROGMEM = "


"; 32 | const char HTTP_FORM_PARAM[] PROGMEM = "
"; 33 | const char HTTP_FORM_END[] PROGMEM = "
"; 34 | const char HTTP_SCAN_LINK[] PROGMEM = "
"; 35 | const char HTTP_SAVED[] PROGMEM = "
Credentials Saved
Trying to connect doorbell to network.
If it fails reconnect to \"wifi doorbell\" access point to try again
"; 36 | const char HTTP_END[] PROGMEM = "
"; 37 | 38 | #define WIFI_MANAGER_MAX_PARAMS 10 39 | 40 | class WiFiManagerParameter { 41 | public: 42 | WiFiManagerParameter(const char *custom); 43 | WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length); 44 | WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length, const char *custom); 45 | 46 | const char *getID(); 47 | const char *getValue(); 48 | const char *getPlaceholder(); 49 | int getValueLength(); 50 | const char *getCustomHTML(); 51 | private: 52 | const char *_id; 53 | const char *_placeholder; 54 | char *_value; 55 | int _length; 56 | const char *_customHTML; 57 | 58 | void init(const char *id, const char *placeholder, const char *defaultValue, int length, const char *custom); 59 | 60 | friend class WiFiManager; 61 | }; 62 | 63 | 64 | class WiFiManager 65 | { 66 | public: 67 | WiFiManager(); 68 | 69 | boolean autoConnect(); 70 | boolean autoConnect(char const *apName, char const *apPassword = NULL); 71 | 72 | //if you want to always start the config portal, without trying to connect first 73 | boolean startConfigPortal(char const *apName, char const *apPassword = NULL); 74 | 75 | // get the AP name of the config portal, so it can be used in the callback 76 | String getConfigPortalSSID(); 77 | 78 | void resetSettings(); 79 | 80 | //sets timeout before webserver loop ends and exits even if there has been no setup. 81 | //usefully for devices that failed to connect at some point and got stuck in a webserver loop 82 | //in seconds setConfigPortalTimeout is a new name for setTimeout 83 | void setConfigPortalTimeout(unsigned long seconds); 84 | void setTimeout(unsigned long seconds); 85 | 86 | //sets timeout for which to attempt connecting, usefull if you get a lot of failed connects 87 | void setConnectTimeout(unsigned long seconds); 88 | 89 | 90 | void setDebugOutput(boolean debug); 91 | //defaults to not showing anything under 8% signal quality if called 92 | void setMinimumSignalQuality(int quality = 8); 93 | //sets a custom ip /gateway /subnet configuration 94 | void setAPStaticIPConfig(IPAddress ip, IPAddress gw, IPAddress sn); 95 | //sets config for a static IP 96 | void setSTAStaticIPConfig(IPAddress ip, IPAddress gw, IPAddress sn); 97 | //called when AP mode and config portal is started 98 | void setAPCallback( void (*func)(WiFiManager*) ); 99 | //called when settings have been changed and connection was successful 100 | void setSaveConfigCallback( void (*func)(void) ); 101 | //adds a custom parameter 102 | void addParameter(WiFiManagerParameter *p); 103 | //if this is set, it will exit after config, even if connection is unsucessful. 104 | void setBreakAfterConfig(boolean shouldBreak); 105 | //if this is set, try WPS setup when starting (this will delay config portal for up to 2 mins) 106 | //TODO 107 | //if this is set, customise style 108 | void setCustomHeadElement(const char* element); 109 | //if this is true, remove duplicated Access Points - defaut true 110 | void setRemoveDuplicateAPs(boolean removeDuplicates); 111 | 112 | private: 113 | std::unique_ptr dnsServer; 114 | std::unique_ptr server; 115 | 116 | //const int WM_DONE = 0; 117 | //const int WM_WAIT = 10; 118 | 119 | //const String HTTP_HEAD = "{v}"; 120 | 121 | void setupConfigPortal(); 122 | void startWPS(); 123 | 124 | const char* _apName = "no-net"; 125 | const char* _apPassword = NULL; 126 | String _ssid = ""; 127 | String _pass = ""; 128 | unsigned long _configPortalTimeout = 0; 129 | unsigned long _connectTimeout = 0; 130 | unsigned long _configPortalStart = 0; 131 | 132 | IPAddress _ap_static_ip; 133 | IPAddress _ap_static_gw; 134 | IPAddress _ap_static_sn; 135 | IPAddress _sta_static_ip; 136 | IPAddress _sta_static_gw; 137 | IPAddress _sta_static_sn; 138 | 139 | int _paramsCount = 0; 140 | int _minimumQuality = -1; 141 | boolean _removeDuplicateAPs = true; 142 | boolean _shouldBreakAfterConfig = false; 143 | boolean _tryWPS = false; 144 | 145 | const char* _customHeadElement = ""; 146 | 147 | //String getEEPROMString(int start, int len); 148 | //void setEEPROMString(int start, int len, String string); 149 | 150 | int status = WL_IDLE_STATUS; 151 | int connectWifi(String ssid, String pass); 152 | uint8_t waitForConnectResult(); 153 | 154 | void handleRoot(); 155 | void handleWifi(boolean scan); 156 | void handleWifiSave(); 157 | void handleInfo(); 158 | void handleReset(); 159 | void handleNotFound(); 160 | void handle204(); 161 | boolean captivePortal(); 162 | 163 | // DNS server 164 | const byte DNS_PORT = 53; 165 | 166 | //helpers 167 | int getRSSIasQuality(int RSSI); 168 | boolean isIp(String str); 169 | String toStringIp(IPAddress ip); 170 | 171 | boolean connect; 172 | boolean _debug = true; 173 | 174 | void (*_apcallback)(WiFiManager*) = NULL; 175 | void (*_savecallback)(void) = NULL; 176 | 177 | WiFiManagerParameter* _params[WIFI_MANAGER_MAX_PARAMS]; 178 | 179 | template 180 | void DEBUG_WM(Generic text); 181 | 182 | template 183 | auto optionalIPFromString(T *obj, const char *s) -> decltype( obj->fromString(s) ) { 184 | return obj->fromString(s); 185 | } 186 | auto optionalIPFromString(...) -> bool { 187 | DEBUG_WM("NO fromString METHOD ON IPAddress, you need ESP8266 core 2.1.0 or newer for Custom IP configuration to work."); 188 | return false; 189 | } 190 | }; 191 | 192 | #endif 193 | -------------------------------------------------------------------------------- /arduino sample code/For v1.0 & v1.1/wifi manager sample/src/keywords.txt: -------------------------------------------------------------------------------- 1 | ####################################### 2 | # Syntax Coloring Map For WifiManager 3 | ####################################### 4 | 5 | ####################################### 6 | # Datatypes (KEYWORD1) 7 | ####################################### 8 | 9 | WiFiManager KEYWORD1 10 | WiFiManagerParameter KEYWORD1 11 | 12 | 13 | ####################################### 14 | # Methods and Functions (KEYWORD2) 15 | ####################################### 16 | autoConnect KEYWORD2 17 | getSSID KEYWORD2 18 | getPassword KEYWORD2 19 | getConfigPortalSSID KEYWORD2 20 | resetSettings KEYWORD2 21 | setConfigPortalTimeout KEYWORD2 22 | setConnectTimeout KEYWORD2 23 | setDebugOutput KEYWORD2 24 | setMinimumSignalQuality KEYWORD2 25 | setAPStaticIPConfig KEYWORD2 26 | setSTAStaticIPConfig KEYWORD2 27 | setAPCallback KEYWORD2 28 | setSaveConfigCallback KEYWORD2 29 | addParameter KEYWORD2 30 | getID KEYWORD2 31 | getValue KEYWORD2 32 | getPlaceholder KEYWORD2 33 | getValueLength KEYWORD2 34 | 35 | ####################################### 36 | # Constants (LITERAL1) 37 | ####################################### 38 | 39 | # LITERAL1 40 | -------------------------------------------------------------------------------- /arduino sample code/For v1.0 & v1.1/wifi manager sample/src/library.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "WifiManager", 3 | "keywords": "wifi, wi-fi", 4 | "description": "ESP8266 WiFi Connection manager with fallback web configuration portal", 5 | "repository": 6 | { 7 | "type": "git", 8 | "url": "https://github.com/tzapu/WiFiManager.git" 9 | }, 10 | "frameworks": "arduino", 11 | "platforms": "espressif", 12 | "version": "0.12" 13 | } 14 | -------------------------------------------------------------------------------- /arduino sample code/For v1.0 & v1.1/wifi manager sample/src/library.properties: -------------------------------------------------------------------------------- 1 | name=WiFiManager 2 | version=0.12 3 | author=tzapu 4 | maintainer=tzapu 5 | sentence=ESP8266 WiFi Connection manager with fallback web configuration portal 6 | paragraph=Library for configuring ESP8266 modules WiFi credentials at runtime. 7 | category=Communication 8 | url=https://github.com/tzapu/WiFiManager.git 9 | architectures=esp8266 10 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2/simple sample/sample.ino: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | #define wifi_ssid "YOUR WIFI NAME" 5 | #define wifi_password "YOUR WIFI PASSWORD" 6 | 7 | #define mqtt_server "YOUR HOME ASSISTANT MQTT IP" 8 | #define mqtt_user "YOUR HOME ASSISTANT USERNAME" 9 | #define mqtt_password "YOUR HOME ASSISTANT PASSWORD" 10 | 11 | #define doorbell_topic "hal/doorbell" //change to whatever you like to use a s topic 12 | 13 | int doorbellState = 0; 14 | const int doorbellPin = 16; 15 | 16 | WiFiClient espClient; 17 | PubSubClient client(espClient); 18 | 19 | void setup() { 20 | Serial.begin(115200); 21 | 22 | setup_wifi(); 23 | client.setServer(mqtt_server, 1883); 24 | pinMode(doorbellPin, INPUT_PULLUP); 25 | 26 | WiFi.mode(WIFI_STA); //don't be a AP 27 | } 28 | 29 | void setup_wifi() { 30 | delay(10); 31 | // We start by connecting to a WiFi network 32 | Serial.println(); 33 | Serial.print("Connecting to "); 34 | Serial.println(wifi_ssid); 35 | 36 | WiFi.mode(WIFI_STA); 37 | WiFi.begin(wifi_ssid, wifi_password); 38 | 39 | while (WiFi.status() != WL_CONNECTED) { 40 | delay(500); 41 | Serial.print("."); 42 | } 43 | 44 | Serial.println(""); 45 | Serial.println("WiFi connected"); 46 | Serial.println("IP address: "); 47 | Serial.println(WiFi.localIP()); 48 | } 49 | 50 | void reconnect() { 51 | // Loop until we're reconnected 52 | while (!client.connected()) { 53 | Serial.print("Attempting MQTT connection..."); 54 | // Attempt to connect 55 | // If you do not want to use a username and password, change next line to 56 | // if (client.connect("ESP8266Client")) { 57 | if (client.connect("ESP8266Client", mqtt_user, mqtt_password)) { 58 | Serial.println("connected"); 59 | } else { 60 | Serial.print("failed, rc="); 61 | Serial.print(client.state()); 62 | Serial.println(" try again in 5 seconds"); 63 | // Wait 5 seconds before retrying 64 | delay(5000); 65 | } 66 | } 67 | } 68 | 69 | void loop() { 70 | if (!client.connected()) { 71 | reconnect(); 72 | } 73 | client.loop(); 74 | 75 | doorbellState = digitalRead(doorbellPin); 76 | 77 | if ( doorbellState == LOW ) { 78 | // Put your code here. e.g. connect, send, disconnect. 79 | client.publish(doorbell_topic, "on" , true); 80 | Serial.println("Doorbell is pressed!"); 81 | 82 | //wait 5 seconds, then publish the off message 83 | delay( 5000 ); 84 | client.publish(doorbell_topic, "off" , true); 85 | } 86 | } -------------------------------------------------------------------------------- /arduino sample code/For v1.2/wifi manager sample/index.H: -------------------------------------------------------------------------------- 1 | const char config_page[] PROGMEM = R"=====( 2 | 3 | 4 | 5 | 6 | {v} 7 | 17 | 18 | 19 |
20 | 21 |

Wifi doorbell configuration & status

22 |
23 |
MQTT connection status:
{6} 24 |
25 |
26 | mqtt server:
27 | mqtt port:
28 | mqtt username:
29 | mqtt password:
30 | mqtt topic:
31 |
32 | 33 |
34 |
35 |
36 | 37 | 38 | )====="; 39 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2/wifi manager sample/src/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 tzapu 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2/wifi manager sample/src/WiFiManager.h: -------------------------------------------------------------------------------- 1 | /************************************************************** 2 | WiFiManager is a library for the ESP8266/Arduino platform 3 | (https://github.com/esp8266/Arduino) to enable easy 4 | configuration and reconfiguration of WiFi credentials using a Captive Portal 5 | inspired by: 6 | http://www.esp8266.com/viewtopic.php?f=29&t=2520 7 | https://github.com/chriscook8/esp-arduino-apboot 8 | https://github.com/esp8266/Arduino/tree/esp8266/hardware/esp8266com/esp8266/libraries/DNSServer/examples/CaptivePortalAdvanced 9 | Built by AlexT https://github.com/tzapu 10 | Licensed under MIT license 11 | **************************************************************/ 12 | 13 | #ifndef WiFiManager_h 14 | #define WiFiManager_h 15 | 16 | #include 17 | #include 18 | #include 19 | #include 20 | 21 | extern "C" { 22 | #include "user_interface.h" 23 | } 24 | 25 | const char HTTP_HEAD[] PROGMEM = "{v}"; 26 | const char HTTP_STYLE[] PROGMEM = ""; 27 | const char HTTP_SCRIPT[] PROGMEM = ""; 28 | const char HTTP_HEAD_END[] PROGMEM = "
"; 29 | const char HTTP_PORTAL_OPTIONS[] PROGMEM = "


"; 30 | const char HTTP_ITEM[] PROGMEM = "
{v} {r}%
"; 31 | const char HTTP_FORM_START[] PROGMEM = "


"; 32 | const char HTTP_FORM_PARAM[] PROGMEM = "
"; 33 | const char HTTP_FORM_END[] PROGMEM = "
"; 34 | const char HTTP_SCAN_LINK[] PROGMEM = "
"; 35 | const char HTTP_SAVED[] PROGMEM = "
Credentials Saved
Trying to connect doorbell to network.
If it fails reconnect to \"wifi doorbell\" access point to try again
"; 36 | const char HTTP_END[] PROGMEM = "
"; 37 | 38 | #define WIFI_MANAGER_MAX_PARAMS 10 39 | 40 | class WiFiManagerParameter { 41 | public: 42 | WiFiManagerParameter(const char *custom); 43 | WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length); 44 | WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length, const char *custom); 45 | 46 | const char *getID(); 47 | const char *getValue(); 48 | const char *getPlaceholder(); 49 | int getValueLength(); 50 | const char *getCustomHTML(); 51 | private: 52 | const char *_id; 53 | const char *_placeholder; 54 | char *_value; 55 | int _length; 56 | const char *_customHTML; 57 | 58 | void init(const char *id, const char *placeholder, const char *defaultValue, int length, const char *custom); 59 | 60 | friend class WiFiManager; 61 | }; 62 | 63 | 64 | class WiFiManager 65 | { 66 | public: 67 | WiFiManager(); 68 | 69 | boolean autoConnect(); 70 | boolean autoConnect(char const *apName, char const *apPassword = NULL); 71 | 72 | //if you want to always start the config portal, without trying to connect first 73 | boolean startConfigPortal(char const *apName, char const *apPassword = NULL); 74 | 75 | // get the AP name of the config portal, so it can be used in the callback 76 | String getConfigPortalSSID(); 77 | 78 | void resetSettings(); 79 | 80 | //sets timeout before webserver loop ends and exits even if there has been no setup. 81 | //usefully for devices that failed to connect at some point and got stuck in a webserver loop 82 | //in seconds setConfigPortalTimeout is a new name for setTimeout 83 | void setConfigPortalTimeout(unsigned long seconds); 84 | void setTimeout(unsigned long seconds); 85 | 86 | //sets timeout for which to attempt connecting, usefull if you get a lot of failed connects 87 | void setConnectTimeout(unsigned long seconds); 88 | 89 | 90 | void setDebugOutput(boolean debug); 91 | //defaults to not showing anything under 8% signal quality if called 92 | void setMinimumSignalQuality(int quality = 8); 93 | //sets a custom ip /gateway /subnet configuration 94 | void setAPStaticIPConfig(IPAddress ip, IPAddress gw, IPAddress sn); 95 | //sets config for a static IP 96 | void setSTAStaticIPConfig(IPAddress ip, IPAddress gw, IPAddress sn); 97 | //called when AP mode and config portal is started 98 | void setAPCallback( void (*func)(WiFiManager*) ); 99 | //called when settings have been changed and connection was successful 100 | void setSaveConfigCallback( void (*func)(void) ); 101 | //adds a custom parameter 102 | void addParameter(WiFiManagerParameter *p); 103 | //if this is set, it will exit after config, even if connection is unsucessful. 104 | void setBreakAfterConfig(boolean shouldBreak); 105 | //if this is set, try WPS setup when starting (this will delay config portal for up to 2 mins) 106 | //TODO 107 | //if this is set, customise style 108 | void setCustomHeadElement(const char* element); 109 | //if this is true, remove duplicated Access Points - defaut true 110 | void setRemoveDuplicateAPs(boolean removeDuplicates); 111 | 112 | private: 113 | std::unique_ptr dnsServer; 114 | std::unique_ptr server; 115 | 116 | //const int WM_DONE = 0; 117 | //const int WM_WAIT = 10; 118 | 119 | //const String HTTP_HEAD = "{v}"; 120 | 121 | void setupConfigPortal(); 122 | void startWPS(); 123 | 124 | const char* _apName = "no-net"; 125 | const char* _apPassword = NULL; 126 | String _ssid = ""; 127 | String _pass = ""; 128 | unsigned long _configPortalTimeout = 0; 129 | unsigned long _connectTimeout = 0; 130 | unsigned long _configPortalStart = 0; 131 | 132 | IPAddress _ap_static_ip; 133 | IPAddress _ap_static_gw; 134 | IPAddress _ap_static_sn; 135 | IPAddress _sta_static_ip; 136 | IPAddress _sta_static_gw; 137 | IPAddress _sta_static_sn; 138 | 139 | int _paramsCount = 0; 140 | int _minimumQuality = -1; 141 | boolean _removeDuplicateAPs = true; 142 | boolean _shouldBreakAfterConfig = false; 143 | boolean _tryWPS = false; 144 | 145 | const char* _customHeadElement = ""; 146 | 147 | //String getEEPROMString(int start, int len); 148 | //void setEEPROMString(int start, int len, String string); 149 | 150 | int status = WL_IDLE_STATUS; 151 | int connectWifi(String ssid, String pass); 152 | uint8_t waitForConnectResult(); 153 | 154 | void handleRoot(); 155 | void handleWifi(boolean scan); 156 | void handleWifiSave(); 157 | void handleInfo(); 158 | void handleReset(); 159 | void handleNotFound(); 160 | void handle204(); 161 | boolean captivePortal(); 162 | 163 | // DNS server 164 | const byte DNS_PORT = 53; 165 | 166 | //helpers 167 | int getRSSIasQuality(int RSSI); 168 | boolean isIp(String str); 169 | String toStringIp(IPAddress ip); 170 | 171 | boolean connect; 172 | boolean _debug = true; 173 | 174 | void (*_apcallback)(WiFiManager*) = NULL; 175 | void (*_savecallback)(void) = NULL; 176 | 177 | WiFiManagerParameter* _params[WIFI_MANAGER_MAX_PARAMS]; 178 | 179 | template 180 | void DEBUG_WM(Generic text); 181 | 182 | template 183 | auto optionalIPFromString(T *obj, const char *s) -> decltype( obj->fromString(s) ) { 184 | return obj->fromString(s); 185 | } 186 | auto optionalIPFromString(...) -> bool { 187 | DEBUG_WM("NO fromString METHOD ON IPAddress, you need ESP8266 core 2.1.0 or newer for Custom IP configuration to work."); 188 | return false; 189 | } 190 | }; 191 | 192 | #endif 193 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2/wifi manager sample/src/keywords.txt: -------------------------------------------------------------------------------- 1 | ####################################### 2 | # Syntax Coloring Map For WifiManager 3 | ####################################### 4 | 5 | ####################################### 6 | # Datatypes (KEYWORD1) 7 | ####################################### 8 | 9 | WiFiManager KEYWORD1 10 | WiFiManagerParameter KEYWORD1 11 | 12 | 13 | ####################################### 14 | # Methods and Functions (KEYWORD2) 15 | ####################################### 16 | autoConnect KEYWORD2 17 | getSSID KEYWORD2 18 | getPassword KEYWORD2 19 | getConfigPortalSSID KEYWORD2 20 | resetSettings KEYWORD2 21 | setConfigPortalTimeout KEYWORD2 22 | setConnectTimeout KEYWORD2 23 | setDebugOutput KEYWORD2 24 | setMinimumSignalQuality KEYWORD2 25 | setAPStaticIPConfig KEYWORD2 26 | setSTAStaticIPConfig KEYWORD2 27 | setAPCallback KEYWORD2 28 | setSaveConfigCallback KEYWORD2 29 | addParameter KEYWORD2 30 | getID KEYWORD2 31 | getValue KEYWORD2 32 | getPlaceholder KEYWORD2 33 | getValueLength KEYWORD2 34 | 35 | ####################################### 36 | # Constants (LITERAL1) 37 | ####################################### 38 | 39 | # LITERAL1 40 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2/wifi manager sample/src/library.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "WifiManager", 3 | "keywords": "wifi, wi-fi", 4 | "description": "ESP8266 WiFi Connection manager with fallback web configuration portal", 5 | "repository": 6 | { 7 | "type": "git", 8 | "url": "https://github.com/tzapu/WiFiManager.git" 9 | }, 10 | "frameworks": "arduino", 11 | "platforms": "espressif", 12 | "version": "0.12" 13 | } 14 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2/wifi manager sample/src/library.properties: -------------------------------------------------------------------------------- 1 | name=WiFiManager 2 | version=0.12 3 | author=tzapu 4 | maintainer=tzapu 5 | sentence=ESP8266 WiFi Connection manager with fallback web configuration portal 6 | paragraph=Library for configuring ESP8266 modules WiFi credentials at runtime. 7 | category=Communication 8 | url=https://github.com/tzapu/WiFiManager.git 9 | architectures=esp8266 10 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2a/simple sample/sample.ino: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | #define wifi_ssid "YOUR WIFI NAME" 5 | #define wifi_password "YOUR WIFI PASSWORD" 6 | 7 | #define mqtt_server "YOUR HOME ASSISTANT MQTT IP" 8 | #define mqtt_user "YOUR HOME ASSISTANT USERNAME" 9 | #define mqtt_password "YOUR HOME ASSISTANT PASSWORD" 10 | 11 | #define doorbell_topic "hal/doorbell" //change to whatever you like to use a s topic 12 | 13 | int doorbellState = 0; 14 | const int doorbellPin = 14; 15 | 16 | WiFiClient espClient; 17 | PubSubClient client(espClient); 18 | 19 | void setup() { 20 | Serial.begin(115200); 21 | 22 | setup_wifi(); 23 | client.setServer(mqtt_server, 1883); 24 | pinMode(doorbellPin, INPUT_PULLUP); 25 | 26 | WiFi.mode(WIFI_STA); //don't be a AP 27 | } 28 | 29 | void setup_wifi() { 30 | delay(10); 31 | // We start by connecting to a WiFi network 32 | Serial.println(); 33 | Serial.print("Connecting to "); 34 | Serial.println(wifi_ssid); 35 | 36 | WiFi.mode(WIFI_STA); 37 | WiFi.begin(wifi_ssid, wifi_password); 38 | 39 | while (WiFi.status() != WL_CONNECTED) { 40 | delay(500); 41 | Serial.print("."); 42 | } 43 | 44 | Serial.println(""); 45 | Serial.println("WiFi connected"); 46 | Serial.println("IP address: "); 47 | Serial.println(WiFi.localIP()); 48 | } 49 | 50 | void reconnect() { 51 | // Loop until we're reconnected 52 | while (!client.connected()) { 53 | Serial.print("Attempting MQTT connection..."); 54 | // Attempt to connect 55 | // If you do not want to use a username and password, change next line to 56 | // if (client.connect("ESP8266Client")) { 57 | if (client.connect("ESP8266Client", mqtt_user, mqtt_password)) { 58 | Serial.println("connected"); 59 | } else { 60 | Serial.print("failed, rc="); 61 | Serial.print(client.state()); 62 | Serial.println(" try again in 5 seconds"); 63 | // Wait 5 seconds before retrying 64 | delay(5000); 65 | } 66 | } 67 | } 68 | 69 | void loop() { 70 | if (!client.connected()) { 71 | reconnect(); 72 | } 73 | client.loop(); 74 | 75 | doorbellState = digitalRead(doorbellPin); 76 | 77 | if ( doorbellState == LOW ) { 78 | // Put your code here. e.g. connect, send, disconnect. 79 | client.publish(doorbell_topic, "on" , true); 80 | Serial.println("Doorbell is pressed!"); 81 | 82 | //wait 5 seconds, then publish the off message 83 | delay( 5000 ); 84 | client.publish(doorbell_topic, "off" , true); 85 | } 86 | } -------------------------------------------------------------------------------- /arduino sample code/For v1.2a/wifi manager sample/index.H: -------------------------------------------------------------------------------- 1 | const char config_page[] PROGMEM = R"=====( 2 | 3 | 4 | 5 | 6 | {v} 7 | 17 | 18 | 19 |
20 | 21 |

Wifi doorbell configuration & status

22 |
23 |
MQTT connection status:
{6} 24 |
25 |
26 | mqtt server:
27 | mqtt port:
28 | mqtt username:
29 | mqtt password:
30 | mqtt topic:
31 |
32 | 33 |
34 |
35 |
36 | 37 | 38 | )====="; 39 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2a/wifi manager sample/src/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 tzapu 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2a/wifi manager sample/src/WiFiManager.h: -------------------------------------------------------------------------------- 1 | /************************************************************** 2 | WiFiManager is a library for the ESP8266/Arduino platform 3 | (https://github.com/esp8266/Arduino) to enable easy 4 | configuration and reconfiguration of WiFi credentials using a Captive Portal 5 | inspired by: 6 | http://www.esp8266.com/viewtopic.php?f=29&t=2520 7 | https://github.com/chriscook8/esp-arduino-apboot 8 | https://github.com/esp8266/Arduino/tree/esp8266/hardware/esp8266com/esp8266/libraries/DNSServer/examples/CaptivePortalAdvanced 9 | Built by AlexT https://github.com/tzapu 10 | Licensed under MIT license 11 | **************************************************************/ 12 | 13 | #ifndef WiFiManager_h 14 | #define WiFiManager_h 15 | 16 | #include 17 | #include 18 | #include 19 | #include 20 | 21 | extern "C" { 22 | #include "user_interface.h" 23 | } 24 | 25 | const char HTTP_HEAD[] PROGMEM = "{v}"; 26 | const char HTTP_STYLE[] PROGMEM = ""; 27 | const char HTTP_SCRIPT[] PROGMEM = ""; 28 | const char HTTP_HEAD_END[] PROGMEM = "
"; 29 | const char HTTP_PORTAL_OPTIONS[] PROGMEM = "


"; 30 | const char HTTP_ITEM[] PROGMEM = "
{v} {r}%
"; 31 | const char HTTP_FORM_START[] PROGMEM = "


"; 32 | const char HTTP_FORM_PARAM[] PROGMEM = "
"; 33 | const char HTTP_FORM_END[] PROGMEM = "
"; 34 | const char HTTP_SCAN_LINK[] PROGMEM = "
"; 35 | const char HTTP_SAVED[] PROGMEM = "
Credentials Saved
Trying to connect doorbell to network.
If it fails reconnect to \"wifi doorbell\" access point to try again
"; 36 | const char HTTP_END[] PROGMEM = "
"; 37 | 38 | #define WIFI_MANAGER_MAX_PARAMS 10 39 | 40 | class WiFiManagerParameter { 41 | public: 42 | WiFiManagerParameter(const char *custom); 43 | WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length); 44 | WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length, const char *custom); 45 | 46 | const char *getID(); 47 | const char *getValue(); 48 | const char *getPlaceholder(); 49 | int getValueLength(); 50 | const char *getCustomHTML(); 51 | private: 52 | const char *_id; 53 | const char *_placeholder; 54 | char *_value; 55 | int _length; 56 | const char *_customHTML; 57 | 58 | void init(const char *id, const char *placeholder, const char *defaultValue, int length, const char *custom); 59 | 60 | friend class WiFiManager; 61 | }; 62 | 63 | 64 | class WiFiManager 65 | { 66 | public: 67 | WiFiManager(); 68 | 69 | boolean autoConnect(); 70 | boolean autoConnect(char const *apName, char const *apPassword = NULL); 71 | 72 | //if you want to always start the config portal, without trying to connect first 73 | boolean startConfigPortal(char const *apName, char const *apPassword = NULL); 74 | 75 | // get the AP name of the config portal, so it can be used in the callback 76 | String getConfigPortalSSID(); 77 | 78 | void resetSettings(); 79 | 80 | //sets timeout before webserver loop ends and exits even if there has been no setup. 81 | //usefully for devices that failed to connect at some point and got stuck in a webserver loop 82 | //in seconds setConfigPortalTimeout is a new name for setTimeout 83 | void setConfigPortalTimeout(unsigned long seconds); 84 | void setTimeout(unsigned long seconds); 85 | 86 | //sets timeout for which to attempt connecting, usefull if you get a lot of failed connects 87 | void setConnectTimeout(unsigned long seconds); 88 | 89 | 90 | void setDebugOutput(boolean debug); 91 | //defaults to not showing anything under 8% signal quality if called 92 | void setMinimumSignalQuality(int quality = 8); 93 | //sets a custom ip /gateway /subnet configuration 94 | void setAPStaticIPConfig(IPAddress ip, IPAddress gw, IPAddress sn); 95 | //sets config for a static IP 96 | void setSTAStaticIPConfig(IPAddress ip, IPAddress gw, IPAddress sn); 97 | //called when AP mode and config portal is started 98 | void setAPCallback( void (*func)(WiFiManager*) ); 99 | //called when settings have been changed and connection was successful 100 | void setSaveConfigCallback( void (*func)(void) ); 101 | //adds a custom parameter 102 | void addParameter(WiFiManagerParameter *p); 103 | //if this is set, it will exit after config, even if connection is unsucessful. 104 | void setBreakAfterConfig(boolean shouldBreak); 105 | //if this is set, try WPS setup when starting (this will delay config portal for up to 2 mins) 106 | //TODO 107 | //if this is set, customise style 108 | void setCustomHeadElement(const char* element); 109 | //if this is true, remove duplicated Access Points - defaut true 110 | void setRemoveDuplicateAPs(boolean removeDuplicates); 111 | 112 | private: 113 | std::unique_ptr dnsServer; 114 | std::unique_ptr server; 115 | 116 | //const int WM_DONE = 0; 117 | //const int WM_WAIT = 10; 118 | 119 | //const String HTTP_HEAD = "{v}"; 120 | 121 | void setupConfigPortal(); 122 | void startWPS(); 123 | 124 | const char* _apName = "no-net"; 125 | const char* _apPassword = NULL; 126 | String _ssid = ""; 127 | String _pass = ""; 128 | unsigned long _configPortalTimeout = 0; 129 | unsigned long _connectTimeout = 0; 130 | unsigned long _configPortalStart = 0; 131 | 132 | IPAddress _ap_static_ip; 133 | IPAddress _ap_static_gw; 134 | IPAddress _ap_static_sn; 135 | IPAddress _sta_static_ip; 136 | IPAddress _sta_static_gw; 137 | IPAddress _sta_static_sn; 138 | 139 | int _paramsCount = 0; 140 | int _minimumQuality = -1; 141 | boolean _removeDuplicateAPs = true; 142 | boolean _shouldBreakAfterConfig = false; 143 | boolean _tryWPS = false; 144 | 145 | const char* _customHeadElement = ""; 146 | 147 | //String getEEPROMString(int start, int len); 148 | //void setEEPROMString(int start, int len, String string); 149 | 150 | int status = WL_IDLE_STATUS; 151 | int connectWifi(String ssid, String pass); 152 | uint8_t waitForConnectResult(); 153 | 154 | void handleRoot(); 155 | void handleWifi(boolean scan); 156 | void handleWifiSave(); 157 | void handleInfo(); 158 | void handleReset(); 159 | void handleNotFound(); 160 | void handle204(); 161 | boolean captivePortal(); 162 | 163 | // DNS server 164 | const byte DNS_PORT = 53; 165 | 166 | //helpers 167 | int getRSSIasQuality(int RSSI); 168 | boolean isIp(String str); 169 | String toStringIp(IPAddress ip); 170 | 171 | boolean connect; 172 | boolean _debug = true; 173 | 174 | void (*_apcallback)(WiFiManager*) = NULL; 175 | void (*_savecallback)(void) = NULL; 176 | 177 | WiFiManagerParameter* _params[WIFI_MANAGER_MAX_PARAMS]; 178 | 179 | template 180 | void DEBUG_WM(Generic text); 181 | 182 | template 183 | auto optionalIPFromString(T *obj, const char *s) -> decltype( obj->fromString(s) ) { 184 | return obj->fromString(s); 185 | } 186 | auto optionalIPFromString(...) -> bool { 187 | DEBUG_WM("NO fromString METHOD ON IPAddress, you need ESP8266 core 2.1.0 or newer for Custom IP configuration to work."); 188 | return false; 189 | } 190 | }; 191 | 192 | #endif 193 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2a/wifi manager sample/src/keywords.txt: -------------------------------------------------------------------------------- 1 | ####################################### 2 | # Syntax Coloring Map For WifiManager 3 | ####################################### 4 | 5 | ####################################### 6 | # Datatypes (KEYWORD1) 7 | ####################################### 8 | 9 | WiFiManager KEYWORD1 10 | WiFiManagerParameter KEYWORD1 11 | 12 | 13 | ####################################### 14 | # Methods and Functions (KEYWORD2) 15 | ####################################### 16 | autoConnect KEYWORD2 17 | getSSID KEYWORD2 18 | getPassword KEYWORD2 19 | getConfigPortalSSID KEYWORD2 20 | resetSettings KEYWORD2 21 | setConfigPortalTimeout KEYWORD2 22 | setConnectTimeout KEYWORD2 23 | setDebugOutput KEYWORD2 24 | setMinimumSignalQuality KEYWORD2 25 | setAPStaticIPConfig KEYWORD2 26 | setSTAStaticIPConfig KEYWORD2 27 | setAPCallback KEYWORD2 28 | setSaveConfigCallback KEYWORD2 29 | addParameter KEYWORD2 30 | getID KEYWORD2 31 | getValue KEYWORD2 32 | getPlaceholder KEYWORD2 33 | getValueLength KEYWORD2 34 | 35 | ####################################### 36 | # Constants (LITERAL1) 37 | ####################################### 38 | 39 | # LITERAL1 40 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2a/wifi manager sample/src/library.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "WifiManager", 3 | "keywords": "wifi, wi-fi", 4 | "description": "ESP8266 WiFi Connection manager with fallback web configuration portal", 5 | "repository": 6 | { 7 | "type": "git", 8 | "url": "https://github.com/tzapu/WiFiManager.git" 9 | }, 10 | "frameworks": "arduino", 11 | "platforms": "espressif", 12 | "version": "0.12" 13 | } 14 | -------------------------------------------------------------------------------- /arduino sample code/For v1.2a/wifi manager sample/src/library.properties: -------------------------------------------------------------------------------- 1 | name=WiFiManager 2 | version=0.12 3 | author=tzapu 4 | maintainer=tzapu 5 | sentence=ESP8266 WiFi Connection manager with fallback web configuration portal 6 | paragraph=Library for configuring ESP8266 modules WiFi credentials at runtime. 7 | category=Communication 8 | url=https://github.com/tzapu/WiFiManager.git 9 | architectures=esp8266 10 | -------------------------------------------------------------------------------- /arduino sample code/For v2.0/WifiManager sample/logo.H: -------------------------------------------------------------------------------- 1 | const uint8_t Logo_bits[] PROGMEM = { 2 | 3 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 4 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xE0, 0xFF, 0x03, 0x00, 5 | 0x00, 0x00, 0x00, 0x00, 0x78, 0x00, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 6 | 0x0F, 0x00, 0xFC, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x03, 0x00, 0x78, 0x00, 7 | 0x00, 0x00, 0x00, 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x1E, 8 | 0xC0, 0xFF, 0x03, 0x00, 0x00, 0xFF, 0xFF, 0x07, 0xFC, 0xFF, 0x3F, 0x00, 9 | 0x00, 0x03, 0x00, 0x07, 0xFF, 0xFF, 0xFF, 0x00, 0x80, 0x03, 0x00, 0xC6, 10 | 0xFF, 0xFF, 0xFF, 0x03, 0x80, 0x03, 0x00, 0xF3, 0xFF, 0xFF, 0xFF, 0x0F, 11 | 0x80, 0x03, 0x80, 0xF9, 0xFF, 0xFF, 0xFF, 0x1F, 0x80, 0x03, 0xC0, 0xFC, 12 | 0xFF, 0xFF, 0xFF, 0x3F, 0x80, 0x03, 0xE0, 0xFC, 0xFF, 0xC3, 0xFF, 0x3F, 13 | 0x80, 0x03, 0x60, 0xFE, 0x7F, 0x00, 0xFE, 0x7F, 0x80, 0x03, 0x60, 0xFE, 14 | 0x3F, 0x7E, 0xFC, 0x7F, 0x80, 0x03, 0x60, 0xCE, 0x3F, 0xFF, 0xFC, 0x7F, 15 | 0x80, 0x03, 0x60, 0xCE, 0x3F, 0xFF, 0xFC, 0x7F, 0x80, 0x03, 0x60, 0xCE, 16 | 0x3F, 0x7E, 0xFC, 0x7F, 0x80, 0x03, 0x60, 0x9E, 0xFF, 0x00, 0xFF, 0x7F, 17 | 0x80, 0x03, 0xE0, 0x1C, 0xFF, 0xE7, 0xFF, 0x3F, 0x80, 0x03, 0xC0, 0x39, 18 | 0xFE, 0xFF, 0xFF, 0x1F, 0x80, 0x03, 0x80, 0x71, 0xFC, 0xFF, 0xFF, 0x1F, 19 | 0x80, 0x03, 0x00, 0xE7, 0xF1, 0xFF, 0xFF, 0x07, 0x80, 0x03, 0x00, 0xC6, 20 | 0x87, 0xFF, 0xFF, 0x03, 0x00, 0x03, 0x00, 0x07, 0x3F, 0xE0, 0xFF, 0x00, 21 | 0x00, 0xFE, 0xFF, 0x03, 0xF8, 0xFF, 0x3F, 0x00, 0x00, 0x00, 0x00, 0x00, 22 | 0x80, 0xFF, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 23 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 24 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 25 | 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x1F, 0xF8, 0x07, 0x00, 0x00, 0x00, 0xC0, 26 | 0xFF, 0x1F, 0x38, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x18, 0xE0, 0x00, 27 | 0x00, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x80, 0x01, 0x00, 0x00, 0x00, 0xC0, 28 | 0x00, 0x18, 0x80, 0x01, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x18, 0xE0, 0x00, 29 | 0x00, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x38, 0x00, 0x00, 0x00, 0x00, 0xC0, 30 | 0x01, 0x1C, 0xF8, 0x07, 0x00, 0x00, 0x00, 0x80, 0x07, 0x0E, 0x00, 0x00, 31 | 0x00, 0x00, 0x00, 0x00, 0xFE, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 32 | 0xF0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 33 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 34 | 0xFE, 0x03, 0xF0, 0x03, 0x00, 0x00, 0x00, 0x80, 0x07, 0x0F, 0x18, 0x06, 35 | 0x00, 0x00, 0x00, 0xC0, 0x01, 0x1C, 0x0C, 0x0C, 0x00, 0x00, 0x00, 0xC0, 36 | 0x00, 0x18, 0x0C, 0x0C, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x0C, 0x0C, 37 | 0x00, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x3C, 0x07, 0x00, 0x00, 0x00, 0xC0, 38 | 0x00, 0x18, 0xE0, 0x01, 0x00, 0x00, 0x00, 0xC0, 0x01, 0x1C, 0x00, 0x00, 39 | 0x00, 0x00, 0x00, 0x80, 0x03, 0x0E, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 40 | 0xFF, 0x07, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xF8, 0x01, 0x00, 0x00, 41 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 42 | 0x00, 0x00, 0xF8, 0x07, 0x00, 0x00, 0x00, 0x00, 0xFC, 0x03, 0x08, 0x0C, 43 | 0x00, 0x00, 0x00, 0x00, 0x8F, 0x0F, 0x08, 0x0C, 0x00, 0x00, 0x00, 0x80, 44 | 0x03, 0x1C, 0x08, 0x0C, 0x00, 0x00, 0x00, 0xC0, 0x01, 0x18, 0x18, 0x04, 45 | 0x00, 0x00, 0x00, 0xC0, 0x00, 0x38, 0xF0, 0x03, 0x00, 0x00, 0x00, 0xC0, 46 | 0x00, 0x38, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x38, 0x00, 0x00, 47 | 0x00, 0x00, 0x00, 0xC0, 0x01, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x80, 48 | 0x03, 0x1C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xDF, 0x07, 0x00, 0x00, 49 | 0x00, 0x00, 0x00, 0x00, 0xFC, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 50 | 0x00, 0x00, 0xF8, 0x0F, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC8, 0x0C, 51 | 0x00, 0x00, 0x00, 0x80, 0xFF, 0x1F, 0xC8, 0x0C, 0x00, 0x00, 0x00, 0xC0, 52 | 0xFF, 0x1F, 0x08, 0x0C, 0x00, 0x00, 0x00, 0xC0, 0x60, 0x00, 0x08, 0x0C, 53 | 0x00, 0x00, 0x00, 0xC0, 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 54 | 0x60, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x60, 0x00, 0x00, 0x00, 55 | 0x00, 0x00, 0x00, 0xC0, 0xE0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 56 | 0xE0, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xF1, 0x1F, 0x00, 0x00, 57 | 0x00, 0x00, 0x00, 0x80, 0x3F, 0x18, 0xF8, 0x07, 0x00, 0x00, 0x00, 0x00, 58 | 0x00, 0x00, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x00, 59 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x88, 0x03, 0x00, 0x00, 0x00, 0xC0, 60 | 0xFF, 0x1F, 0xF8, 0x06, 0x00, 0x00, 0x00, 0xC0, 0x71, 0x18, 0x00, 0x00, 61 | 0x00, 0x00, 0x00, 0xC0, 0x70, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 62 | 0x70, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x70, 0x18, 0x00, 0x00, 63 | 0x00, 0x00, 0x00, 0xC0, 0x70, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 64 | 0x70, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x71, 0x18, 0xF8, 0x07, 65 | 0x00, 0x00, 0x00, 0x80, 0xFF, 0x1E, 0x30, 0x00, 0x00, 0x00, 0x00, 0x00, 66 | 0xCF, 0x0F, 0xC0, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x03, 67 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x06, 0x00, 0x00, 0x00, 0x80, 68 | 0x00, 0x10, 0xF8, 0x07, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x1F, 0x00, 0x00, 69 | 0x00, 0x00, 0x00, 0xC0, 0x30, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 70 | 0x30, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0x30, 0x18, 0x00, 0x00, 71 | 0x00, 0x00, 0x00, 0xC0, 0x30, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 72 | 0x30, 0x18, 0xF8, 0x07, 0x00, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x00, 73 | 0x00, 0x00, 0x00, 0xC0, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 74 | 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 75 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 76 | 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x1F, 0x08, 0x0E, 77 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x88, 0x0D, 0x00, 0x00, 0x00, 0x00, 78 | 0x00, 0x18, 0xC8, 0x0C, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x38, 0x0C, 79 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x18, 0x0C, 0x00, 0x00, 0x00, 0x00, 80 | 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 81 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 82 | 0xFF, 0x1F, 0x00, 0x00, 0x00, 0x00, 0x00, 0xC0, 0xFF, 0x1F, 0x00, 0x00, 83 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xF8, 0x0F, 0x00, 0x00, 0x00, 0x00, 84 | 0x00, 0x18, 0x88, 0x01, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x88, 0x00, 85 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x88, 0x00, 0x00, 0x00, 0x00, 0x00, 86 | 0x00, 0x18, 0x88, 0x03, 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0xF8, 0x0C, 87 | 0x00, 0x00, 0x00, 0x00, 0x00, 0x18, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 88 | 0x00, 0x00, 0x00, 0x00}; 89 | -------------------------------------------------------------------------------- /arduino sample code/For v2.0/WifiManager sample/src/LICENSE: -------------------------------------------------------------------------------- 1 | The MIT License (MIT) 2 | 3 | Copyright (c) 2015 tzapu 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | 23 | -------------------------------------------------------------------------------- /arduino sample code/For v2.0/WifiManager sample/src/WiFiManager.h: -------------------------------------------------------------------------------- 1 | /************************************************************** 2 | WiFiManager is a library for the ESP8266/Arduino platform 3 | (https://github.com/esp8266/Arduino) to enable easy 4 | configuration and reconfiguration of WiFi credentials using a Captive Portal 5 | inspired by: 6 | http://www.esp8266.com/viewtopic.php?f=29&t=2520 7 | https://github.com/chriscook8/esp-arduino-apboot 8 | https://github.com/esp8266/Arduino/tree/esp8266/hardware/esp8266com/esp8266/libraries/DNSServer/examples/CaptivePortalAdvanced 9 | Built by AlexT https://github.com/tzapu 10 | Licensed under MIT license 11 | **************************************************************/ 12 | 13 | #ifndef WiFiManager_h 14 | #define WiFiManager_h 15 | 16 | #include 17 | #include 18 | #include 19 | #include 20 | 21 | extern "C" { 22 | #include "user_interface.h" 23 | } 24 | 25 | const char HTTP_HEAD[] PROGMEM = "{v}"; 26 | const char HTTP_STYLE[] PROGMEM = ""; 27 | const char HTTP_SCRIPT[] PROGMEM = ""; 28 | const char HTTP_HEAD_END[] PROGMEM = "
"; 29 | const char HTTP_PORTAL_OPTIONS[] PROGMEM = "


"; 30 | const char HTTP_ITEM[] PROGMEM = "
{v} {r}%
"; 31 | const char HTTP_FORM_START[] PROGMEM = "


"; 32 | const char HTTP_FORM_PARAM[] PROGMEM = "
"; 33 | const char HTTP_FORM_END[] PROGMEM = "
"; 34 | const char HTTP_SCAN_LINK[] PROGMEM = "
"; 35 | const char HTTP_SAVED[] PROGMEM = "
Credentials Saved
Trying to connect the Doorbell Modernizr to your network.
If it fails reconnect to \"Doorbell Modernizr\" access point to try again
"; 36 | const char HTTP_END[] PROGMEM = "
"; 37 | 38 | #define WIFI_MANAGER_MAX_PARAMS 20 39 | 40 | class WiFiManagerParameter { 41 | public: 42 | WiFiManagerParameter(const char *custom); 43 | WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length); 44 | WiFiManagerParameter(const char *id, const char *placeholder, const char *defaultValue, int length, const char *custom); 45 | 46 | const char *getID(); 47 | const char *getValue(); 48 | const char *getPlaceholder(); 49 | int getValueLength(); 50 | const char *getCustomHTML(); 51 | private: 52 | const char *_id; 53 | const char *_placeholder; 54 | char *_value; 55 | int _length; 56 | const char *_customHTML; 57 | 58 | void init(const char *id, const char *placeholder, const char *defaultValue, int length, const char *custom); 59 | 60 | friend class WiFiManager; 61 | }; 62 | 63 | 64 | class WiFiManager 65 | { 66 | public: 67 | WiFiManager(); 68 | 69 | boolean autoConnect(); 70 | boolean autoConnect(char const *apName, char const *apPassword = NULL); 71 | 72 | //if you want to always start the config portal, without trying to connect first 73 | boolean startConfigPortal(char const *apName, char const *apPassword = NULL); 74 | 75 | // get the AP name of the config portal, so it can be used in the callback 76 | String getConfigPortalSSID(); 77 | 78 | void resetSettings(); 79 | 80 | //sets timeout before webserver loop ends and exits even if there has been no setup. 81 | //usefully for devices that failed to connect at some point and got stuck in a webserver loop 82 | //in seconds setConfigPortalTimeout is a new name for setTimeout 83 | void setConfigPortalTimeout(unsigned long seconds); 84 | void setTimeout(unsigned long seconds); 85 | 86 | //sets timeout for which to attempt connecting, usefull if you get a lot of failed connects 87 | void setConnectTimeout(unsigned long seconds); 88 | 89 | 90 | void setDebugOutput(boolean debug); 91 | //defaults to not showing anything under 8% signal quality if called 92 | void setMinimumSignalQuality(int quality = 8); 93 | //sets a custom ip /gateway /subnet configuration 94 | void setAPStaticIPConfig(IPAddress ip, IPAddress gw, IPAddress sn); 95 | //sets config for a static IP 96 | void setSTAStaticIPConfig(IPAddress ip, IPAddress gw, IPAddress sn); 97 | //called when AP mode and config portal is started 98 | void setAPCallback( void (*func)(WiFiManager*) ); 99 | //called when settings have been changed and connection was successful 100 | void setSaveConfigCallback( void (*func)(void) ); 101 | //adds a custom parameter 102 | void addParameter(WiFiManagerParameter *p); 103 | //if this is set, it will exit after config, even if connection is unsucessful. 104 | void setBreakAfterConfig(boolean shouldBreak); 105 | //if this is set, try WPS setup when starting (this will delay config portal for up to 2 mins) 106 | //TODO 107 | //if this is set, customise style 108 | void setCustomHeadElement(const char* element); 109 | //if this is true, remove duplicated Access Points - defaut true 110 | void setRemoveDuplicateAPs(boolean removeDuplicates); 111 | 112 | private: 113 | std::unique_ptr dnsServer; 114 | std::unique_ptr server; 115 | 116 | //const int WM_DONE = 0; 117 | //const int WM_WAIT = 10; 118 | 119 | //const String HTTP_HEAD = "{v}"; 120 | 121 | void setupConfigPortal(); 122 | void startWPS(); 123 | 124 | const char* _apName = "no-net"; 125 | const char* _apPassword = NULL; 126 | String _ssid = ""; 127 | String _pass = ""; 128 | unsigned long _configPortalTimeout = 0; 129 | unsigned long _connectTimeout = 0; 130 | unsigned long _configPortalStart = 0; 131 | 132 | IPAddress _ap_static_ip; 133 | IPAddress _ap_static_gw; 134 | IPAddress _ap_static_sn; 135 | IPAddress _sta_static_ip; 136 | IPAddress _sta_static_gw; 137 | IPAddress _sta_static_sn; 138 | 139 | int _paramsCount = 0; 140 | int _minimumQuality = -1; 141 | boolean _removeDuplicateAPs = true; 142 | boolean _shouldBreakAfterConfig = false; 143 | boolean _tryWPS = false; 144 | 145 | const char* _customHeadElement = ""; 146 | 147 | //String getEEPROMString(int start, int len); 148 | //void setEEPROMString(int start, int len, String string); 149 | 150 | int status = WL_IDLE_STATUS; 151 | int connectWifi(String ssid, String pass); 152 | uint8_t waitForConnectResult(); 153 | 154 | void handleRoot(); 155 | void handleWifi(boolean scan); 156 | void handleWifiSave(); 157 | void handleInfo(); 158 | void handleReset(); 159 | void handleNotFound(); 160 | void handle204(); 161 | boolean captivePortal(); 162 | 163 | // DNS server 164 | const byte DNS_PORT = 53; 165 | 166 | //helpers 167 | int getRSSIasQuality(int RSSI); 168 | boolean isIp(String str); 169 | String toStringIp(IPAddress ip); 170 | 171 | boolean connect; 172 | boolean _debug = true; 173 | 174 | void (*_apcallback)(WiFiManager*) = NULL; 175 | void (*_savecallback)(void) = NULL; 176 | 177 | WiFiManagerParameter* _params[WIFI_MANAGER_MAX_PARAMS]; 178 | 179 | template 180 | void DEBUG_WM(Generic text); 181 | 182 | template 183 | auto optionalIPFromString(T *obj, const char *s) -> decltype( obj->fromString(s) ) { 184 | return obj->fromString(s); 185 | } 186 | auto optionalIPFromString(...) -> bool { 187 | DEBUG_WM("NO fromString METHOD ON IPAddress, you need ESP8266 core 2.1.0 or newer for Custom IP configuration to work."); 188 | return false; 189 | } 190 | }; 191 | 192 | #endif 193 | -------------------------------------------------------------------------------- /arduino sample code/For v2.0/WifiManager sample/src/keywords.txt: -------------------------------------------------------------------------------- 1 | ####################################### 2 | # Syntax Coloring Map For WifiManager 3 | ####################################### 4 | 5 | ####################################### 6 | # Datatypes (KEYWORD1) 7 | ####################################### 8 | 9 | WiFiManager KEYWORD1 10 | WiFiManagerParameter KEYWORD1 11 | 12 | 13 | ####################################### 14 | # Methods and Functions (KEYWORD2) 15 | ####################################### 16 | autoConnect KEYWORD2 17 | getSSID KEYWORD2 18 | getPassword KEYWORD2 19 | getConfigPortalSSID KEYWORD2 20 | resetSettings KEYWORD2 21 | setConfigPortalTimeout KEYWORD2 22 | setConnectTimeout KEYWORD2 23 | setDebugOutput KEYWORD2 24 | setMinimumSignalQuality KEYWORD2 25 | setAPStaticIPConfig KEYWORD2 26 | setSTAStaticIPConfig KEYWORD2 27 | setAPCallback KEYWORD2 28 | setSaveConfigCallback KEYWORD2 29 | addParameter KEYWORD2 30 | getID KEYWORD2 31 | getValue KEYWORD2 32 | getPlaceholder KEYWORD2 33 | getValueLength KEYWORD2 34 | 35 | ####################################### 36 | # Constants (LITERAL1) 37 | ####################################### 38 | 39 | # LITERAL1 40 | -------------------------------------------------------------------------------- /arduino sample code/For v2.0/WifiManager sample/src/library.json: -------------------------------------------------------------------------------- 1 | { 2 | "name": "WifiManager", 3 | "keywords": "wifi, wi-fi", 4 | "description": "ESP8266 WiFi Connection manager with fallback web configuration portal", 5 | "repository": 6 | { 7 | "type": "git", 8 | "url": "https://github.com/tzapu/WiFiManager.git" 9 | }, 10 | "frameworks": "arduino", 11 | "platforms": "espressif", 12 | "version": "0.12" 13 | } 14 | -------------------------------------------------------------------------------- /arduino sample code/For v2.0/WifiManager sample/src/library.properties: -------------------------------------------------------------------------------- 1 | name=WiFiManager 2 | version=0.12 3 | author=tzapu 4 | maintainer=tzapu 5 | sentence=ESP8266 WiFi Connection manager with fallback web configuration portal 6 | paragraph=Library for configuring ESP8266 modules WiFi credentials at runtime. 7 | category=Communication 8 | url=https://github.com/tzapu/WiFiManager.git 9 | architectures=esp8266 10 | -------------------------------------------------------------------------------- /arduino sample code/For v2.0/simple sample/sample.ino: -------------------------------------------------------------------------------- 1 | #include 2 | #include 3 | 4 | #define wifi_ssid "YOUR WIFI NAME" 5 | #define wifi_password "YOUR WIFI PASSWORD" 6 | 7 | #define mqtt_server "YOUR HOME ASSISTANT MQTT IP" 8 | #define mqtt_user "YOUR HOME ASSISTANT USERNAME" 9 | #define mqtt_password "YOUR HOME ASSISTANT PASSWORD" 10 | 11 | #define doorbell_topic "hal/doorbell" //change to whatever you like to use a s topic 12 | 13 | int doorbellState = 0; 14 | const int doorbellPin = 14; 15 | 16 | WiFiClient espClient; 17 | PubSubClient client(espClient); 18 | 19 | void setup() { 20 | Serial.begin(115200); 21 | 22 | setup_wifi(); 23 | client.setServer(mqtt_server, 1883); 24 | pinMode(doorbellPin, INPUT_PULLUP); 25 | 26 | WiFi.mode(WIFI_STA); //don't be a AP 27 | } 28 | 29 | void setup_wifi() { 30 | delay(10); 31 | // We start by connecting to a WiFi network 32 | Serial.println(); 33 | Serial.print("Connecting to "); 34 | Serial.println(wifi_ssid); 35 | 36 | WiFi.mode(WIFI_STA); 37 | WiFi.begin(wifi_ssid, wifi_password); 38 | 39 | while (WiFi.status() != WL_CONNECTED) { 40 | delay(500); 41 | Serial.print("."); 42 | } 43 | 44 | Serial.println(""); 45 | Serial.println("WiFi connected"); 46 | Serial.println("IP address: "); 47 | Serial.println(WiFi.localIP()); 48 | } 49 | 50 | void reconnect() { 51 | // Loop until we're reconnected 52 | while (!client.connected()) { 53 | Serial.print("Attempting MQTT connection..."); 54 | // Attempt to connect 55 | // If you do not want to use a username and password, change next line to 56 | // if (client.connect("ESP8266Client")) { 57 | if (client.connect("ESP8266Client", mqtt_user, mqtt_password)) { 58 | Serial.println("connected"); 59 | } else { 60 | Serial.print("failed, rc="); 61 | Serial.print(client.state()); 62 | Serial.println(" try again in 5 seconds"); 63 | // Wait 5 seconds before retrying 64 | delay(5000); 65 | } 66 | } 67 | } 68 | 69 | void loop() { 70 | if (!client.connected()) { 71 | reconnect(); 72 | } 73 | client.loop(); 74 | 75 | doorbellState = digitalRead(doorbellPin); 76 | 77 | if ( doorbellState == LOW ) { 78 | // Put your code here. e.g. connect, send, disconnect. 79 | client.publish(doorbell_topic, "on" , true); 80 | Serial.println("Doorbell is pressed!"); 81 | 82 | //wait 5 seconds, then publish the off message 83 | delay( 5000 ); 84 | client.publish(doorbell_topic, "off" , true); 85 | } 86 | } -------------------------------------------------------------------------------- /manual v1.0.pdf: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/eriknl1982/Doorbell_modernizr/464c9607ad0bc0ddf967ab130513d6de762a8144/manual v1.0.pdf --------------------------------------------------------------------------------