Inspiration
The idea initially came from the software feature that some phones have to reduce their carbon footprint by choosing to charge at times when more renewable energies are available on the grid.
While this feature is interesting, it is only available to select devices that have this software feature. We wanted to bring this feature to any device that needs to charge its battery by drawing power from the grid. Not only did we want to optimize how devices charge their batteries for sustainability, but we also had the idea of optimizing charge times for when the grid has lower demand. This also has the side effect of cost efficiency.
What it does
In our current tech landscape, most electronic devices are plugged into the mains and left to charge until they are needed again. A great example is leaving a phone charging at night until the next day. Most devices will not require the full time to reach full charge, and therefore spend most of the time idle after charging immediately.
With the smart charger app, a device's battery is charged depending on the current state of the grid. A user can choose to optimize their charging for either lower cost or for a lower carbon footprint. The app returns the best time to start charging based on data from AESO.
From the perspective of grid operators, optimizing for lower cost has the effect of helping even out demand. This is an important characteristic as it improves the stability of the local power grid.
How we built it
We built our webapp using next.js deployed with vercel.
Challenges we ran into
Finding a way to obtain the publicly available data about the grid was the biggest challenge of this project. We initially learned about web scrapers before then exploring options with APIs. We will had to spend time learning to process and filter through the API data.
Accomplishments that we're proud of
We are most proud of having been able to finish the project as this was our first Hackathon ever and we came into this event with no prior experience.
What we learned
We learned a great deal about the technologies behind web apps. This was our first exposure to the idea of front end as well as backend stacks. In our process we ended up choosing Next.JS as our technology of choice as we decided to use Vercel as the hosting provider. This also meant that we spent time learning the Javascript syntax.
What's next for Smart Charger
The main goal of smart charger is to distribute the load from charging devices on the grid. Smart charger does this by pulling publically available data about the grid to find when demand is lowest within a given time period, which is then suggested to the user. If a smart charger were to scale to be a very large system, the influx of users at the suggested time could cause a peak which would defeat the purpose of the program. This could be remedied by having the application keep track of when users start charging in order to stagger the smart charge userbase
Another improvement would be to tie in the state of charge and rate of charging of the devices being managed by smart charge in order to further optimize the distribution of chargers.
In its current state the app is a bit slow as it has to fetch data from the grid API for each query, the speed could be greatly improved by setting up a database that caches the data along with the hosting provider of our website.
Built With
- next.js
- vercel
Log in or sign up for Devpost to join the conversation.