Arduino code enhancement

Posted last year
Worldwide

Hello,

I'm working with a teensy board and I have a well-working program that I'm trying to add some functions to. I've reached my knowledge limit and need help getting the last pieces to work.

Here's how it generally works:
Pins 0,1,2,3 are functions
Pins 4,5,16,17 are LEDs

When Pin 0 is grounded, the program plays 'system/greeting.wav' and then begins recording, saving a numeric WAV files to the root folder. No change needed.

When Pin 1 is grounded, the program plays 'system/greeting.wav' and then begins playing the saved WAV files, in order from the root folder. No change needed.

Here's where I need help:

When Pin 2 is grounded, it should light up LED pin 4 and play 'system/warning.wav' on a loop. I have this working already but:

Pin 3 is the issue. When Pin 3 is grounded, I need it to interrupt Pin 2's loop, light up both LED Pin 4 and LED Pin 5, and run a new function. Pin 3 should ONLY work if Pin 2 and Pin 3 are BOTH grounded.
- If Pin 2 gets disconnected, it should stop Pin 3's function and go back to Ready state.
- If Pin 3 gets disconnected while Pin 2 is still grounded, it should stop Pin 3's function and stop LED Pin 5, and revert to Pin 2's function and LED.
- If Pin 2 and Pin 3 are both grounded, LED Pin 4 and LED Pin 5 should light up, it should play 'system/recordwarn.wav', beep, and then record a new file 'system/greeting.wav', overwriting the existing file. When Pin 3 disconnects after a recording only, it should then play 'system/recordconfirm.wav' and then go to Ready state.  

  • $300.00

    Fixed-price
  • Intermediate
    Experience Level
  • Remote Job
  • One-time project
    Project Type
Skills and Expertise
Arduino C++ Arduino Firmware
+ 2 more
Activity on this job
  • Proposals:
    50+
  • Interviewing:
    0
  • Invites sent:
    0
  • Unanswered invites:
    0
About the client
Member since Sep 22, 2020
  • United States
    San Diego 12:58 AM
  • $4.5K total spent
    25 hires, 1 active
  • 145 hours
  • Individual client

Explore similar jobs on Upwork

Simple Bluetooth project with nRF52805
New
Fixed-price ‐ Posted 12 minutes ago
Firmware Embedded Application Internet of Things Software nRF52 Bluetooth Android C Bluetooth LE iOS
Crypto Wallet Firmware Downgrade Expert Needed
New
Fixed-price ‐ Posted 10 hours ago
C++ Blockchain Cryptocurrency C JavaScript

How it works

  • Post a job icon
    Create your free profile
    Highlight your skills and experience, show your portfolio, and set your ideal pay rate.
  • Talent comes to you icon
    Work the way you want
    Apply for jobs, create easy-to-by projects, or access exclusive opportunities that come to you.
  • Payment simplified icon
    Get paid securely
    From contract to payment, we help you work safely and get paid securely.
Want to get started? Create a profile

About Upwork

  • Rating is 4.9 out of 5.
    4.9/5
    (Average rating of clients by professionals)
  • G2 2021
    #1 freelance platform
  • 49,000+
    Signed contract every week
  • $2.3B
    Freelancers earned on Upwork in 2020

Find the best freelance jobs

Growing your career is as easy as creating a free profile and finding work like this that fits your skills.

Trusted by

  • Microsoft Logo
  • Airbnb Logo
  • Bissell Logo
  • GoDaddy Logo