The project consists of two parts, but also in two stages.
Stage 1
Part 1, C/C++ code for an Arduino. “Arduino is an open-source electronics prototyping platform based on flexible, easy-to-use hardware and software. It's intended for artists, designers, hobbyists, and anyone interested in creating interactive objects or environments. Arduino can sense the environment by receiving input from a variety of sensors and can affect its surroundings by controlling lights, motors, and other actuators. The micro-controller on the board is programmed using the Arduino programming language (based on Wiring) and the Arduino development environment (based on Processing). Arduino projects can be stand-alone or they can communicate with software on running on a computer (e.g. Flash, Processing, MaxMSP).”
Part2, Web server/interface that controls a token authentication synchronized with the Arduino
The concept of this project is to achieve the following.
A computer server will receive a request in s similar format (not standard, and can be changed if needed for infrastructure)
1234 5678
The first set of 4 numbers is the ardunio ID code or location code. The second set of 4 numbers is the item code or product identifier. The purpose of these codes are to uniquely identify each ardunio device separately, and the second number is for integration into a database for product tracking.
The system must be able to take the first and second set of numbers and record that request in a database with time and date stamp, and then return to file our output to screen a special one time use 7 digit code which is also recorded in our database. This 7 digit code will be referred to the “token” code. Somehow we have to be able to generate code that can sit on the arduino and act as a one way authentication system. Each ardunio is technically to be synced with our server and each individual arduino will always know which 7 digit code accept. A remote use at the location of the arduino will have to input this 7 digit token code via a standard 12 button input. If the code matches or is accepted by the arduino the arduino will trigger a green light and send a certain pulsing negative or positive sequence via the output section of the analog ouput of the arduino. If the user inputs the incorrect code, a red light is flahsed and nothing happens. I would like the arduino to support a single line lcd screen so that the user could identify that he/she entered the key correctly.
I am open to all suggestions on how to do this differently. Possibly different hardware, even different concepts.
A simple working proof of concept is acceptable. But the setup must be able to work. There are arduino emulators on line and I will accept a full emulated version.
Stage 2
This is the future development and completion of the project. I deem you capable of handling this project, then you will be expected to work and complete stage 2, but required to sign non-disclosure documents, and you could be retained on a monthly salary.
All source code must be supplied and verified WORKING before the release of final payment. A sample of something working must be approved before I release any milestone payments. I will put HALF of accepted bid into escrow, to avoid money sitting in freelancer.com