High-Level Project Summary
iRadiance is a powerful mobile application that extracts useful data from NASA POWER Portal to provide homeowners with simple to understand information while purchasing solar panels in their regions. The application will display the information based on user-friendly settings in several clean line graphs. This will help them understand the past historical weather information in their region from up to 30 years ago. The app will also suggest suitable solar panels and calculate the estimated electricity bill that could be saved to help homeowners recognize the effectiveness of solar panels in saving electricity. With iRadiance, everyone can benefit from MOTHER NATURE without hurting HER!
Link to Project "Demo"
Link to Final Project
Detailed Project Description
Abstract
This project aims to develop a mobile application that can be used across platforms to provide useful information to help homeowners in purchasing solar panels at his/her region.
iRadiance - The mobile application that collects past historical solar irradiance and relevant data from POWER Portal and then displays it in simple and useful data in the form of several line graphs.
Problem Statements
-Huge amount of parameters
NASA POWER Portal provides a gateway for the public to access parameters that are useful for commercial renewable energy. Other than that, there are other useful datasets that are made available for the public. However, the problem is that too many parameters will confuse typical homeowners. In order to view data that are relevant to themselves, they will need to meticulously go through the documentation to understand the parameters and search for the one that they need.
-Complicated Steps in Viewing the Parameters
As mentioned above, users will have to read through the documentation and search for the data that they need before they can access the data. The majority of users do not have time to go through all of that, thus they will probably just quit using POWER Portal.
-Lack of Data Visualization
The data and parameters are available in JSON, CSV and other formats. However, it might be hard for a typical homeowner to understand and digest the data.
How do we Overcome these Problems? (Core Functions)
To overcome the problems stated above, we decided to design and develop an app that allows the user to...
Obtain the data with simple steps

In our app, the user can easily view the data that are relevant to them with two simple steps: just input their location and time range, and the data will be available. Users will be able to view past historical weather information from up to 30 years to the user in an easy to digest manner. Some of those parameters include: Solar Irradiance, Cloud Amount, Temperature and Precipitation. All of these data are originated from NASA POWER Portal. Before the data reaches our app, it is processed using R language, to do data modelling and data predictions (Details available at the Space Agency Data section).
View the data in Graphs (Data Visualization)



With the data from NASA POWER Portal, line graphs and bar charts are generated for the users so that they can analyze the patterns and make the data relevant to themselves.
In addition...
We find it important for users to understand the impacts of using solar panels. Therefore we added a function that allows users to
Compare Electricity Bills Before and After Using a Solar Panel
In our app, the users can input their monthly electricity bill rate and specifications of the solar panel to calculate the difference in electric bill amount before and after using a solar panel. This will indicate how much money could potentially be saved by the user when they use a solar panel, thus incentivizing the user to purchase a solar panel.

If users are not familiar with solar panel specifications, they can just use the default specification.
How Does it Work?
Overall, we used React Native to create our app prototype so that it will work on both iOS and Android devices, as well as Windows Phone.
Accessing Data from NASA POWER Portal
All the data collected originate from NASA POWER Portal. To do data modelling and missing value prediction, the data is imported and processed using R language before it reaches our app. For more details, visit Space Agency Data section.
Data Visualization
Once the data reaches our app, line graphs and bar charts are generated by using Victory Chart components.
Electricity Bill Comparison
To calculate the amount of money that will be saved when using a solar panel, the formula below is used.

We will ask users to input the electricity rates charged in their region, as well as other billing information to generate an accurate comparison.
Foreseen Benefits
- iRadiance can make NASA POWER portal simple and easy to understand, without sacrificing on accuracy.
- User-friendly interface makes accessing information and data a more pleasurable experience.
- Users become more informed on things like sunlight irradiance in their region.
- Less of a hassle when doing research before buying solar panels.
- Promotes a more eco-friendly source of clean energy.
What We Hope to Achieve
iRadiance was built and developed with the intention of making solar energy technology and information more widespread and accessible. With this app, we hope that more people can access data on daylight, irradiance and solar panel efficiency. Armed with this knowledge, we hope that people become more knowledgeable on the subject of solar power.
We hope that the masses will be able to use that data to its fullest by buying the most suitable solar panel for their household.
In line with that, we also hope that by making data more accessible and easy to absorb, people become more willing to go through with purchasing solar panels, as it becomes less of a hassle to do their own research.
Lastly, we hope that this app also acts as a strong incentive for people to make the switch to solar energy by showing them just how much electricity they could be cutting down per year.
Development Requirements
iRadiance is developed using React Native, with the source information gathered from NASA POWER Portal. With the help of our team members, the mobile application has been developed successfully.
Tools Used
- Visual Studio Code (For Main Coding)
- GitHub (For Project Collaboration and Version Control)
- Discord (For Telecommunication)
- Figma (For Drafting User Interface)
- Heroku and Docker (For Hosting Custom API call from R)
- Android Studio (For Testing Application on Virtual Device)
- R Studio (For Data Modelling and Value Prediction)
- MS Visio (For High-Level System Design)
- ExpoGo (For Testing Application on Virtual and Physical Devices)
Coding Languages
- React Native
- R
- Javascript
Data
All our data and information were gathered directly from POWER Portal data, a website hosted by NASA in order to obtain the most accurate data on solar irradiance and other factors that could affect the effectiveness of solar panels.
Hardware Used
- Desktop/Laptop with Internet access
- Android Phone
- iPhone
- Windows Phone
References
- Youtube tutorial videos
- React Native documentation
- FreeCodeCamp tutorial
- StackOverflow
- Victory Native Chart
- W3schools
- MDN Web Docs
- Presentation Slides: https://cloudmails-my.sharepoint.com/:p:/g/personal/tp054834_mail_apu_edu_my/EaiuOt_X1epPlhqKrAeAFiUBH6wwPMhj8YUoIlvKEUvDFw?e=S6EGOE
Last But Not Least
The URL below leads to our presentation video where we will explain more about the iRadiance mobile application. We would love to hear some feedback from you!
240 Seconds of Glory - Presentation Video: https://cloudmails-my.sharepoint.com/:v:/g/personal/tp054834_mail_apu_edu_my/EWD-7LwPi4dKoXgDvsLE26UBkdqTwCqmzbKqxVRc2gaqWQ?e=1zQ1dA
How to use iRadiance - Project Demonstration Video: https://cloudmails-my.sharepoint.com/:v:/g/personal/tp054834_mail_apu_edu_my/Efh8J1J66OlDmxTI0VErGgQB59zPeoqRBATMUvFl-b813Q?e=74O2zw
Space Agency Data
Abstract
This project uses the NASA POWER Portal data information to implement into our iRadiance mobile application. Data are imported from NASA POWER Portal into R Studio in JSON and CSV format for data modelling and prediction. The data is processed and organized before being displayed to the end-user so that the data can be easily understood without complicated steps.
Detailed Explanation
Data Prediction- Missing Data from NASA POWER Portal
NASA POWER Portal made energy resource-related information available to the public. However, some of the recent data are not available. For example, there are missing values for daily Solar Irradiance data for recent months.

