Organization: FOSSASIA
Project: Pocket Science Lab Android
Mentors: Mario Behling(@mariobehling), Hong Phuc Dang(@hpdang), Wei Tat(@cweitat), Lorenz Gerber(@lorenzgerber), Akarshan Gandotra(@akarshan96), Mie Lam(@mielamvn)
In summer of 2018, getting selected for GSoC internship and that too for FOSSASIA organization was a great oppurtunity for me. During this period I worked on Android app of Open Source Hardware platform Pocket Science Lab which enables school students, teachers, undergraduate to perform various experiments and study a wide range of phenomena.
FOSSASIA's Pocket Science Lab Android helps the user to exploit various functionalities like Oscilloscope, Waveform Generator, Programmable Voltage and Current Source, Sensor Data Logger, Multimeter etc of Pocket Science Lab hardware via Android Smartphone. It can also access the smartphone's in-built sensors to provide numerous sensor instrument like Lux meter, Accelerometer, Barometer etc. and can log data and export it to text file format like CSV from these sensor instruments using the Sensor Data Logger.
GSoC Link | GitHub Link | Website Link | Gitter Channel
During the first month, I was given priority of developing the Wave Generator instrument from existing control advanced module, for which I developed the complete module from scratch having User Interface very similar to the physical wave generators present in the market for making it easier for the user to operate and implemented it's functionality to work with the PSLab device to produce different types of waveforms by connecting it to the communication module. I have also created the Device Screen activity for showing the PSLab device connection status and resolved some major bugs in the existing codebase.
In the second month, I have made some significant changes in the app to improve the User Interface of the overall app and I replaced the dialog box containing instrument guides by introducing Instruction Guides using Bottom Sheet for all the instruments which remain hidden at the bottom and can be viewed by swipe gestures. I also created Settings Activity to enable the user to modify the general settings or settings of specific instrument within the app.
In the third month, I worked extensively to revamp the Sensor Data Logging module by integrating the Realm Database with PSLab Android App for the storage of the recorded sensor data within the app and also implemented the GPS Logger for logging the location of the user along with the recorded sensor data. I created activities to visualize the stored sensor data in the form of graphs with logged location being shown on maps and created the functionality to export the recorded data in CSV format with some extra information like datetime, location and device information.
Here is the link to all the blogs written by me: Blog Posts
This is the link to my everyday progress reports during GSoC'18: Scrum Reports
Screencast posted by me on Fossasia Youtube channel during GSoC:
Here is the link to my final project presenatation: Project Presentation
Below are the links to meetup that are conducted by me at my college:
Here is the link to all my blogs and meetup post retweeted by Fossasia: Blogs and Meetups tweeted by Fossasia
Here is the link to all the my GitHub issues that are still unresolved in the project: Unresolved issues
As the outcome, we were able to deliver a release quality Android app with revamped existing instruments, newly added sensor instruments, proper instruction guide for instruments, advanced sensor data logger along with major improvement in the UI/UX of the app.