Tag Archives: C

New project: CaptureTheData!

I’ve recently started a project on GitHub called ‘CaptureTheData!’. The project is about using cheap and readily available sensors like GPS receivers, Wiimotes or cellphones to create a cheap vehicle data logger. This data can be viewed/analyzed in an interactive web-application using a customizable dashboard.

The following video demonstrates the features of the web-application:

Visit the GitHub repository to read more about the project.

On a personal note, this project has been really great on improving my programming skills. Since I’ve started this project, I’ve learned a lot about:

  • Git, creating a repo, submitting proper commits, file diff
  • GitHub, setting up a repo, managing a project
  • GPL, how to use licenses on a project, how to obey the GPL license when including external libraries
  • MarkDown, creating files using MarkDown syntax
  • PHP, building a REST web service
  • C, setting up a project with a proper directory structure, using libraries
  • Make, creating a makefile using dependencies and including libraries
  • Shell scripting, create a shell-script to automate shell commands, using variables
  • Ext JS 4, creating a proper MVC application using models, stores, views and controllers. Using charts. Using external libraries
  • Firebug, how to use the Firefox plugin to analyze JavaScript, intercept HTTP requests, dig into data structures, parse JSON
  • SQLite 3, managing SQLite databases, indices, optimization of queries. Using them in C and PHP with libraries
  • Eclipse, using the JavaScript Development Tools, PHP Development Tools and C Development tools

I already had a lot of knowledge on interfacing with GPS receivers (using NMEA), cellphones (using the Hayes command set) and WiiMotes (using WiiRemoteJ) and have used this on various projects in the past. Applying this knowledge on one large project was very satisfying.

 

PIC Thermostat controlled by SMS – Final assignment

I didn’t succeed in getting the SMS communication to work. The compiler had various problems, and due to the time constraints we decided to simplify the task.

When a text-message with the word “Temperature” arrives on the Wavecom modem, the sender received an SMS with the current temperature.

Below are some pictures of the setup with the DB038 PIC board and the Wavecom modem (and RS232 to TTL conversion). On the photographs, the setup is connected to a computer for debugging purposes, it can also operate stand-alone. It is a completely embedded system.

PIC Thermostat controlled by SMS – Preview

After a short discussion with the teacher, we decided to use the thermostat I developed earlier in a new project that requires an embedded system to interact using SMS.

Meanwhile, all hardware is ready, and the thermostat that was previously written in assembly is rewritten in C. In addition, the thermostat also sends textual messages containing the current status. The only part that has to be developed is the SMS communication.

Below is a short demonstration video, using a computer to communicate. Ultimately, the messages displayed on the computer-screen will be sent using SMS.