To overcome this problem, we decided to build a simple prediction model using historical data, because apparently NASA POWER Portal provides data for the past 30 years. POWER Portal data is called into R studio, and a prediction model is built. Then missing values are predicted using Kalman Predictor(Kalman Filter). Then the completed set of data is used in our app.
Data Processing - Getting measures of central tendency
Another problem with NASA POWER Portal data is that monthly data for the current year(2021) is not available, despite the fact that daily data is available for at least up to the previous month.

To get the monthly data for the current year, measures of central tendency are calculated in R Studio using the daily data. This makes monthly data available for the end-users of our app.
Custom API Endpoint to Connect iRadiance and POWER Portal
For iRadiance to get processed data from POWER Portal, we created a custom API and hosted it on Heroku. Thus, our app can call data from our custom API, which call the data from POWER Portal and processes it before it is used by our app. For the custom R API, details can be access from https://github.com/HowHow06/r-solar-data

Data Visualization
Using Victory Native chart component, the data is then displayed to end-users in line graphs and bar charts to allow the end-user to easily understand the data and to see the pattern and relationship between the Solar Irradiance and other parameters or factors such as Cloud Amount, Temperature and Precipitation. Besides viewing different parameters, the end-users can also view the graph at different time temporals, either monthly, daily, hourly etc.

Calculating the Future Estimated Electricity Bill if Solar Panel is used
To calculate the electric bill amount that could be saved when the end-user is using a solar panel, the mean of solar irradiance over years at user’s location is calculated and is used in our calculation. (see the formula at Detailed project Description)
Hackathon Journey
This is the first time our team has made an application using coding. Some of us have never even coded before. Through this hackathon process, we had the opportunity to join workshops and do many kinds of research on our topic to present the best application for everyone.
With the growth of the population, the use of electricity in every household is increasing rapidly. However, our earth is getting more and more polluted by the production of electricity using fossil fuel and coal. With our application, we truly hope it can help the development of clean & renewable solar energy to replace the general production of electricity for households.
It was a huge challenge for us to collaborate through online, especially when we had to discuss our topic. Luckily, we found different collaboration tools such as Discord and GitHub that helped us integrate our work seamlessly. Coding was another challenge for our team as most of us have not touched on coding before and we had to develop an application within the 48hours. With our dedication to the hackathon challenge, we finally pulled it through and it was eventually a success.
We want to give a special thanks to our Minister of Education, Science, and Technological Research Sarawak, NASA, and all collaboration partners. We are very grateful that you have provided us with this wonderful opportunity to have this virtual hackathon in Sarawak. Other than that, we would also like to extend a warm thank you to Teacher Teo who provide us with an abundance of information and cleared any of our doubts.
References
Tools Used:
- Visual Studio Code (For Main Coding)
- GitHub (For Project Collaboration and Version Control)
- Discord (For Telecommunication)
- Figma (For Drafting User Interface)
- Heroku and Docker (For Hosting Custom API call from R)
- Android Studio (For Testing Application on Virtual Devices)
- R Studio (For Data Modelling and Value Prediction)
- MS Visio (For High-Level System Design)
- ExpoGo (For Testing Application on Virtual and Physical Devices)
Coding Language:
- React Native
- R
- Javascript
Data:
- POWER Portal data
Hardware Requirements:
- Desktop/Laptop with Internet access
- Android Phone
- Iphone
- Windows Phone
References:
- Youtube tutorial videos
- React Native documentation
- FreeCodeCamp tutorial
- StackOverflow
- Victory Native Chart
- W3schools
- MDN Web Docs
- Presentation Slides: https://cloudmails-my.sharepoint.com/:p:/g/personal/tp054834_mail_apu_edu_my/EaiuOt_X1epPlhqKrAeAFiUBH6wwPMhj8YUoIlvKEUvDFw?e=S6EGOE
- Custom R API: https://github.com/HowHow06/r-solar-data
Tags
#YouAreMySunshine #SolarPanel #iRadiance #MobileApplication #Mobile #POWER #POWERPotal #ReactNative #DecisionSupport #Sun #Android #Iphone #Windows #Software #EXPO
Global Judging
This project has been submitted for consideration during the Judging process.

