Before we start, I will explain a bit about few terminologies that you should know first.

Since Arduino is a type of a micro-controller, so what is Micro-Controller?
Micro-controller is a small computer on single integrated circuit board containing a processor core, memory and programmable input/output peripherals. Processor is the brain that do the process for all instructions given from the programmer. Memory is the temporary place to keep all instructions before processed by the processor. And programmable input/ouput mean that we can program Arduino to do something and change it with new program in the future.

What is the benefit using Arduino?
You can program arduino to control anything. From the simple one, light on an LED light to more complicated one. You can use it to monitor the temperature, wind speed, home automation (Music, TV, Fan, Pump, Lamps, water plant), check gas leaking, motion sensor, light sensor, heart beat sensor, robot etc. etc..
The limitation from the implementation arduino is your idea.

What you should know if you want to use Arduino?
You have to know at least basic C programming language and basic function of electronics like transistor, resistor, diode, relay, AC power and DC power. Because basically arduino is only supply and receive electric DC current through its pins, digital and analog. Just simple like that.

What are the types of Arduino?
First generation of manufactured Arduino is NG (new generation). NG used the Atmega8 chip running at 16MHz, 6K memory and run at 19200 baud. The next version was Diecimila with Atmega168 chip, 16MHz, 16 kilo byte (K) memory but still still run at 19200 baud.

In 2009 Duemilanove was released with Atmega328, 32K memory and run at 57600 baud. There is a good thing in this version. The power supply can be switched from USB to DC. Finally Arduino can be stand alone.

All of the above version use 2KB bootloader and FTDI (FT232RL) chip to control the USB interface. FT232RL is royalty free driver but it is only act as USB port. You can can’t use it with keyboard, mouse, MIDI etc.

In 2010, we got Uno. Uno in Italian mean ‘One’. It’s named to mark the upcoming release of Arduino 1.0. The Uno and version 1.0 will be the reference versions or Arduino. Uno still use Atmega328 but has smaller bootloader (521bytes) mean that you get another additional 1.5K free extra flash memory for programming. It also has atmega8u2 chip to replace FT232RL which allows various type USB interface. Now it runs at 115K baud. You can upload your codes in 3 seconds.

Arduino Uno board (front side)

Arduino Uno board (back side)
Continue Reading »

What is method?
In programming language, method is something that you do to an object.

For example, the object is ‘door‘ and you want to apply an action ‘open‘.

In python you can write as: door.open().

door = object

open = method

( ) = argument

Argument is the place for parameters that you apply to the method.

For example, you want to open your door half only or full open then changing the color painting to blue or red.

The syntax will be:




In python, you can use built-in methods or create it manually.

Let me explain more details.
Continue Reading »

If Statement is a conditional that python will check before taking a new action. If statement result is TRUE, python will process the command given otherwise it will ignore and execute the next step.

The syntax is:
if statement:

Let’s try.
>>> myprogramming_language=’python’
>>> if myprogramming_language==’python’:
print “Python is my programming language”

Python is my programming language

myprogramming_language=’python’ will tell python, please enter variable myprogramming_language with value python.

if myprogramming_language==’python’: will tell python, if myprogramming_language is equal with ‘python’ then execute the next line, otherwise just ignore and continue to the next step.

If it’s equal mean the condition is True.

If it’s not equal the condition is False.

Continue Reading »

Strings is one or more combination of alphabet. Python will recognize double colon(“ ”) or single colon (‘ ‘) for string declaration.

For example, to declare ‘This is a string‘ as string, you can use double colon or single colon.

>>> “This is a string”
‘This is a string’
>>> ‘This is a string’
‘This is a string’

Very easy. How about to write Hii… I’m python. There is one single colon in the string.

You can’t write, ‘Hi.. I’m python’ because python will confuse to set the beginning and the end of the string because single colon in (I’m) will consider as end of string content.
>>> “I’m python”
“I’m python”
>>> ‘I’m python’
SyntaxError: invalid syntax

But, with “double colon is fine.

>>> “I’m python”
“I’m python”

Continue Reading »

Function is a built-in program that available in Python that we can use to simplify our programming code. Mostly every programming language provide their built-in function according to purpose why it’s created. Functions in C, python, pearl, vb, assembly will be different.

To use function in python, you have to write the function name then followed by the parameters that the function need. Parameter is the information that will be used by function to solve the problem.

Built-in Functions:
abs(), divmod(), input(), open(), staticmethod(), all(), enumerate(), int(), ord(), str(), any(), eval() isinstance(), pow(), sum(), basestring(), execfile(), issubclass(), print(), super(), bin(), file(), iter(), property(), tuple(), bool(), filter()
,len(), range(), type(), bytearray(), float(), list(), raw_input(), unichr(), callable(), format(), locals(), reduce(), unicode(), chr(), frozenset(), long(), reload(), vars(), classmethod(), getattr(), map(), repr(), xrange(), cmp(), globals(), max(), reversed(), zip(), compile(), hasattr(), memoryview(), round(), __import__(), complex(), hash(), min(), set(), apply(), delattr(), help(), next(), setattr(), buffer(), dict(), hex(), object(), slice(), coerce(), dir(), id(), oct(), sorted(), intern()

Continue Reading »

John The Ripper (JTR) is one of best password cracker ever built. At the first time, it’s design to detect the weakness of UNIX password. Now, it’s available for Unix, Linux, Windows, DOS, BeOS and Open-VMS. It supports several crypt password hash types in Unix, Kerberos AFS and windows NT/2000/XP LM hashes.

John The Ripper is a free and open source and distributed in source code file but for easy installation you can buy John The Ripper Pro.

 Before we start, you have to download JTR from http://www.openwall.com/john/g/john-1.7.9.tar.gz and put it in your selected folder.

 In this tutorial, I put JTR under /opt folder.
Type ‘sudo tar xvzf‘ following by JTR file name. The name can be different depend on which version that you have. I type: sudo tar xvzf john-1.7.9.tar.gz

Continue Reading »

Frontlinesms is SMS gateaway server that enables users to send, receive and manage SMS over a mobile network. The interface is web based so you can make it run with a laptop for small volume messages or with a server for larger volume of messages. You don’t need an internet connection to run the frontlinesms. The text message is sent via mobile phone, GSM modem or SMS aggregator. So, the users only pay based on the standard text message charges from the mobile provider.

FrontLineSMS version 2 is release in summer 2012.
I will show you how to install Frontlinesms in your computer.

Step 1. Make “frontlinesms” folder in “/opt” directory.

In linux terminal, type:
cd /opt
mkdir frontlinesms

then copy the frontlinesms installer “frontlinesms2_unix_2.1.3.sh” into this folder.

Installer program can be download from this link:

Before you start, make sure that you have Java installed in your system because frontlinesms is built using Java SDK.
In linux terminal, type: “java -version” to check.

Continue Reading »