pets are integral part of human society. there are many toys and accessories for them but not may gadgets which they can use. the most popular and common gadget is the tracking device which monitor their activity and also help them locate if they get lost. However you will observe not many pet owners especially dogs owners don't use these trackers despite them being available for a at least a decade.
one main reason for this less adoption is the frequent requirement to recharge them. My goal is to develop a pet tracker (at the moment focusing on dogs) which can last a few weeks to months without recharging.
one option to solve this is to simply increase the battery capacity. however this just makes the tracker heavy. alternate option is to reduce the power consumption and add energy harvesting so that the battery life is prolonged.
in addition to this, i wanted to add more features like activity and health monitoring for pets to give more insights to their owners.
Sony Spresense is very capable controller and yet has low power consumption. which makes a good choice for this project. additionally it has GPS builtin which eliminates the requirement for an external GPS and since GPS is an integral part of the tracker, it reduces the complexity and BOM cost. the size of the system is also important and therefore the small size of the chip (with gps) makes it a very compact product. additionally, Sony Spresense has an LTE extension board which offers low power cellular connectivity out of the box. this really simplified the development process.
i started with energy harvesting as this seems to be the most challenging part. for that i selected 4 different energy harvesters available BQ25504, BQ25570, LTC3588 and LTC3109. i designed the schematics and the pcb with options to use any one of them. the input options were low power DC sources (solar) as well as low power AC sources e.g. piezo elements).
the pcb was them fabricated from jlcpcb. i ordered the components but since BQ25570 and LTC3588 were out of stock, i was only left with two designs to test with. once the pcbs arrived, i soldered them using soldering iron and homemade SMT soldering plate. and tested the units. both the circuits worked as expected and i selected the BQ25504 as the main harvesting IC as it offered lower minimum voltage for harvesting.
the next step was to test the energy source. there were two options, AC sources like piezo elements and vibration and secondly DC options like solar to TEG(thermo electric generators). i tried first with AC sources but didnt have much luck. i even built a custom coil and magnet mechanism to convert vibrations to energy but the voltage generated was too low. therefore i focused on solar instead.
for solar i selected a flexible solar panel as the tracking device had to be spherical in shape. the solar panel selected worked and it delivered enough power to start the energy harvesting process. the power generated was around 1mW in sunlight.
the next was to test the digital part. once i received the dev kits, i did some basic bringup and hello world testing. i also printed a 3D enclosure to keep the devkit safe.
i selected arduino as the toolchain as i was more familiar with it. everything worked out of the box and i was able to get gps coordinates using the sample code.
Next using the LTE-M sim card and the sample code to establish connection to the internet i was able to activate and use the IOT sim and establish LTE-M connection.
the next step is to combine the two parts i.e. get the gps data and send it to the internet and then back to the user to its phone. the arduino example sketch was pretty good that it took care of the internet connection and publishing to the MQTT broker. However i need to get familiarize myself how to setup the server side of things and get data from the device via MQTT and then send it back to the user's smartphone. also i am looking into whats the simplest way to have an app that can display GPS data on a map.
this is currently where i am at i.e. setting up the server side using MQTT and a barebone app that can display gps data. On the hardware side, the energy harvesting is working and I am able to charge the battery. the battery will connect to the spresense devkit, but i haven't soldered the battery connector (not to damage the board with soldering).
On the software side, the sample code provided by spresense was very helpful as it was very easy to use. the LTEGNSSTracker code is almost exactly what i need to have something barebone to send gps coordinates.
Comments