Hi this is literally my first post on Photrio but since I have been lurking here for so long and learnt so much, I figured I would publish my attempt on an Darkroom timer based on the F-stop system when used in conjuction with an enlarger.
First off before anyone thinks this is a super polished solution - it is not. It will be ridden with bugs and contain certain quarks - but it works for me. I am however more than happy to listen bug reports and suggestions including for new features.
However I did this project on my own very limited free time, so while bug reports are appreciated, do not expect corrections to be made within day or weeks. Lastly since this project involved mains powered electrical work - i.e. something that can kill you; be aware of the risks and if you are not confortable or competent doing electrical work... just don't.
And with that out of the way on to the good stuff.
Objective
Key Features/Functionalities
P.S. Do watch this space as I am still putting the touchup to the documentation and polishing the Arduino Sketch and will put them up ASAP.
First off before anyone thinks this is a super polished solution - it is not. It will be ridden with bugs and contain certain quarks - but it works for me. I am however more than happy to listen bug reports and suggestions including for new features.
However I did this project on my own very limited free time, so while bug reports are appreciated, do not expect corrections to be made within day or weeks. Lastly since this project involved mains powered electrical work - i.e. something that can kill you; be aware of the risks and if you are not confortable or competent doing electrical work... just don't.
And with that out of the way on to the good stuff.
Objective
- Create a cheap Arduino based darkroom timer that covers all time based activities and processes
- Utilise “off-the-shelf” parts such as shields and breakout boards to eliminate custom PCBs and minimise individual component count
- Define a standard hardware system which can be utilised by any one to create their own custom firmware and share for new "flavours"
- Updatable and modular code structure that can be easily debugged/modified without impacting other functions of the code
- Use of simple coding so any beginner C++/Arduino programmer can make changes (also an excuse due to my limited programming knowledge)
- Maximise hardware so that there is (preferably and hopefully) one hardware version with different firmware flavour by other others by:
- Effective use of pins i.e. using I2C for the LCD
- Maximise pin use for inputs such as switches, keypad and rotary switch
- A focus on UI/UX through larger screens (20x4 vs 16x2 LCD) so that users can be guided through the timer interface rather than reading the manual or having to remember all the steps/keys
- As cheap as possible – so that we can buy more film!
Key Features/Functionalities
- All in one timer for the darkroom with a focus on F-stop based calculator for the enlarger timer function.
- Multiple input methods including a keypad, rotary dial with push button, dedicated button to enable enlarger focus and start/stop switch/foot switch.
- Large 20x4 LCD to allow greater space for user interface design
- Audio cue to allow users to focus on their activity (burn and dodge) while being aware of the time
- Foot switch to allow hand free operations especially if hands are positioned for burning and dodging
- Connections for mains powered safelight and enlargers up to 250v
- Key software modes/function:
- Clock and Countdown timer function
- Minute/seconds clock – Simple timers with audio cue at the minute and second mark respectively
- Countdown timer – User imputable countdown timer up to 999 minutes
- Test strip creation function
- User selectable method for test strip creation (gradually open or gradually close test strip)
- User definable base time (shown in stops and seconds), number of exposure steps (up to 9), and exposure stops between first and last steps (in stops)
- Enlarger timer
- User definable method for print creation (Addition mode; building up on continuous exposure - i.e. user have pre-calculated the exposure differences in zones and are expecting to expose base only on the differences OR Absolute mode; knowing all the different exposure zone values and letting the system calculate the right for each zone
- User definable exposure (in steps) up to 0.01 difference, burn (additive) or dodge (subtraction), dry down factor in percentage up to 1% difference, and filter factor (i.e. when filter factor 4 or more is defined, the timer will automatically add the defined filter factor to the exposure).
- Clock and Countdown timer function
P.S. Do watch this space as I am still putting the touchup to the documentation and polishing the Arduino Sketch and will put them up ASAP.
Attachments
Last edited: