 Hai, so my name is Ah Tan, I've been a long time electronics engineer since 2003, I've been out of my own. So maybe I do customized electronics for factory testing. So there my background was all derived from all these test and instrumentation here. I also belong to a group called the Hec-Wen-Bitah Group that's on Facebook of which two of the many founders are here, Chinmeh and Sayani. And I occasionally or more like infrequently give some talks on just a beat-up group. So last year I gave some talks on my NBIOT project which isn't successful despite all the years of experience. And here I am today to share with you what these difficulties I have. So what is IOT, right? So IOT is just a collection of devices connected by the network to maybe collect data and possibly actuate physical actions. So you may collect temperature or water from a pond and maybe there's not enough water. You can actuate it through remote beans through IOT. IOT is any devices that is connected to the internet. So the possible users ranges from consumer to commercial and industrial infrastructure projects as well. So consumers, right? We have all these variables of which Mitch has explained some of them to us. We have smart home equipment like bulbs, power switches, kitchen appliances, and quantum health. So it's all explained here. So this is how I gave these lights up from my previous talks. That's why you see this skip recap. So I'll just go very briefly to that, right? So despite me being an electronics engineer, the only internet connected gadget I have at home apart from laptops and my smart TV, it's a light bulb. That's all I have at home. So my experience with internet gadgets is not a lot. But since I've been reading up to implement this project, I discovered that there are many, many more things out there. So for my case, I have a friend coming to me because he discovers that I can do electronics. He wants to implement an IOT project for his farm. So it's in a remote location where he has water pumps and he wants to measure the water flow and the water quality. So in this farm, power and wild internet is not so readily available. And he wants to take several readings per hour. So this is perfect application for internet through wireless transmission and that he has many locations wiring all these sensors and gadgets. So there are some considerations with this project. He needs long-term operation running off batteries. If the batteries don't last, he wants it rechargeable also. It has to be in a robust enclosure so that it can survive the elements outside. So the size is not a main concern, although he wants it small enough for portability for installation. So in the locations, there are possibly no Wi-Fi as it's near his shed or farm shank. And we have to consider also the low data rate limitations. So the type of peripherals, he doesn't want to tell me. He just tells me what interfaces he wants for this project. So now there are several IOT connection types. Starting with the oldest, we have serial connection. We have internet and fiber. So those are the ones we are not looking at. We are looking at all the wireless options available. There's Wi-Fi. There's RFID. There's ZigBee, which is quite popular in long distance and consume very little power. There's Bluetooth Low Energy. Unfortunately, that doesn't do the distance. There's Sixporks, Laura, and lately, the cellular companies like Singdel, M1, they have released a thing called the NBIOT. So what is NBIOT, right? NBIOT isn't easily available to us consumers. First, it's only available D to D. Unfortunately, that's not what we all can go to 7-Eleven and buy the same card for. So you have to meet up with one of their business people and then have a long chat, blah blah blah and then maybe you get evaluations in cards like the one I'm holding now, right? So what is NBIOT is that I'm not a cellular expert here but these are things I picked off from the internet. What this is that in the bandwidth given allotted to them by the government for cellular services, your 3-chain 4G mobile phones. They take a little portion to do low data rate transmission. Thereby, they can rely on the current infrastructure of all the cell stations they have in the country or countryside and use a small portion of their bandwidth reserved for NBIOT, narrowband. So these 4 statements, 4G-LTE means your 4th generation long-term evolution and the long-term evolution is being a type of 4G which is prevalent in our modern phones. So you have the fast LTE categories. Those are the ones that are used by the phones. They require high data transmission rate to support all your videos, your Facebooking, voice call, video calls and all that. Now the reason bandwidth in this slot given allotted to them is called narrowband IoT. It just uses a small subset of the bandwidth and it limits the data rate to fit within 200 kHz of their bandwidth allotted to them. So the data rate is lower despite using the same frequency band for all our mobile phone support. They can still squeeze in a tiny form of modulation of frequency spectrum to support narrowband. So they're using back the same base stations that they have already set inside the country. Now they have a second category of narrowband IoT. It's called the LTE-CAP-1 so this is a medium speed LTE standard but it is also categorised under NBIOT. So sometimes you see this terminology and CAT-M1-NBIOT so these two things fit in the umbrella for the usage of IoT applications. So not knowing all these inner details we use modules to support our project. So initially we started using Arduino shields but then we decided to move on to the ESP32 because it supports a bigger programming application. So two modules are currently available. The DGXP, this is the one here I'm going and another one called the SIM 7000. SIM 7000. There are two prevailing modules currently available. So what my customer wanted in this project was that he supports in all of these interfaces including rechargeable batteries and a real-time clock because the ESP32 doesn't have a real-time clock for supporting each sleep and also time heating. So before we started on the project we had to have a rough idea what we were dealing with. So we performed two quick tests before drawing out these schematics and then PCB. So in the first picture we tried the SIM 7000-C connected to an Arduino which is an Arduino. Okay, this was my first struggle. The SIM 7000-C version simply cannot work. No matter what I did in the programming I couldn't connect to our cellular base station. And the one I'm using is from Sintel. So it simply cannot work. We don't know why. We found out later that the 7000-C the C really meant for China usage. So if you're thinking of experimenting with the SIM 7000 don't use this version. So the next thing that we had was the XG, right? Thankfully my Leonardo has an XB connector on it. So this is a special Leonardo by DF Robot. It has two strips there to support the EGA XB module. Right? Okay, so we got some successes here. We managed to connect to Sintel and also to internet websites for data transmission and reception. So we went on with this for our project. At first the module from DIGI also did not work. So we had to use the XB test software called XCPU. So it gives a whole list of parameters that it can adjust. And the difficult things that we had to find out is where do I get this is the name S-T-M-I-O-T. So we had to dig through the web not having good support from Sintel themselves because their own application engineer is being put left and right so he had time to answer all calls. So we found out that this one was a stumbling block and also two more parameters which is the bandmask set for this country's also for Sintel's transmission. The second struggle is that things still didn't work as well because the XB that I got was an earlier version. So it was at firmware at 1140B. So after upgrading through all the steps it finally started to work properly. So this is another thing that the websites and the web support pages don't tell you rapidly. So you have to experiment it for yourself. So this was the second struggle. It took many weeks to discover all these things and which we finally decided to... So okay, the third struggle is that even after we got the connection things broke. Why? Because the same card expired. Alright, so after we had all our decisions kind of made we started to make a PCB. And this was the first version of a PCB. So like our friend here say it's the development of a product that is not straight forward. You just slap on things together on a PCB and it still works. There's a lot of testing needs to be done. So this being the first version more struggles. Okay, so I did some basic testing. I didn't bother with sleep mode so I just had it operating. So my normal CPU consumption was at 50mA operating. That's not in sleep mode. But when it connects to the cellular network it consumes 151mA. So these numbers are important to us because we want the product or this project to last a long time running on batteries. So the lower the power consumption the longer the batteries will last. So I finally did some testing. It works through the internet but when I did the sleep mode testing with the ESP32 the power consumption was good. My target was 100mA or less 200mA is a good starting point. Sorry I don't have a picture for that. But the CPU wouldn't wake up from sleep. So there therein lies another struggle. Damn it, everything works it's just the CPU won't wake up. So I can't put the CPU to sleep. So I could only demo it with my friend running at 56mA and 151mA during transmission. There was a little disappointment. So let's talk some schematics. So this is my power solution for the electronics on this board. It's only a portion of the whole schematics but the schematics isn't very large it's just one page. So this is a portion. So my battery charger I relied on a benchmark T-Texas instrument 24170 I spent a lot of time reading up and configuring this IEC I think I'm falling in love with it. I feel to pay much attention to the actual regulation of the power. So the battery charger works. I like it. It works great. The main regulators I thought it's just it's not a full time project anyway. So I just left in SOE23 Park regulator hoping we will regulate 4.2V into 3.3V required of the system. I felt a bit iffy so I just slapped on another alternate LDO regulator. My main concern for choosing the Park regulator was in the quiescent current. The less quiescent current contributes much lesser prolonging battery life. So this one's not bad. It runs at 1mAh operating. However I totally overlooked the minimum operating voltage of this Park regulator. Hey, I only want 3.3V right? A regulator should take just a little more and start to work. This one will not work at all. It was a bad choice. After reviewing data sheets, I discovered that it required 4.75V to start operating. So it was already a bad choice. Thankfully I had the LDO as an open-up regulator and I performed my test earlier using this one. So in this design, this first version that regulator was totally useless. So now um... continuing the test of the sleep mode, I discovered that running from 4.2V regulator down into 3.3V even with the LDO the ESP32 there was no problem. So that was a struggle also. When I first started testing I had no idea what's causing the CPU to not work properly coming out of sleep mode. Until I tack on the sleep mode I measured the power rails now it sleeps with 200 microMPS at 3.3V but during wake up when it's restarted there was a power spike in the ESP32 consumption all the way up to 200mA but you know frankly went through forums and other people actually recorded the same thing. That consumption of the 200mA is not from the CPU but from the flash supporting the CPU. So what ESP32 does when it goes to sleep it kills itself and on wake up it reloads the entire application firmware into ESP32. So that initial rush of program coming into the ESP32 is the flash work and the flash is the one consuming much of this power spike and I could observe from the scope it takes about 60-70ms and then it stayed quiet. So ESP32 the module went into coma. So that was the first bad design The second version I started to read up more on the power regulator ICs I found some good ones and this was a possible solution. It's from NS or National Semicone I've been brought over by TI So this is a TI part now It's LM46001 So now when I look at the data sheets for the power regulator the lower the recent current projector So this sounds quite good but in this data sheet it will take only 24 microamperes that's really small So I implemented it on the second PCB here and I measured it's no load condition it consume only 42 microamperes Wah, elated then I went on so I put that one that the old LDO back just in case that wasn't needed and this project started to work So although the regulator took only 42 microamperes the entire system between CPU and all the supporting supporting electronics for the system during sleep mode it consume a total of 120 microamperes nearer and nearer towards my target of 100 microamperes So currently I have some issues with the second version looks like I'm going to spin for third one again, I forget to put the reset button for CPU that's very important when developing sometimes the only way to reset is to run the Arduino IDE and hit upload again so there are other things I found out but using the ASB32 model only some lines can be made to wake it up call all of them so that third point is not important now XB3 from DG is very expensive it's $147 you can't sing dollars so when I research $18,000 it's only like $21 ya so now but that's not so bad because I also made the recent discovery and I actually tested it the same $7,000 I don't know what the E means C for China, E for Europe ah Euro, thank you so that works with the sing tell same card ya so now my project is push in the totally new direction I am going to use this new $7,000 E instead ya so that isn't even on the drawing board yet upcoming talks will be here and then another recent discovery right I the bug regulator I've been using is a downward voltage regulation so my lithium iron cell of 4.2 volts will eventually deplete and the voltage will go less and less and then eventually I won't get enough voltage to supply to the system electronics ya 4.2 volts to 3.3 no problem 4.1 to 3.3 no problem and if you just make it 3.5 volts to 3.3 the bug regulator may start to behave funny so this new regulator that I discovered was shared to me by a phase our heckware member also I don't know whether it's here today Sir Joe Virgil okay he shared to me regulator if the input voltage goes below the required 3.3 volts it will boost it upwards to 3.3 so this is a useful regulator I can squeeze a lot of energy out of the battery even if it goes down near the limit of 2.5 volts so other bug regulators exist but maybe expensive so is my project open hardware no not yet I'm too frightened I'm too embarrassed it doesn't work yet most of the times I see on the web of all these open source hardware projects they're fully working fully tested and that's what they call a release so I'm too embarrassed to put it out on the web just yet but my third version is coming so with that I end my talk