Will Code For Food

Custom Programming

I started using embedded operating systems back in the late 1980s, which led to me spending about 12 years working for Microware Systems Corp, the creators of the OS-9 real-time operating system. I do embedded C programming as my day job, and have worked with BASIC Stamp, TI MSP430, Arduino, and Raspberry Pi.

If you are wanting to do something with an Arduino (or similar device), but cannot find the program you are looking for, I am available to custom write software for you. I am glad to help with code snippets and tips when I can, but I can also create full custom applications for you at very low cost.

I even accept Bitcoins!

E-mail me if interested.

10 thoughts on “Will Code For Food

  1. Babu Parker

    Hi I am new to Arduino. Just finished my first Quiz buzzer project. Code below. I now would like to add a ITEAD MUSIC PLAYER SHIELD to play a specific track from the DS Card when any of the buzzer buttons are pressed.
    Please help I don’t mind paying for this service

    Code for quiz buzzer below

    // Arrays to define the Arduino pin sets assocaited with the big button boxe (arrays are zero relative).
    int outputPins[4] = {13,12,11,10}; // The numbers of the LED pins.
    int inputPins[4] = {5,4,3,2}; // The numbers of the switch pins.

    // Some variables to control processing
    int maxPins = 4; // Max number of pin sets (1 in and 1 out for each contestant button).
    unsigned long WinDelayTime = 5000; // Number of milliseconds to wait while the winner LEDs are on.

    void winner(int); // Function definition.

    // Begin processing

    void setup() {

    // The setup() function is performed once when the Arduino is powered up or reset.

    // Initialize the LED pins.
    // This tells the Arduino how the pins will be used.
    for(int i=0; i<maxPins; i++){
    pinMode(outputPins[i], OUTPUT); // Make this an output pin.
    pinMode(inputPins[i], INPUT_PULLUP); // Make this an input pin

    void loop(){

    // The loop() function is executed after the setup() function completes.
    // As the name implies the loop() function loops forever or until the Arduino is reset.

    int val = HIGH; // Used to determine if an input pin's state has changed to LOW
    for(int p=0; p<maxPins; p++){
    // Read the state of each input pin.
    val = digitalRead(inputPins[p]); // This reads the value of the assocaited input pin.
    if (val == LOW){
    // If a pin goes LOW then someone pressed a button. We have a winner!
    winner(p); // Call the winner() function with the number of the winning pin set.

    void winner(int p){
    // Set the associated output pin to HIGH thus sending power to the winning button's blinking LED circuit.
    digitalWrite(outputPins[p], HIGH); // Turn the LEDs on
    // Wait 5 seconds
    // Set the associated output pin to LOW thus killing power to the winning button's blinking LED circuit.
    digitalWrite(outputPins[p], LOW); // Turn the LEDs off

    project link: http://www.instructables.com/id/Quiz-O-Tron-3000-Arduino-quiz-contestant-lockout-/?ALLSTEPS

    Babu Parker

    1. Allen Huffman Post author

      Fun project! Unless they have introduced another one, the iTead music shield cannot play a specific file. It can only simulate pressing play, stop, next, prev, etc. just like using the MP3 player manually. I found a $22 one that you can tell it to “play file 3” or “play file 12”. You might be able to fake it with the iTead shield by sending “play, skip, skip” or something to make it get to file three, but I am not sure if you can rewind back to the start file.

  2. Adam

    I am interested in having you look at a project I’m working on. It is a safety product built on the arduino platform and given your experimental nature, I think you could have some fun with it.
    I can offer canned food, dried or frozen – fresh food may spoil on the trip over, sorry… We can also have a look at gift vouchers, food stamps or actual money for your services (which would probably suit us both as canned food will cost a lot to post…)
    You should have my email address from my registration below, if not, post a reply and I’m sure we will be able to sort something out.
    To give you some idea: it is a wearable device, we’ve prototyped it out a number of times and we will be looking to bolt on a few extras (GPS, temp & CO2 sensors, mesh net capabilities and a few other bells and whistles) while maintaining light weight, low power consumption and a slimline form. We have made some headway in having designs drawn up for our own flexible PCB but now need an arduino mind with a sense of adventure to complement the team.
    Looking forward to hearing from you, Adam.

  3. LH

    Hello i know this is not the best place to ask for this but i didn’t find any other way to contact you. I wonderd if you would consider sending me the basic program for your vic20 game “Brick layer”. Thanks already in advance.


Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.