ALD’s EdX Final Project

Project title : ALD’s fuel level App

Elevator Pitch. 

This App allows anyone to measure the fuel level in ALD’s tank and input the new data in a google spreadsheet database.


ALD’s house is heated by a boiler fed with fuel. When the fuel is gone, there’s no heated water, nor heat in the house. So she (and here father) designed  an arduino – Raspberry Pi device which would monitor some data in the house : some temperatures and the duration of anytime when the boiler starts. With the duration, it’s possible to compute the amount of fuel used. The data is sent to a google spreadsheet. This app allows the user to input new data to this spreadsheet. ALD will use it to input real measurement so that the constants used to calculate the fuel consumption may be updated with real data.
The app’s social benefit is only for ALD ! But she has started writing a tutorial (in english) to explain how to make an app able to interact with a google spreadsheet and to make use of advanced chart APIS for the data display.

Download and Test.  

scan with your android device to get the app
scan with your android device to get the app

This App may be tested using either the emulator (I did not test it) or using a phone or tablet. The data used to display either a table or a chart comes from a google spreadsheet. So the device must be able to download data on the internet.To download the app, scan the QR code to the left with the MIT AI2 Companion app or some other Scanner or click on this download link (Fioul_project_AL.apk).

You may also download the .aia fileFioul_project_AL (.zip). The .zip should be renamed to .aia if you want to see the whole project on App Inventor 2, and look at the design view and the blocks used.

If you are unsure (because my user interface is below standard since this app is for my own use) of what the app should deliver, see this post : the « Fioul Project app specification« .

Technical Description.  

The app goes beyond the minimum technical requirements. and it uses a component which we did not use during the course : the web viewer. The web viewer makes use of an html file, in which a script in Javascript produces the line chart or table display.

App screenshot

A screenshot of the app when displaying line chart of the data. The user just touched the screen so that more information is displayed on the chart where it was touched.

See every details with the google charts API

Data Abstraction.

The app must include at least two variables and must make use of either a list or a database.

4 global variables (no local ones) are used :

4 global variables

Lists are used :

Use lists

The database is a google spreadsheet, called through the app inventor code. Displaying the data inside the app is done using the Google Chart API.

Procedural Abstraction.

The app must include at least two programmer-defined procedures or functions.

6 programmer-defined procedures are included. Here are two. 

Programmer-defined procedures

Algorithms and Control.  

The must include at least one if/else structure or one loop.

5 if/then or if/then/else structures are used. Here is one.

If/then/else structure

What I know should be improved

  • The user interface is not very nicely set.
  • It is not very easy to know what to do with the app. I’m not sure I would have done better had the app been done for anyone and not just myself.
  • If there were a lot of rows in the database (the google spreadsheet), it would be necessary to add user controls, in order to display only specific data, as selected by the user.
Please tell me what you think about any improvements !

Poster un Commentaire

plus récent plus ancien Le plus populaire
Notifier de

Nice app, very good.