Go Down

Topic: Looking for a coder - Make OLED, RTC and Optical Encoder communicate via I2C (Read 311 times) previous topic - next topic

dxwolf

Hello everyone!


I have a little project here and intend following function:


An array of LED's should blink at 1.0 seconds ON followed by 5.0 seconds OFF, for a pre-defined time (around 8h), repeating every day.

The product shall contain an OLED, independent powered RTC and Optical Encoder to set LOCAL Time, ON-Time and OFF-Time upon installation.
Use of digital pin #7 of the Arduino to power a Photo-MOSFET Relay which is connected to the LED array.
Arduino, RTC, OLED and Optical Encoder shall communicate via I2C bus.



Function:

Every time power is supplied:
Digital output pin #7 of the Arduino goes high for 2 seconds.
OLED shows welcome message (text) for 5 seconds, then goes off.


At first power up, the local time (hh:mm) shall be set in the RTC.

After welcome message disappears:
Push Optical Encoder once, OLED shows current RTC time
Push and hold Optical Encoder for 6 seconds, OLED displays "SET LOCAL TIME" and the current RTC time, hh blinks
Set hh using the encoder
Push Optical Encoder once, OLED displays "SET LOCAL TIME" and the current RTC time, mm blinks
Set mm using the encoder
Push Optical Encoder once, OLED displays "LOCAL TIME" and the new set local time
If no action, OLED turns off after 10 seconds.

Next, the ON time shall be set.

After welcome message disappears:
Push Optical Encoder once, OLED displays "LOCAL TIME" and the local RTC time.
Push and hold Optical Encoder for 2 seconds, OLED displays "SET ON TIME" and the current RTC time, hh blinks
Set hh using the encoder
Push Optical Encoder once, OLED displays "SET ON TIME" and the current RTC time, mm blinks
Set mm using the encoder
Push Optical Encoder once, OLED displays "ON TIME" and the new set ON-Time
If no action, OLED turns off after 10 seconds.

Next, the OFF time shall be set.

After welcome message disappears:
Push Optical Encoder once, OLED displays "LOCAL TIME" and the local RTC time.
Push and hold Optical Encoder for 4 seconds, OLED displays "SET OFF TIME" and the current RTC time, hh blinks
Set hh using the encoder
Push Optical Encoder once, OLED displays "SET OFF TIME" and the current RTC time, mm blinks
Set mm using the encoder
Push Optical Encoder once, OLED displays "OFF TIME" and the new set OFF-Time
If no action, OLED turns off after 10 seconds.


Components:

- Arduino Uno R3
- Adafruit 931 OLED I2C (https://www.adafruit.com/product/931)
- Macetech Chronodot V2 (http://docs.macetech.com/doku.php/chronodot_v2.0)
- Optical Encoder DUPPA I2C Encoder (http://www.duppa.net/i2cencoderv2/)


I2C Adresses:

OLED: 0x3C
Clock: 0x68
Encoder: 0x08


I am looking for someone who can do the coding for me as I do not have a programming background. Please PM, thank you. Compensation offered.

cedarlakeinstruments

Are you mentioning those parts because they are what you already have on hand, or because it's what you prefer to use? Are you open to using other components?
Electronics and firmware/software design and assistance. No project too small

jimLee

PNW Ardiuno & Maker club
1012 9Th Street, Anacortes, WA 98221 (Around the back of building)

Nishant_Sood

Hey Michael,

I'm getting your PMs but somehow seems like you aren't from my side!
Lets talk using email.
"Real Men can Accomplish  Anything"

- skype : nishants5  
ਫ਼ਤੇਹ ਕਰੁਂ!
www.winacro.com

Go Up