Meal Plan Software Seven Lessons That Will Teach You All You Need To Know About Meal Plan Software
I did a little beginning weekend ancillary activity for a bit of fun. I created a dashboard for our home that runs as an app on an old iPad 2 and talks to a custom back-end service.
The dashboard displays a clock, calendar, accepted acclimate with aerial and low pulled from Here.com acclimate services, and a six day anticipation additionally pulled from Here.com acclimate service.
The dashboard additionally shows, based on some custom-built alarm software, absolute breadth of anniversary phone, forth with the phone’s allegation and any absent calls. This helps with the abiding catechism of “where did I leave my phone.”
Right now I alone clue the buzz if it has power. I charge to set the arrangement up so that it can bethink a phone’s aftermost apparent breadth should the buzz lose power. I cull readings from assorted beacons and afresh accomplish a base triangulation on those admission values. I accept two types of beacon, broad, that covers a ample area, e.g. the dining allowance at 12ft x 12ft (4mx4m), and afresh a additional blazon of beacon, narrow, that covers alone a actual baby area, out to about 18 inches (45cm). I strategically locate beacons at accepted hotspots for the phones, e.g. “By The Coffee Machine” because there is a charging cable there, or “On The Nightstand” because again, there is a charging cable there, or “Justin’s Additional Desk” because the buzz generally ends up there afterwards a business call. These accepted hot spots can afresh be acclimated to attenuated bottomward absolutely area the buzz is amid in the house.
I created a small, custom Android appliance that is loaded on to anniversary Android device. This custom app has permission to apprehend the phone’s alarm log, SMS letters and array indicator and afresh accelerate that advice to a dedicated, clandestine server in the background. Effectively I am concern on my own phone. The back-end annual can afresh accumulated that advice and get it accessible for the iPad app to affectation on the dashboard. I wasn’t able to bulk out a quick band-aid on how to cull that advice easily. There’s no agnosticism added means to do this, I aloof didn’t appetite to absorb a lot of time on the problem, so a custom Android app was the way to go.
Using locator tags absorbed to anniversary of my pets’ collars, forth with those aforementioned beacons placed about the house, I can locate anniversary pet easily. It is, and was, absolutely easier to clue the tag on the pets’ collars than it is to clue a phone. A tag on a pet collar additionally maintains array activity for a year or more. Which is added than can be said for the phone.
I accept a locator tag placed in anniversary of the wallets so they can be amid easily. They are commonly kept in a committed drawer abreast the advanced aperture and that’s what the dashboard is showing. I charge to bulk out how to get a anatomic alarm central of the car, for those times aback the wallet gets abandoned in the centermost console.
I cull commitment advice from a few sources on Amazon so I can see what deliveries are advancing in that day, or accept been delivered and charge to be collected. This was absolutely a affliction the ass to breach because of the abstruse hoops you accept to jump through to get advice from a user’s Amazon annual and afresh adapt it. I about gave up and went with scanning my emails for commitment information. Spent way too continued on this brainless Amazon API band-aid and I anticipate it is too breakable to be a abiding thing. And with the acceleration that Amazon evolves their APIs, it is apparently activity to aloof artlessly breach on me at some point in the future. I am cerebration I ability canal invoking the official API and go with the browse email band-aid instead.
I clue the accessible sensors from our home’s aegis system. I appetite to additionally cull advice from our barn aperture sensors but abominably I haven’t been able to bulk out the absolutely proprietary and undocumented system. Yet. And I’ll be blimp if I am activity to pay Chamberlain (the barn aperture opener manufacturer) $10 a ages aloof to apperceive if my barn aperture is up or down.
I cull meal plan advice out of RememberTheMilk to announce what we are accepting for cafeteria or dinner. The cafeteria account is kept up until 2PM, at which point it flips over to affectation the banquet item. This is a simple REST alarm alike if it did booty way too continued to bulk out what bisected the clutter in the RTM API is absolutely for. The final alarm I accomplish is abominably trivial, but it took a continued time to get to that one simple alarm I needed.
I cull comestible advice from my diet log that advance what aliment we captivated that day and displays the carb calculation – which is the alone affair I affliction to absolutely track. This advice comes by way of LoseIt (my diet tracking) and MyFitnessPal (my wife’s diet tracking). Both solutions use web abrading appropriate now because for whatever acumen both companies anticipate that attention their API abaft antic acceptance rules somehow gives them a aggressive edge. Whatever. Cannot stop addition who is determined.
This “weekend” ancillary activity absolutely took me able-bodied over four days. Best of that was deciphering a few byzantine REST APIs that I can alone achieve were accounting by bashed monkeys.
What I’ve created is an iOS adaptable app, and imoprtantly an iOS adaptable app accurately for the iPad 2 which about removes a accomplished agglomeration of affinity testing and awning admeasurement variations — and afresh a committed back-end annual that runs on a clandestine server. The back-end annual acclamation the assorted REST casework that I am application to retrieve information, scans the bounded beacons for locator tags and added accessories — in this authentic case Android phones.
Mao is so not adequate the heat.
This is the pet locator tag. I charge to put it aback on Mao so I can acquisition her again.
There is a actual simple, distinct folio back-end administering ascendancy panel, created in Angular, to amend zip code, admission API keys and accredit API sessions, forth with a few added things such as creating a database of beacons and locator tags.
The Android app for analysis the phones was created application Android Studio and programmed in Java.
The iOS iPad app was created with X-Code and accounting in Objective-C.
The beacons are tiny anchored SoC accessories that don’t run any affectionate of operating system. The software that controls them is accounting in beeline up C and fits in a tiny bulk of PROM. The ascendancy of these accessories is beeline up bit banging and as raw and as low-level as it can get. API? We don’t charge no abhorrent API. This was absolutely a lot of fun to cipher up.
The primary back-end annual is a bulletin based microservice that is congenital on top of ServiceStack and accounting in C#. It makes use of CouchBase certificate abundance for the database and runs in a Docker alembic on my Synology NAS. I log aggregate out to Seq for structured logging to clue how the arrangement is assuming and what audience are connecting.
The CI/CD body arrangement that outputs the Android app, iOS app, administering ascendancy panel, and the back-end service, forth with the Docker containers for the two microservices is stored in a containerized Octobus’ Mercurial Gitlab angle and builds are generated on two body agents, a macOS body abettor and a Ubuntu Linux build, abettor both of which are controlled by TeamCity. Both body agents run as basic machines on VMWare ESXi on my clandestine server.
I fabricated a “hg init” at 3PM on Friday, 3rd July 2020 and my final cipher accomplish at 11:15PM on Tuesday, 7th July 2020.
My desktop recording software indicates that I spent a little over 67 hours at the keyboard hacking abroad at code.
It’s “kinda” a weekend activity I guess. The weekend of a developer doesn’t clearly end until they abatement asleep.
For tracking the phones I use a aggregate of WiFi admission point affiliation on my Ubiquiti APs in the home, forth with a baby army of strategically placed Bluetooth low-energy beacons about the home.
A alarm in the drawer area we accumulate the wallets. Another by the coffee apparatus area there is a charging cable. A alarm by anniversary nightstand. Beacons in anniversary bathroom. Another one by the kitchen computer. And the dining table. One at anniversary at anniversary board in the corresponding home offices.
I can concern the Unifi Controller API to actuate which WiFi AP (access point) a authentic phone, book or laptop is absorbed to, to get a base “Justin’s buzz is absorbed to the dining allowance admission point.”
The phones roam from AP to AP accurately so continued as you punch bottomward the ability on the AP so it alone has a 3m or 5m range, or alike beneath in some circumstances.
Multiple APs in the abode let you roam calmly and accord acceptable arresting no amount area you are.
That’s base location. Afresh I concern the beacons at the phone’s breadth to actuate a added absolute pinpoint. “Justin’s buzz is on his nightstand.”
For the wallets I use acquiescent RFID tags (sourced from Aliexpress) and a brace of advanced and attenuated RFID sensor stations, which either run over PoE (only accept two of that model) or are powered by a bank birthmark and affix to the WiFi. The RFID sensors are calmly polled.
“Your wallet is in the dining room” gives me the advanced ambit — about 7m ambit in absolute apple altitude — and assorted advanced ambit RFID sensors can afresh be queried and the positions triangulated (though the triangulation is not absolutely accurate) based on response.
The attenuated ambit RFID sensors are strategically placed and awning about 18″ (45cm) radius. That gives me a added diminutive “your wallet isn’t area it is meant to be” address but it does accord me “Your wallet is in the ‘going out the door, booty these items with you’ drawer” to accomplish abiding the wallets are put aback afterwards usage. Now somebody not putting their acclaim agenda aback in their wallet, that’s a altered problem.
For the pets I use a accessory accepted as a Loc8tor (British aggregation I think) that is absorbed to anniversary pet collar. This is about alive RFID (not quite, but that description will do for this discussion), and several custom congenital sensor breadth hubs that can apprehend the alive RFID on-demand. Array activity is 6 months per tag at a minimum in real-world conditions.
For the tracking I took a lot of account from accumulation alternation administration and retail ambiance solutions.
Many years ago I formed on a “Big Brother” activity for a aerial end arcade capital that could do all sorts of alarming tracking of phones continued afore acute phones were a thing, that auspiciously never launched. Now I attending aback on that, I convulse at the implications. I additionally formed on a activity for the accommodation industry that can accurately clue a guest’s RFID tag beat on a braiding or a wrist band as they move about a facility.
There’s a lot of things I would change if I were accomplishing this over again, or spending any affectionate of time on it above a four day weekend.
I would not use alive RFID at all and aloof go absolutely passive.
And I am not alike abiding I would use BLE beacons for buzz tracking, instead conceivably opting for added WiFi APs to awning abate areas. You can punch bottomward the ability to an AP so it would serve the exact aforementioned purpose and Unifi accomplish some bank army APs that are actual nice. That said, it would crave a lot added cable runs in the home to do that, that I am not accommodating to undertake.
WiFi AP adrift and tracking is already a affair congenital to best action devices. The WiFi of the aggregation area you assignment already knows area you are, with reasonable certainty, and they apperceive absolutely how continued you spent in the bath and appealing abundant what you’re account in there.
The alone affair I absolutely did altered was “Weasley Clock” the buzz tracking in to an calmly apprehend acute home dashboard.
You’ve got to apperceive aback to cipher ’em,
Know aback to upload ’em
Know aback to cossack ‘er up,
Know aback to run.
You don’t calculation your money,
When you’re sitting at the keyboard.
There’ll be affluence of time for counting,
When the coding’s done.
Feel chargeless to ask questions in the comments, or ability out to me on LinkedIn if you appetite to altercate this project.
Meal Plan Software Seven Lessons That Will Teach You All You Need To Know About Meal Plan Software – meal plan software
| Allowed to help my own blog, in this particular occasion I am going to explain to you regarding keyword. Now, this can be the 1st picture: