PDA

View Full Version : FADU F-stop Enlarger Timer App for Android


Bob
20th August 2018, 08:42 PM
FADU F-STOP ENLARGER TIMER



The project files for the FADU F-stop Enlarger Timer have now been moved to GitHub as that is a more appropriate place to maintain the project - but read on for an overview and release notes etc...


INFO

Current Version: 1.5.0 released to the Google Play Store.

Of note for version 1.5.0 is the ability to use Sonoff Basic R3 and Mini devices without the need to reprogram them.

Project files: https://github.com/filmanddarkroom/FADU_Timer

Manual: https://github.com/filmanddarkroom/FADU_Timer/tree/master/documentation

Play Store entry: https://play.google.com/store/apps/details?id=appinventor.ai_bob_remote.DarkroomTimer Web_0_1

Direct link to the current live version manual: https://github.com/filmanddarkroom/FADU_Timer/blob/master/documentation/FADU%20Enlarger%20Timer%20Manual%20V1_5_0.pdf


OVERVIEW

The FADU F-Stop Enlarger Timer is an enlarger timer which can optionally drive a reprogrammed WiFi smart switch or relay module to power the enlarger's lamp on and off. It has f-stop timing adjustments for either single-exposures or exposure test-strips, including a manual-switch-friendly mode for those unable to connect the app to a WiFi enabled switch.

The app is designed to work on phones, but will run well on tablets. I suggest you always restart your phone before a session and put the phone into Aeroplane mode to prevent sluggish response by the WiFi switch as the phone needs to concentrate on talking to the WiFi and not do any of the 100 other things it can do. If it does get sluggish, toggling out and back in to Aeroplane mode seems to fix it.

Free and open source, the source code is available on GitHub (https://github.com/filmanddarkroom/FADU_Timer). User instructions and details of the optional hardware interface are also in the manual on GitHub and as an attachment to this article.

The timer can be used as a stand-alone timer to calculate f-stop timing for manual on/off switching of the enlarger, but can also be used to drive the enlarger lamp via a commonly available WiFi smart switch (Sonoff S20 or Sonoff Basic) that you reprogram to work with the timer. Alternately, an LC Technologies WiFi relay board module may be driven without the need to reprogramming (but as a bare pcb, it wlll need a box and a 5V power supply).

New for version 1.5.0 and above is the ability to use Sonoff Basic R3 and Mini devices without the need to reprogram them - simply put them into DIY mode and the timer app can drive them via your local WiFi router. All that is required in this case is simple DIY skills to wire them in and put them in a box.

Reprogramming the Sonoff devices requires some basic electronics knowledge, but if you have experimented with the Arduino system it should not present any difficulties. The reason for this annoying extra technical step is that I have been unable to find an off the
shelf smart socket that can be driven directly from an Android device or web page. All the smart sockets I have found have to go through a Cloud-based service and the undefined time delays caused by this round-trip makes them unusable in this application where we need to define the on/off time with precision.

If you know of a smart socket that can be driven by a web browser on your local network ***without going through the internet first*** please let me know as it would be great to avoid this reprogramming step!

The LC Tech board does not require any programming but should only be used on the low-voltage side of an enlarger's transformer/stabilizer due to poor separation on the pcb between the terminal tracks and the low-voltage circuitry.




RELEASE NOTES


Version 1.5.0:

1. Added [PULSE R3] mode: uses a Sonoff Basic R3 or Mini device in the "Inching" mode of the R3 DIY mode API (http://developers.sonoff.tech/basicr3-rfr3-mini-http-api.html) to send fixed duration lamp-on commands to the Basic R3 or Mini in DIY mode. See Appendix 1 for details.

2. Added mode: uses a Sonoff Basic R3 or Mini device in DIY mode. The downside of this mode is that all the lamp-on and lamp-off signals go via your Wi-Fi router which adds random delays of typically 5 - 100ms on my network - and occasionally much more. See Appendix 1 for details.

3. Added the ability to use the camera's flash LED. Can be used for flashing paper if you add a diffuser over the LED and use the Delay setting to give you time to raise it to the right height after setting the time. Light activated relay boards do exist but keeping the bright light out of the rest of the darkroom may prove difficult. Could also be useful for testing or demo purposes.

4. Added individual volume controls for the various beeps and buzzes (scroll down the SETTINGS tab if you do not see them). A bit tricky to use due to being small (I could find no way to enlarge them in App Inventor) - I find that touching the slider button for a second before sliding it is helpful. The settings are reloaded the next time the app is launched.

5. You no longer need to use the [SET] button on the STRIPS tab. The strip's times automatically update when changing the base time or opening the tab. The [SET] button is retained although it is now believed to be redundant.




Version 1.4.0:

1. Single strip mode [SINGLE] added for when you are using individual strips of paper instead of making multiple strips across a sheet of paper. Each strip-time is for the whole f-stop calculated exposure.

2. The Memories now display their contents.

3. Now scales (mostly) correctly for tablets.

4. Main tab's F-stop Mode now reduced as all it's functionality now moved to the Strips tab.


Space was made for displaying the memory's contents by shoving the now largely obsolete f-stop calculation section on the Main tab to the right of the display.

I have updated the manual to include the changes since 1.3.0 and the instructions now include the Sonoff Basic Wi-Fi switch. I may make a reprogrammed version of this available on Tindie - TBA.

Some small tweaks:

Changed the Strips tab left side config title to "SET MODE" (still don't like it, but will have to do for now).

Changing strip Mode to [SINGLE] now updates the strip-time list - other selections already did this but adding the SINGLE mode means this button should do so too now.


Version 1.3.0:

1. STRIPS mode tab added: This mode allows the easy creation of f-stop incremented test strips. Three methods are included - see Strips Mode chapter below for details.

a. Continuous mode [CONT]: intended for users with no lamp switching hardware. Sounds a beep 0.5 seconds before the end of each strip’s time before starting the next strip time.
b. Auto mode [AUTO] : pauses the timer and switches off the lamp between each strip for a settable delay time.
c. Manual mode [MANUAL] : pauses the timer and switches off the lamp between each strip until the user taps [START] to move to the next strip.

2. Auto-Reset option added on the Settings tab. If set ON, resets the timer at the end of the exposure time to the previous time.

3. Delay time is now variable on the Settings tab from 0 to 10 seconds. An enhanced form of the previous “Count-in” setting.

4. About screen added to provide some basic info and links.


Version 1.2.0:

1. Stay Awake: Screen no longer goes to sleep (assuming your phone allows sleeping to be overridden).

2. Manual Link: added a button in the Settings menu to open this user manual on the FADU forum site using the phone’s default web browser. [obsolete in 1.3.0 – now a link to GitHub on the About screen]

3. Wi-Fi Relay Driver: Can now optionally drive an LC Technologies Wi-Fi relay module for low-voltage use. No reprograming required for this module but it should only be used on the low voltage side of a colour enlarger’s transformer/voltage stabiliser. It will also need a box and a 5V dc power supply.

4. Count-in Option: an optional 3-second delay to the count start added to allow time to prepare before the count starts. [upgraded to 0-10s selection in 1.3.0]


[B]Version 1.1.0:

1. 1/10th Second Timing: Added ability to time in 0.1 second increments.

2. Up/Down buttons removed. Setting the exposure time is now performed by tapping the top (increment) or bottom (decrement) half of the required display number.

Bob
20th August 2018, 08:55 PM
To answer some common questions:

1) Uploading the new firmware to the Sonoff S20 wi-fi socket uses the Arduino IDE so can be performed with Windows, Linux and Mac operating systems. I only have experience of the IDE used in Windows so cannot assist in setting up the Arduino IDE for other systems but I am certain this is well documented online.

2) You may need to check that the FTDI board you wish to buy will work with your operating system but I believe the FTDI adaptor boards can be used with any OS assuming the correct drivers are available.


Cheers, Bob.

Bob
21st August 2018, 12:21 AM
The App Inventor 2 project code and manuals are now at: https://github.com/filmanddarkroom/FADU_Timer

The main branch holds the current release as available from the google Play store and the wip branch holds the latest development version - this may be unstable - check the notes.

Barry
21st August 2018, 10:48 AM
Great stuff Bob, thanks for your work on this excellent app.

ianbarber
21st August 2018, 10:21 PM
Thanks for the project Bob. I shall be ordering the FTDI adaptor tomorrow to have a play with it.

This takes me back to my Radio Ham days when I used to build all my own receivers and transmitters. It will be nice to get the soldering iron warmed up again and the AVO out of its case.

Bob
22nd August 2018, 08:04 PM
Thanks for the project Bob. I shall be ordering the FTDI adaptor tomorrow to have a play with it.

This takes me back to my Radio Ham days when I used to build all my own receivers and transmitters. It will be nice to get the soldering iron warmed up again and the AVO out of its case.

It does have the advantage that really complex stuff is much cheaper than it used to be. The Sonoff S20 is under a tenner and the FTDI adaptor is about £3. You also need the pin-header and female-to-female "Dupont" connector ended wires (or you can just solder flying leads temporarily to the FTDI and Sonoff boards - but buying them will also cost next to nothing).

Have fun, Bob.

Bob
26th August 2018, 06:56 PM
FADU F-stop Enlarger Timer App for Android

26-Aug-2018 update:

* Updated Appendix 3 which now has most of the necessary details (probably too much detail) to reprogram the Sonoff S20 firmware.

* Attached a PDF version of the manual to the article.

Still some stuff to add.

tillari
9th September 2018, 01:36 PM
Thanks Bob for this job!

I’m using the app, but not for the enlarger. I’m using it to control the time for the developer, stop and fixer baths. For this case, it would be very useful to have a louder sound when the timer finishes.

Thanks a lot!

Ariel

Bob
1st October 2018, 05:11 PM
App updated to work to 1/10th of a second increments.

Fro the next update I am working on a better & faster way to do test strips so it beeps at you to move the mask to cover the next strip instead of you having to manually advance the timer to the next step.

Also need to add a 3-second count-in to give users a chance to get ready before the countdown starts.

Bob
2nd October 2018, 08:46 AM
Thanks Bob for this job!

I’m using the app, but not for the enlarger. I’m using it to control the time for the developer, stop and fixer baths. For this case, it would be very useful to have a louder sound when the timer finishes.

Thanks a lot!

Ariel

Hi Ariel.

Interesting observation. I find the final beep a little too loud if I have the ticks at the right volume for me - but my hearing is not great so it may be my poor hearing at fault. If anyone else has the same issue, please let me know. I will investigate the options.

Yes, good point - the memories in the FADU timer will let you preset times for paper processing. It will not auto-step to the next process step like a proper process timer but it's definitely an option.

Cheers, Bob.

redtreephoto
31st October 2018, 09:20 AM
Hello - I know nothing of electronics - so shared your post for advice in The Darkroom FB group - I hope you don't mind. The response I received was: "A relay with a WEMOS type board (or nodeMCU) can work as a server so you connect directly to the board via wifi using your phone. Its a much better solution than having a smart plug that works over the home wifi network. The delay should be less. If you have a system that keeps the connection always active without energy saving, you can have even less delay" and " tell him to look for WEMOS D1 for example, they are quite stable little wifi boards."
I hope this helps regarding the question of an alternative to the plug. My timer just died on me and this type of device would be really useful if it did not need any electronics know-how. Thank you for developing it.
Kind regarsd

Bob
23rd December 2018, 02:34 AM
Hello - I know nothing of electronics - so shared your post for advice in The Darkroom FB group - I hope you don't mind. The response I received was: "A relay with a WEMOS type board (or nodeMCU) can work as a server so you connect directly to the board via wifi using your phone. Its a much better solution than having a smart plug that works over the home wifi network. The delay should be less. If you have a system that keeps the connection always active without energy saving, you can have even less delay" and " tell him to look for WEMOS D1 for example, they are quite stable little wifi boards."
I hope this helps regarding the question of an alternative to the plug. My timer just died on me and this type of device would be really useful if it did not need any electronics know-how. Thank you for developing it.
Kind regarsd

Hi, and thanks for the suggestion.

Sorry for the late reply, but your post got lost down a software rabbit-hole and only just appeared!

Yes, I am aware of these kinds of boards and did consider them but the problem is that it still needs electronics knowledge to connect the relays on the boards to the enlarger and to provide a power supply for the board. Even more worrying is that the user will be messing with mains voltages which are highly dangerous to the uninitiated. The advantage of the Sonoff Wifi sockets is that they are already fully assembled and the user does not go anywhere near the mains.

However, I am thinking of adapting a readily available board for use on the low-voltage side of colour enlarger transformers so it will be safe for the inexperienced to connect them to the enlarger. The item here (https://www.banggood.com/5V-ESP8266-Dual-WiFi-Relay-Module-Internet-Of-Things-Smart-Home-Mobile-APP-Remote-Switch-p-1270421.html?cur_warehouse=CN) is what I have in mind but there are still issues to do with the amount of power they can handle (100 - 150 watts only).


Thanks for taking the time to ask around - much appreciated.

Cheers, Bob.

Bob
1st February 2019, 07:17 PM
A new version (1.2.0) of the FADU Timer App has been uploaded to the google play store and the user manual here updated.

It has a few tweaks but most usefully can now drive an LC Technologies relay board without the need to program anything yourself!

On the minus side, this relay module should not be used with Mains voltages as I am unhappy about the separation between the relay terminals and the low-voltage circuitry on the board. It is best used on the low-voltage output from a colour enlarger's transformer/voltage stabiliser. Some DIY skills still required to give it a power supply (just buy a 5V "wall-wart" from ebay/amazon) and put it in a box. Details in the manual (I suggest downloading the PDF version as it's a LOT easier to read).

Oh, there have been the massive number of very-nearly-almost 200 copies of the app downloaded from the google play store and still not uninstalled ;)


Cheers, Bob.

Bob
23rd March 2019, 05:28 PM
A new version (1.3.0) of the FADU F-stop Enlarger Timer App has been uploaded to the google play store.

This update includes a new test-strip screen with 3 modes for f-stop incremented strips - one of which is targetted specifically at people switching the enlarger lamp manually by providing audio beeps to tell them when to move the masking card to the next strip.

Cheers, Bob.

Bob
23rd March 2019, 05:32 PM
A new version (1.3.0) of the FADU F-stop Enlarger Timer App has been uploaded to the google play store.

This update includes a new "Strips" screen with 3 modes for f-stop incremented test-strips - one of which is targetted specifically at people switching the enlarger lamp manually by providing audio prompts to tell them when to move the masking card to the next strip.

Note that I have moved the project files etc to a public repository on GitHub (https://github.com/filmanddarkroom/FADU_Timer) as it was getting too complex and time-consuming to maintain here. This article will remain as the landing spot for any questions and notifications etc.


Cheers, Bob

Bob
19th April 2019, 10:42 PM
A new version (1.4.0) of the FADU F-stop Enlarger Timer App has been uploaded to the google play store.

This is probably the last update for a while as it now does pretty much all it needs to do.

I might be making reprogrammed Sonoff Basic devices available on Tindie for anyone that can't reprogram them themselves and want to have a play.

Cheers, Bob.

Bob
19th October 2019, 08:43 PM
Just a quick note that Ruslan Isubilov has adapted the Timer app and converted it to drive his DIY LED enlarger head. He has a example of it in use on Youtube: https://www.youtube.com/watch?v=c4ezHlgEDvI&lc=z22vyf55euaxvpxmiacdp43besfo21ihgjzglcf2iuhw03c 010c.1571383535631377

Anon01
20th October 2019, 09:24 AM
Does anyone have any images of this working somehow ???

Bob
20th October 2019, 05:33 PM
Does anyone have any images of this working somehow ???
Only in Ruslan's video as far as I am aware.

The snag with using the app comes when you want to connect it to an enlarger lamp. That requires an external hardware interface. Several options exist, all of which require some level of electronics project experience as there is nothing suitable off-the-shelf. The manual has the details.

LesMeehan
6th February 2020, 09:04 AM
Hi Folks
Very frustrated that, having follwed the instructions in the FADU timer manual, I just can't get the android timer app to connect to the wifi relay switch I have wired to my enlarger.

I have a TalkTalk router for my internet and it shows the relay device is connected. The relay works with the eWeLink app no problem.

I have put the dedicated IP shown on TalkTalk for the relay into Settings in timer app and changed it to read LC Tech but no joy.

Any ideas on what might be wrong here?

Appreciate any help as I really love this timer app!

Regards
Les Meehan

LesMeehan
6th February 2020, 09:11 AM
Hi Bob
Did you ever start selling the programmed sonoff devices?
I haven't a clue doing that stuff and would love to buy a ready to go one so I can use the Android FADU timer app.
Regards
Les Meehan
A new version (1.4.0) of the FADU F-stop Enlarger Timer App has been uploaded to the google play store.

This is probably the last update for a while as it now does pretty much all it needs to do.

I might be making reprogrammed Sonoff Basic devices available on Tindie for anyone that can't reprogram them themselves and want to have a play.

Cheers, Bob.

Bob
7th February 2020, 12:36 PM
Hi Les.

You mention setting the app to "LC Tech". Can you give a link to the relay board you bought - just to make sure we are talking about the same board.

Does the “AI-Thinker_xxxxxx” network show up on your phone? If so, you need to connect your phone to that network first before the App can talk to it.

Also, disconnect any other device from the “AI-Thinker_xxxxxx” network to avoid confusing it.

It is also possible the board you have uses different commands - hence a link to the one you bought should help identify it.

Cheers, Bob.

Bob
7th February 2020, 12:49 PM
Hi Bob
Did you ever start selling the programmed sonoff devices?
I haven't a clue doing that stuff and would love to buy a ready to go one so I can use the Android FADU timer app.
Regards
Les Meehan

Hi Les.

No, I didn't go ahead with that as there did not seem any real demand and after researching it further, I found Tindie is not a particularly welcoming place for sellers outside the US - they don't have the facilities and processes in place to handle that properly.

Cheers, Bob.

LesMeehan
8th February 2020, 08:53 PM
Hi Bob,
Many thanks for your replies, very much appreciated!
The relay I bought through eBay at this link:

https://www.ebay.co.uk/itm/5V-12V-Self-locking-Sonoff-WiFi-Wireless-Smart-Switch-Relay-Module-APP-ContWZBH/401959919015?_trkparms=ispr%3D1&hash=item5d96ad9da7:g:8RAAAOSwLYJc54iB&enc=AQAEAAACQBPxNw%2BVj6nta7CKEs3N0qViFNFD%2BDA68f BeX42c4%2BNVd4gkjH9XE09rBGErht9KuKbLXBOl4YaP%2Blvi IAR5Od%2B40tOSc9Oet%2BlzbjDvDpz07RLSH5rZps4Axt%2F8 liizxTJAe9BT2lNvJ4edCrBqE2%2FoBedT7RwJrEW2abwgzzuh xbdkjuCp6Wz0k49FSi3gs7615BkOgHw9vx6rcHGYrKSFlKJ1eW bLauK1XuHGQ41%2FoDGGPpIfIZ39Lcsrkjn4GmN7YHxQTMOmml k9%2F2uNBdFvpTJnP5OiZ8Ogbr94FjWvY%2BaoyOS6keChPfXY M5KlNA%2BN0vW%2FjLNBsEfXif5H4NZkipzwBzwXyaW1BD4EOl nD9JjWukkF4aPAtkwEHHwXmhsR7EwLv%2B8C5OA06bJ%2BU1d% 2F%2BZTOmlMrFtYcNYAtynvIXcdY3NS4uvPLBeYODtbJ05gepS JqGU2zDdxNire2QsjwvhuNE8A88X9yaGcwqfFfhmQ7D%2BUJIA 6juGdxDT2MQ0yYQKwecj25PtPJbzofqqv0ZLrduNDuvT4lrmat ht8Rj8OmthVTdltKvue6bIDajeLvSbKrrnwgnH3xdg7UKeoOMh kLqQF9heknfgYSYmKhcSnnMBxKSL6qDfvhPGRz07zV4qfU4PPh qctIrjq6gPHpGOmL9chNlbLb9Pxc4zQ3g7TZQNih3Uf5ukq7HK CIhleLaU9ATRrmCRVF0LCemaJTyCUgN3T%2B5yXT1%2FAYHoCo Bwq3h47NqGRZJkxhXy%2FFVA%3D%3D&checksum=401959919015152995b521cc463ba311720742acf c0f

The relay works with the eWeLink app and switches enlarger on and off but no sign of any 'AI-Thinker...' network on phone/tablet.

I'm assuming this is the wrong relay so if you could point me to where I can buy the correct one I would appreciate it.
Kindest regards
Les

Hi Les.

You mention setting the app to "LC Tech". Can you give a link to the relay board you bought - just to make sure we are talking about the same board.

Does the “AI-Thinker_xxxxxx” network show up on your phone? If so, you need to connect your phone to that network first before the App can talk to it.

Also, disconnect any other device from the “AI-Thinker_xxxxxx” network to avoid confusing it.

It is also possible the board you have uses different commands - hence a link to the one you bought should help identify it.

Cheers, Bob.

Bob
8th February 2020, 09:03 PM
Hi Les.

Sorry, as you guessed, that board is not compatible with the app. Only the ones listed in the manual will work with it.

These types of modules can only talk to devices connected to the internet - this is not a practical option for a timer due to the delays inherent in sending commands across the internet (the Sonof devices also have this problem by default, which is why they need to be reprogrammed first).

Are you intending to switch the mains input to the enlarger or will you be switching the low-voltage output from the voltage stabilizer?

This defines which type module you need to use.

Cheers, Bob.

LesMeehan
8th February 2020, 10:45 PM
Hi Bob, thanks for the clarification re the relay. In answer to your question, since I've already broken into the wires between the transformer and enlarger I would want to work on the low voltage side of the power.
Again, many thanks for taking time to help me with this.
Kindest regards
Les

Bob
8th February 2020, 11:06 PM
Hi Les.

In that case this one is the one I used when designing the app: https://www.banggood.com/5V-ESP8266-Dual-WiFi-Relay-Module-Internet-Of-Things-Smart-Home-Mobile-APP-Remote-Switch-p-1270421.html?rmmds=search&cur_warehouse=CN

It will come from China so will take a 2 to 3 weeks to reach you unfortunately. I don't see one on ebay, but Amazon has what looks like the same module: https://www.amazon.co.uk/DollaTek-2-Channel-WiFi-Relay-Module/dp/B07HC8PC5Z/ref=sr_1_36?keywords=wifi+relay&qid=1581206252&sr=8-36 at twice the price, but UK based.

You will also need a suitable 5V power supply and a box to put it in per the manual.

Cheers, Bob.

Bob
8th February 2020, 11:06 PM
Hi Les.

In that case this one is the one I used when designing the app: https://www.banggood.com/5V-ESP8266-Dual-WiFi-Relay-Module-Internet-Of-Things-Smart-Home-Mobile-APP-Remote-Switch-p-1270421.html?rmmds=search&cur_warehouse=CN

It will come from China so will take 2 to 3 weeks to reach you unfortunately. I don't see one on ebay, but Amazon has what looks like the same module: https://www.amazon.co.uk/DollaTek-2-Channel-WiFi-Relay-Module/dp/B07HC8PC5Z/ref=sr_1_36?keywords=wifi+relay&qid=1581206252&sr=8-36 at twice the price, but UK based.

You will also need a suitable 5V power supply and a box to put it in per the manual.

Cheers, Bob.

LesMeehan
8th February 2020, 11:22 PM
Hi Bob, great info! I've ordered the item from china thru your provided link so fingers crossed I'm get a result with that unit.
Can't thank you enough for this help and your timer of course.
I'll let you know the outcome in a coupke of weeks.
All the very best to you...
Kindest regards
Les

Bob
9th February 2020, 02:09 PM
No problem Les. If you have any further issues once it arrives, let me know.

Cheers, Bob.

martinhupfer
28th April 2020, 07:11 AM
Hi Bob, such a great development. I found the app, installed it and wow, what a awesome tool.
Asap I ordered some Sonoff mini, ups, I should have ordered the basic. damn.
Do you have some experience with the Sonoff mini?

Cheers, Martin

Bob
29th April 2020, 04:12 PM
Hi Martin. I see you got it working with the Mini. Great stuff!

No, I don't have any experience with the Mini. Do let me know if you had to make any mods and I will add it to the manual.

Cheers, Bob.

martinhupfer
3rd May 2020, 12:43 PM
Today I had some hours in the darkroom with the new timer set-up.
And it's great to work with it, starting with a test strip you can find out wich the best exposure time it would be.
So only two sheets of paper for a nearly fine art print.
Of course it's the way to "work sheets" wich are the base of the rest.
But I enjoyed it very much, and stepping up or down in the main menu makes it easy to fine tune the print in f-stop steps.
Fortunately I found an old Samsung S4mini which no one uses any more, but for the f-stop app it works fine.

Using the De-Vere enlarger with 24VAC bulbs would be tricky with test strips. An 0.8 sec step to the next exposure time, because he has a mechanical shutter between bulbs and light chamber.
I'll test it and come back with results.
Yet I used my Fujimoto MD 90 for 6x6 prints.

martinhupfer
4th May 2020, 10:24 AM
here's an example

Bob
4th May 2020, 06:56 PM
Good to hear it is working for you Martin. :cool:

Your test sheet clearly shows the advantage of using f-stop related test strips as it avoids large steps in exposure in some of the strips, each having a similar increase/decrease in exposure.

I'm not familiar with the De Vere shutter system, but I wonder if using the app's Lamp Adjust setting might help to compensate for any delays introduced by the shutter? Adding a number there will add (or subtract if you prefix it with -) that number of milliseconds from the count.

Have fun, Bob.

mesires
29th July 2020, 09:42 AM
Hi guys, as my old simple analog darkroom timer malfuctioned I received a recommendation to check and test the FADU f-stop enlarger timer app with Sonoff Basic. I did and find it extremely useful and just perfect fit to my darkroom. I have 3 questions:
1) Did you consider to couple the app with some (bluetooth???) wireless switch to allow foot switch operation?
2) Did you consider to implement a complex development instructions (i.e. base time and several f-stop metered additional times for dodging and burning)?
3) Do you have any recommendations on the mobile phone screen type? I heard that the OLED screens may be substantially better then LCD / LED screens. I made a long safe test in my darkroom and have no problem with my cheap Honor 10 phone.

Thanks for any feedback.

Daniel

Britman
3rd August 2020, 09:07 PM
I love this project, it's something I'm going to try. But could this be done with the Sonoff Basic R3 with it's DIY mode?

A little easier to do and doesn't require you to either solder or hold wires in place.

Bob
9th August 2020, 01:51 AM
Hi guys, as my old simple analog darkroom timer malfuctioned I received a recommendation to check and test the FADU f-stop enlarger timer app with Sonoff Basic. I did and find it extremely useful and just perfect fit to my darkroom. I have 3 questions:
1) Did you consider to couple the app with some (bluetooth???) wireless switch to allow foot switch operation?
2) Did you consider to implement a complex development instructions (i.e. base time and several f-stop metered additional times for dodging and burning)?
3) Do you have any recommendations on the mobile phone screen type? I heard that the OLED screens may be substantially better then LCD / LED screens. I made a long safe test in my darkroom and have no problem with my cheap Honor 10 phone.

Thanks for any feedback.

Daniel
Hi Daniel.

1) I considered it - also thought about using the web server contained in the re-flashed switch firmware for the same purpose but decided it was too much hassle for a small advantage. The start-delay with count-in ticks can help if you need time to get ready before it starts counting.

2) Sorry, too much hassle again. The blocks-style coding used by App Inventor makes even moderately complex programming logic very difficult. It's fine for simple stuff, but as soon as you need to add control logic beyond a few lines, it becomes unwieldy. If I ever get around to learning to code Android in native code then I will revisit it.

3) An OLED screen uses active LEDs in the display which physically light up whereas LCD displays use a backlight shining through coloured LCD pixels that are switched from opaque (almost no back-light gets through) to clear. The "almost" bit is why you can get fogging with an LCD screen as some green and blue light gets through an OFF pixel). This results in much purer colours in an OLED display, reducing the chances of fogging as the App only uses different intensities of red.

But, if your LCD phone is not causing issues then I would just stick with that - I don't have any OLED devices myself.

Bob
9th August 2020, 02:08 AM
I love this project, it's something I'm going to try. But could this be done with the Sonoff Basic R3 with it's DIY mode?

A little easier to do and doesn't require you to either solder or hold wires in place.

Yay! Thanks very much for that suggestion - I was not aware of the Sonoff Basic R3 and just spent a few minutes googling it - looks like it's been out for over a year now and I completely missed it...

That sounds like the almost perfect solution - as you say, you still need to program it, but no more faffing about with soldering irons and FTDI adaptors etc. I will get a couple and add the code to use the Sonoff Basic R3 to the app. Users will still have to wire it into their enlarger but if they can change a plug, they can manage that! Now if only sonoff would provide the same facility on the Sonoff S20 sockets we would be seriously laughing!

My only worry is that the DIY mode may be too slow in response time - but we shall see...

Cheers, Bob.

Britman
9th August 2020, 08:53 AM
Yay! Thanks very much for that suggestion - I was not aware of the Sonoff Basic R3 and just spent a few minutes googling it - looks like it's been out for over a year now and I completely missed it...



That sounds like the almost perfect solution - as you say, you still need to program it, but no more faffing about with soldering irons and FTDI adaptors etc. I will get a couple and add the code to use the Sonoff Basic R3 to the app. Users will still have to wire it into their enlarger but if they can change a plug, they can manage that! Now if only sonoff would provide the same facility on the Sonoff S20 sockets we would be seriously laughing!



My only worry is that the DIY mode may be too slow in response time - but we shall see...



Cheers, Bob.Excellent, what would be an acceptable response time, are we looking at just a few milliseconds?

Sent from my ONEPLUS A6013 using Tapatalk

Bob
9th August 2020, 11:07 AM
Excellent, what would be an acceptable response time, are we looking at just a few milliseconds?

Sent from my ONEPLUS A6013 using Tapatalk

Ideally within a couple of tens of ms but more important is repeatability. If the time to switch on or off varies widely then it becomes impossible to get an accurate time.

This is why using an internet connected socket becomes useless - a two second delay is fine as long as it is always two seconds, but of course, it will vary from a half a second to several seconds which is hopeless. Even connecting to your local WiFi router will introduce varying delays, albeit smaller ones. That is why I designed the app to connect the Android device directly to the power switch rather than go through the home router. It's an extra hassle to connect to it, but it removes all those varying delays (it also means the power switch is not connected to the Internet, which is a good thing given the amount of IOT hacking going on!)

My Basic R3 will be delivered tomorrow and I can have a play :)

Britman
9th August 2020, 11:11 AM
Awesome, I'll hold off buying one myself until you've tested it. 👍

Sent from my SM-T810 using Tapatalk

mesires
17th August 2020, 01:20 PM
Hi Daniel.

1) I considered it - also thought about using the web server contained in the re-flashed switch firmware for the same purpose but decided it was too much hassle for a small advantage. The start-delay with count-in ticks can help if you need time to get ready before it starts counting.

2) Sorry, too much hassle again. The blocks-style coding used by App Inventor makes even moderately complex programming logic very difficult. It's fine for simple stuff, but as soon as you need to add control logic beyond a few lines, it becomes unwieldy. If I ever get around to learning to code Android in native code then I will revisit it.

3) An OLED screen uses active LEDs in the display which physically light up whereas LCD displays use a backlight shining through coloured LCD pixels that are switched from opaque (almost no back-light gets through) to clear. The "almost" bit is why you can get fogging with an LCD screen as some green and blue light gets through an OFF pixel). This results in much purer colours in an OLED display, reducing the chances of fogging as the App only uses different intensities of red.

But, if your LCD phone is not causing issues then I would just stick with that - I don't have any OLED devices myself.

Hi Bob,
thank you for your feedback and detailed answer!

Re 1) You are right. I use the test strips mode in AUTO mode and it is really good. No problem with that.

One additional question: Is there a way how to turn off the green led inside the Sonoff Basic???
I think I have read all the posts in this thread but have missed any such information.

Daniel

Bob
18th August 2020, 01:48 PM
Hi Bob,
thank you for your feedback and detailed answer!

Re 1) You are right. I use the test strips mode in AUTO mode and it is really good. No problem with that.

One additional question: Is there a way how to turn off the green led inside the Sonoff Basic???
I think I have read all the posts in this thread but have missed any such information.

DanielHi Daniel. The LED is controlled separately by the Sonoff board so the firmware I added cannot affect it. Two options I have done: cover it with some tape (I used a bit of black paper under the tape for extra effect) or, I have also used a pair of pliers to grab and twist it off the board! But you may not want to do this if this is your only Sonoff device as there is a small chance of damage to the board.

Cheers, Bob.

mesires
18th August 2020, 05:54 PM
Hi Daniel. The LED is controlled separately by the Sonoff board so the firmware I added cannot affect it. Two options I have done: cover it with some tape (I used a bit of black paper under the tape for extra effect) or, I have also used a pair of pliers to grab and twist it off the board! But you may not want to do this if this is your only Sonoff device as there is a small chance of damage to the board.

Cheers, Bob.

Hi Bob,
thank you for the answer. I hoped it would be possible to turn off within the FADU code. But I guess if it was possible, you would have already done it ...
I will go the MacGyver way then :)

Daniel

Britman
18th August 2020, 06:25 PM
Ideally within a couple of tens of ms but more important is repeatability. If the time to switch on or off varies widely then it becomes impossible to get an accurate time.



This is why using an internet connected socket becomes useless - a two second delay is fine as long as it is always two seconds, but of course, it will vary from a half a second to several seconds which is hopeless. Even connecting to your local WiFi router will introduce varying delays, albeit smaller ones. That is why I designed the app to connect the Android device directly to the power switch rather than go through the home router. It's an extra hassle to connect to it, but it removes all those varying delays (it also means the power switch is not connected to the Internet, which is a good thing given the amount of IOT hacking going on!)



My Basic R3 will be delivered tomorrow and I can have a play :) Hi Bod,
Did you have a tinker with the basic R3?

Sent from my SM-T810 using Tapatalk

Bob
22nd August 2020, 06:49 AM
Hi Bod,
Did you have a tinker with the basic R3?

Sent from my SM-T810 using Tapatalk

I did - and had some issues talking to it... Also, in API mode, it still uses your local wifi router so some delays will be introduced there. I was hoping to be able to command the API directly via its built-in Access Point but that appears to only be used for setting up its connection to your local wifi.

That being the case I have decided to drop that idea and investigate reprogramming it with the timer firmware via OTA in a similar way people do with Tasmota (which has the advantage that other people have already done that!). I have a few other things on the go atm so it may be a week or so before I can have a serious look.

Cheers, Bob.

tillari
25th January 2021, 01:35 PM
Hello Bob,
I'll try to use the sonoff device. I can by a sonoff r2 or r3. Does the code work on the R3? Can I reprogram it via OTA?
Thanks a lot,
Ariel

Bob
25th January 2021, 04:42 PM
Hello Bob,
I'll try to use the sonoff device. I can by a sonoff r2 or r3. Does the code work on the R3? Can I reprogram it via OTA?
Thanks a lot,
Ariel

Hi Ariel. Sorry, I have not tried it properly on the new R3 (OTA or otherwise). I had intended to try but did not get around to it and used my R3 for something else...

I expect it will still work OK - as long as they have not changed the i/o ports etc. - and even if they have, the sonoff code is on github and is trivial to change.

Good luck!

tillari
25th January 2021, 10:02 PM
Hi Ariel. Sorry, I have not tried it properly on the new R3 (OTA or otherwise). I had intended to try but did not get around to it and used my R3 for something else...

I expect it will still work OK - as long as they have not changed the i/o ports etc. - and even if they have, the sonoff code is on github and is trivial to change.

Good luck!

Thanks Bob,
Another question. I have a router that I’m not using. I can configure a special wifi network with only the router, the phone and the sonoff, without internet connection. If I configure the sonoff r3 in that network (without flashing the firmware), does the timer app work? Or it needs your firmware on the device to talk with the app?
I’m sorry for the questions, buy I’m trying to avoid the solder part of the process.
Thanks again.
Ariel

Bob
26th January 2021, 09:41 AM
Hi Ariel.

As it stands, it needs the firmware flashed onto the Sonoff device - the timer app talks to the web server built into the new firmware.

However, if you can get your phone to talk to the R3 API (which I was unable to do) then you could, in theory, amend the App code in App Inventor quite easily to switch the Sonoff that way. The app code is on github - you just need to import it into AppInventor.

I have not really done anything with the app for over a year (but I still use it every time I go in the darkroom) but I did hope the new R3 would work but was unable to get it to even connect to the timer app. That is quite likely my error - it may be possible, but I could not get it to work.

tillari
31st January 2021, 03:40 PM
Hi Bob,
I finally could reprogram the sonoff R3 without soldering! It was not as easy as I thought, but it is possible. In fact, it’s not so difficult when you know how. But the problem was to find the right procedure, explained for dummies as I am.
I’ll describe step by step, to help somebody else who want to do it.

1) I followed the steps you described in the Appendix 3 “Prepare the Arduino IDE” (there are some changes in the menu options, may be for the software version, but it was easy to find them)

2) In the Sketch menu, I selected Export compiled binaries (I don’t know if this is the exact option as I have the interface in Spanish), in order to save the .bin file.

3) As I read, you must have sonoff firmware 3.3.0 or above to flash it via OTA. Then, I followed the steps described in the sonoff manual to connect it to the Ewelink app to update to the correct firmware. My sonoff came with firmware version 3.0.0 and It was updated to 3.6.0.

4) And here the problems started, because the are a lot of tutorials to flash the firmware easily via OTA with version 3.3.0, as sonoff provides a tool to do it. But with version 3.5.0 they changed the protocol, and that tool is not longer useful. I’ll describe the steps I did well with version 3.6.0 (not the bad ones).

5) To enter in the DIY mode with version 3.6.0 you don’t need the jumper sonoff provides. You can do it by software. But previously, you have to delete the device from the Ewelink app.

6) I entered in DIY mode following the instructions given by the official documentation you can find here: https://github.com/itead/Sonoff_Devices_DIY_Tools:

“1. Entering the Compatible Pairing Mode (AP) by long press the paring button for 5 seconds after power on
2. Connecting the Access Point named ITEAD-XXXXXXXX with default password 12345678 via mobile phone or PC
3. Browser visits http://10.10.7.1/
4. Filling in the existing WiFi network SSID and password
5. Entering DIY mode successfully with specific WiFi network connected.”

I could do It only once. I made a mistake with the SSID, and the only way to solved it was setting a new wifi with my phone as hotspot with this SSID.

7) When the sonoff is connected to your network, it led repeats a sequence of two short blinks.

8) From a PC connected to the same network I followed the steps described in this tutorial: https://www.youtube.com/watch?app=desktop&v=cJLJ9ddv65A
It’s in Spanish but was the only tutorial I found I could understand, because most of them are for IoT programmers. They were the following:

9) I found the sonoff’s IP address. You can do it with the Fing app. In my case it wasn’t necessary because my phone was the access point, and I could check the IP address in the hotspot configuration options. In the next steps, you have to use this IP and the 8081 port.

10) I installed the RESTer Chrome extension, because you need a way to send commands to the device.

11) I set this:
Method: POST
URL: http://SONOFF.IP:8081
Name: Content-Type
Value: application/json

12) I sent this command:
Method: POST
URL: http://SONOFF.IP:8081/zeroconf/info
Name: Content-Type
Value: application/json
Body:
{ "deviceid": "SONOFF ID", "data": {} }

I realize now that you have to put the SONOFF ID in the body! But I put the SONOFF IP and it worked ok…
This command returns the device status. You will note that the "otaUnlock" value is “false”

13) I sent this command to change “otaUnlock” value to “true”:
Method: POST
URL: http:// SONOFF.IP:8081/zeroconf/ota_unlock
Name: Content-Type
Value: application/json
Body:
{ "deviceid": " SONOFF ID ", "data": {} }

14) I sent this command again:
Method: POST
URL: http://SONOFF.IP:8081/zeroconf/info
Name: Content-Type
Value: application/json
Body:
{ "deviceid": "SONOFF ID", "data": {} }

This time the "otaUnlock" value was “true”

15) To flash the firmware, I had to startup a web server. I downloaded nginx software (http://nginx.org/en/download.html) and extracted the files in the root folder. Then I put the .bin file generated from your code in the HTML subfolder.

16) I run the nginx software as administrator, and I checked I could download the file with a browser using this URL: http://MY.IP/Filename.bin (MY.IP was my current IP address and Filename was the name of the compiled firmware file)

17) I obtained the SHA256 File Checksum for the firmware using this page: https://emn178.github.io/online-tools/sha256_checksum.html

18) Finally, I flashed the firmware with this command:
Method: POST
URL: http:// SONOFF.IP:8081/zeroconf/ota_flash
Name: Content-Type
Value: application/json
Body:
{
"deviceid": "",
"data": {
"downloadUrl": "http://MY.IP/Filename.bin",
"sha256sum": "SHA256 Cheksum obtained previously"
}
}

The first time I sent this command, sonoff’s led changed to a sequence of three short blinks, FADUTimer network didn’t appear, and de device didn’t respond to other commands. I unplugged the sonoff, waited for a minute, and plugged it again. The led returned to a two short blinks sequence and the sonoff was in the network again. I repeated the ota_flash command. This time the led went off, and FADUTime network appeared in the available networks list!
The timer app is now working!!! Thanks a lot!!!!!!!

By the way, do you plan to compile the app for iOS? I have an Ipad Mini that I could use instead of my phone…

Thanks a lot again!!! The app is awesome, and it replaces my old bulky analogue timer.
Ariel

Bob
1st February 2021, 11:42 PM
Thanks a lot for the detail Ariel. I will give that a try when I get the chance - I would really like to be able to OTA the firmware as that would save a lot of issues. It may even enable me to use the API mode and dispense with the new firmware completely. I will post here if I have any luck.


Unfortunately, iOS is not an option - the development environment is App Inventor which does not have the ability to compile to iOS.


Cheers, Bob.

tillari
2nd February 2021, 04:48 PM
Hi Bob,

If you allow me, I will write an article in my blog (https://www.lasnuevemusas.com/author/ariel/), for those Spanish speakers who want to use your app.
Thanks again,

Ariel

Bob
2nd February 2021, 06:07 PM
Hi Bob,

If you allow me, I will write an article in my blog (https://www.lasnuevemusas.com/author/ariel/), for those Spanish speakers who want to use your app.
Thanks again,

Ariel

Please do - the more info out there, the better :)

Cheers.

tillari
9th February 2021, 02:52 PM
Finally I published an article with the instructions to configure the Sonoff via OTA:
https://www.lasnuevemusas.com/timer-por-pasos-para-ampliadora-en-tu-telefono-movil/
Thanks!

Bob
9th February 2021, 03:32 PM
Thanks Ariel - google translate made it easy to understand. When I get a chance I will remove my R3 from doing its current job and try it out.

Cheers, :)

Bob
17th February 2021, 12:32 PM
I could not get my Basic R3 to connect for some reason and have ordered two new ones in case there is something wrong with it and will try again when they arrive.

I did however manage to get the timer to talk to a Mini R3 using the DIY mode API without having to reprogram the device. The snag is that using the DIY mode means the on and off signals go via the local WiFi router which adds random delays of typically between 5 and 100 milliseconds. This is probably OK for longer times over one or two seconds (100ms is just under 1/8th of a stop for a 1 second exposure) but may be too much for shorter times. But it does mean no programming required - just put the Sonoff Mini or Basic into DIY mode (and find it's IP address).

I have uploaded the APK for version 1.4.1 with this feature (and a couple of other additions) to the wip repo on github with some notes in the readme.md file (https://github.com/filmanddarkroom/FADU_Timer/tree/wip). Version 1.4.1 can be downloaded and installed from the code directory of the WIP branch.

When I get a Basic R3 that I can reprogram via OTA I will release a new version of the app to the Play store once I get it all working and update the manual.

tillari
18th February 2021, 10:39 AM
I could not get my Basic R3 to connect for some reason and have ordered two new ones in case there is something wrong with it and will try again when they arrive.

I did however manage to get the timer to talk to a Mini R3 using the DIY mode API without having to reprogram the device. The snag is that using the DIY mode means the on and off signals go via the local WiFi router which adds random delays of typically between 5 and 100 milliseconds. This is probably OK for longer times over one or two seconds (100ms is just under 1/8th of a stop for a 1 second exposure) but may be too much for shorter times. But it does mean no programming required - just put the Sonoff Mini or Basic into DIY mode (and find it's IP address).

I have uploaded the APK for version 1.4.1 with this feature (and a couple of other additions) to the wip repo on github with some notes in the readme.md file (https://github.com/filmanddarkroom/FADU_Timer/tree/wip). Version 1.4.1 can be downloaded and installed from the code directory of the WIP branch.

When I get a Basic R3 that I can reprogram via OTA I will release a new version of the app to the Play store once I get it all working and update the manual.
Awsome! I think the new version will support both methods, reprogrammed and non-reprogrammed sonoff...

Bob
18th February 2021, 11:50 AM
Yes, though the OTA method will only require an update to the manual - the existing Sonoff lamp selection setting will work the same if OTA programmed or FTDI hardware programming. The DIY mode required a new Lamp hardware selection option to be added as the connection and switching code is different.

In version 1.4.1 I also added individual volume controls for the beeps and buzzes and it can also now switch the phone's flash LED - that may be useful for paper flashing...

Bob
22nd February 2021, 09:21 PM
Hi Ariel.

Phew... I got the OTA to work by following your experience (and after some issues caused by my weird and rubbish cable router)!

I will write this all up in the manual and upload a new version to the google Play Store with the additional features I mentioned earlier.

I have experimented with the unprogrammed DIY API mode some more and obtained actual timings of the sonoff's relay switching times and unfortunately the delays though the router occasionally cause a >1/3rd stop error - about once in every 20 strips. It may improve if using a dedicated router but I do not have a spare one - at some point I will get an old one and experiment again.

BTW, I don't know if you have already discovered this yourself, but when having an issue not being able to pair to the Sonoff a second time (such as after you give it the wrong SSID), I have found that using eWeLink to pair to the Sonoff and then Deleting it from eWeLink forces a factory reset which allows you to go through the linking to DIY mode again successfully.

tillari
23rd February 2021, 10:25 AM
BTW, I don't know if you have already discovered this yourself, but when having an issue not being able to pair to the Sonoff a second time (such as after you give it the wrong SSID), I have found that using eWeLink to pair to the Sonoff and then Deleting it from eWeLink forces a factory reset which allows you to go through the linking to DIY mode again successfully.

Hi Bob,
In my case it wasn't necessary, because I could reprogram my sonoff as I explained. But I discovered that helping other people to configure their sonoff. Yes, after I published the article, I found a lot of interested people in the spahish speakers analog photography community. And some of them are using the new unpublished version...

Bob
26th February 2021, 10:24 PM
Been a busy couple of days. I have added a few upgrades to the work in progress version at https://github.com/filmanddarkroom/FADU_Timer/tree/wip

The main update is that using the Sonoff Basic R3 or Mini R3 in DIY mode now has the option to use the "Inching" API call to pulse the lamp on and then off without having to send an OFF command which avoids random router delays (but adds small inaccuracies which seem well worth the trade-off).

If I can stop myself fiddling any more with it, I will update the manual and publish the update to the google Play Store in the next few days.


Work In Progress Version 1.4.2 [believed stable]:


(1) Added [PULSE R3] mode. Similar to (2) below but uses the "inching" mode of the R3 DIY mode API (http://developers.sonoff.tech/basicr3-rfr3-mini-http-api.html) to send fixed duration lamp-on commands to the Basic R3 or Mini R3 in DIY mode. For example, we send a command that says "switch on for 17.5 seconds and then switch yourself off". The app does not need to send the OFF signal and hence avoids random timing delays through the router. Set [PULSE R3] to use.

Of course, Sonoff have once again messed things up - in this case by only allowing multiples of half a second to be set! This does not help with accuracy but is not as bad as it first seems for typical lamp ON times of several seconds and it does at least mean that the timing is consistent, which you could argue is more important.

The worst-case error when rounding to the nearest 0.5s is 0.2s. The percentage error depends on your base time. For example, 10.7 seconds will round down to 10.5s which is an error of just 1/37th of a stop which is not detectable by the human eye. Longer times will be more accurate but shorter times will be worse: 5.3s for example would round to 5.5s which is an error of 1/19th of a stop - which I think is still very acceptable. I prefer the repeatability of the timings in this mode over the random router dependent delays in (2) below.


(2) Added the ability to select a Sonoff R3 device in DIY mode. Tested with a Mini R3 running version 3.5 of the Sonoff firmware. Option "BASIC R3" added to the Settings tab's "Lamp Controller" section. To use: Place your R3 device into DIY mode per Sonoff's instructions. Once working in DIY mode, set the IP Address of the R3 device in the IP ADDRESS section in the SETTINGS tab (just the IP address, do not add the port etc - this is added in the app's code): e.g. 192.168.0.22 It may be a freak of my network router but I had to use Fing on my phone to find the device's IP address - it did not appear on my router's list of connected devices - very odd.

The downside of this mode is that all the on and off signals go via your WiFi router which adds random delays of typically 5 - 100ms on my network - and occasionally more. 100ms is just under 1/8th of a stop for a 1 second time exposure so you will need to consider if this is still sufficient accuracy for your purposes. In practice, I could only empirically detect a delay once in every ten or twenty switches. If you have a spare WiFi router then creating a separate network and dedicating this to the timer with no other devices or Internet connection would make these delays both smaller and much less random in duration allowing you to use the timer's Lamp Adjust setting to compensate. I have not tried this but it should work well (in theory!). Alternately, consider using the [PULSE R3] mode described above in (1).


(3) Added the ability to use the camera's flash LED. I'm not entirely sure what use this is except for demo or testing purposes. Possibly could be used for flashing paper if you add a diffuser over the LED and use the Delay setting to give you time to raise it to the right height after setting the time. Light activated relay boards do exist but keeping the bright light out of the rest of the darkroom may prove difficult.


(4) Added individual volume controls for the various beeps and buzzes (scroll down the SETTINGS tab if you don't see them). A bit tricky to use due to being small (I could find no way to enlarge them in App Inventor). The settings are reloaded the next time the app is launched.


(5) You no longer need to use the [SET] button on the STRIPS tab: the strips times automatically update when changing the base time or opening the STRIPS tab. The [SET] button is retained although it is now mostly redundant.


The manual still requires updating from release version 1.4.

Bob
3rd March 2021, 07:37 PM
I published the 1.5 update to the Google Play Store 20 hours ago but it is still stuck waiting for approval - even the updates to the store text are still waiting. Last few times I did this it took about 30 minutes...

Bob
7th March 2021, 11:34 PM
Google has still not approved 1.5.0 to be published :mad:

In the meantime, in a flurry of activity (and lock-down boredom) version 1.5.1 has been uploaded to github (https://github.com/filmanddarkroom/FADU_Timer/tree/wip). I will upload it to the play store once google finally publish 1.5.0.


Change log:

1) Added functionality to switch the display between Red and Green - potentially useful for colour printing. Keep the backlight brightness as low as possible as colour paper is very sensitive. The setting is retained between restarts.

2) Can now sequence through the first 5 memories. Intended for the paper processing sequence, so Lamp switching hardware (if connected) is disabled during this time. If the RUN button is not visible on smaller screens, use a long-press on the FOCus button instead. Honours the Delay and Tick Mode settings.


BTW, if anyone was thinking about this and was put off by the electronics programming required, it can now use newer versions of the Sonoff Basic R3 and Mini without needing to reprogram them - normal DIY skills to wire a plug are all that's required. At least, it will be when Google FINALLY publish version 1.5.0 (or you side-load the app's APK build from github)!

Bob
8th March 2021, 08:40 PM
1.5.0 now published to the google play store. I will upload v1.5.1 in the next couple of days - giving time for any issues I may have missed with 1.5 to be found...

Hansm
15th March 2021, 12:34 PM
Hi,
I bought a Sonoff R3 basic and upgraded the Firmware to the latest version 3.6.0 with EWLink. After that I deleted the device from the app to force a factory reset and followed the procedure to connect it to my local network.
I have set it to DIY mode and connected the Sonoff R3 Basic to the app and can control it.
Now I want to activate the pulse mode and set the pulsewidth to minimum 500 msec.
However I cannot get into the device.
Tried postman but if I set http://[ipaddress]:8081/zeroconf/info I don't get any response.
Looks like the postman api gets into a loop or something?
If I ping to the IP address it responses very well, only few msec timings.

The IP address is the one I entered also in the app and it communicates.

Can one give some hints so I can enable the pulse mode and change the pulsewidth to max 500 msec?
Or is pulse already enabled and the pulsewidth set to 500 msec by default?

I have to admit that I'm not a real experienced API user.

Many thanks in advance :-)

Best regards, Hans

Bob
15th March 2021, 01:34 PM
Hi Hans.

I'm not sure if you are asking me how to get Postman to work or how to get the timer app to work in Inching mode.

Which version of the app are you using - 1.5.0 from the Google Play Store, or one of the development versions from github (1.5.1)?

You say you can control the Sonoff with the timer app? Can you control the Sonoff by setting in the Settings tab's "Lamp Controller" section? If it works in [BASIC R3] mode it should also work in [PULSE R3] mode.

Attached is a screenshot of my Postman getting a /info response from my Sonoff. You need to use "POST" with the same "Body" as mine ({"deviceid": "", "data":{}};) - your IP address will be different of course. The response is the: "seq": 4439 etc part.

If it cannot talk to the Sonoff, Postman should show an HTTP error (usually a 404) after a while or will try forever to connect if you use "Get" instead of "Post".

500ms is the [B]shortest time the Sonoff API will accept (see the "Inching" API here: http://developers.sonoff.tech/basicr3-rfr3-mini-http-api.html#Inching) . If you set a time on the app less than 0.3 seconds, it will not switch the Sonoff on. Setting 0.5s should work OK - or use the FOC button to toggle the Sonoff on and off.

Let me know how you get on.

Cheers, Bob.

Hansm
15th March 2021, 02:16 PM
Thank you Bob.
I tried with exactly the same commands as you gave me but no info received from the Sonoff.
Doublechecked everything like POST, IP etc., but no info displayed.

However I set the app to Pulse R3 and tested with short times.
0.2 sec nothing happens.
0.3 sec lights gets on and very shortly off again, 0.5 sec?
1.2 sec light on and off after short time, most likely 1 sec.
1.3 sec and light on and off slightly but noticeably longer.
It could be that the pulse width is already set by default to 500 msec?

Best regards

Hans

Bob
15th March 2021, 02:47 PM
Yes, the app takes care of setting the Sonoff to the correct mode when you set it into [PULSE R3] mode.

The times you observed are as expected. Because the Sonoff Inching API can only accept times in multiples of 500ms, the time set on the display (and when calculated internally) is rounded to the nearest 500ms before being sent to the Sonoff as per the API's requirements. Therefore, the timer does not send a pulse for <250ms so 0.2s will not switch the lamp (the timer will still beep to let you know to move your mask to the next strip when creating test-strips). Probably best to avoid such short steps.

As discussed in the manual, this is annoying, but is a limitation of the way Sonoff created their API. In practice, you rarely send times that short and by the time you are at 5.3 seconds, the error is only 1/19th of a stop - the longer the time, the more accuracy you get.


Since updating the Google Play Store, I have discovered an issue with the PULSE R3 mode when using it with [AUTO] (and [CONT]) strips method. A workaround with [AUTO] mode is to set a 2 second Delay. This gives the Sonoff time to respond to the Inching API call - unfortunately, it can take over a second to respond (which is VERY annoying - Sonoff spec says <=200ms!) and this can cause a strip to be missed. I am working on a fix, but I suspect the 2s delay will still be required - we shall see...


I'm not sure what is wrong with your Postman unfortunately. If you are not getting an error message then it is difficult to tell. Are you sure your PC is on the same network as the Sonoff?


Cheers, Bob.

Hansm
15th March 2021, 04:52 PM
Hi Bob,
Yes it’s on the same network.
If I ping to the iP-address it responses with ony msecs figures.
I will dive into it later this week and let you know if I find anything odd.
But, thanks a lot for your help :-)

Bob
15th March 2021, 04:58 PM
No problem at all. If you are getting good times on your network, it might be worth trying the timer in [BASIC R3] mode - my network throws up random bad delays so I can't use it. It does not have the 500ms restriction.

Also, you could try using RESTer with Chrome as per the manual - see if that works for you instead of Postman - the first example is the /info command. If that works OK then you can think about re-programming the Sonoff Basic R3 with the new firmware using OTA as that gets rid of all the issues with network delays and Sonoff's poor API implementation...

Oh, BTW, another thing Sonoff neglected to mention in their API documentation is that to use the Inching API you need to first setup the pulse length using the zeroconf/pulse command and then use the /zeroconf/switch command to actually turn the Sonoff on.


Have fun!

dialektik
2nd June 2021, 11:50 AM
Hi,

thanks for this great app! I just ordered a Sonoff Basic R3 as both of my enlarger timers stopped working. As I don't have any wifi signal in my darkroom (that I have to build up every time) I was wondering if I just could stay in the setup network of the Sonoff without changing any settings. Did someone try this yet?

In case this does not work I would have to build up a wifi network using a separate router, right?

Thanks!

Christoph

Bob
4th June 2021, 09:51 AM
Hi Christoph.

I did not see any way to use the Sonoff in its standard configuration/firmware without connecting it to a local WiFi router so I think that you would have to use a spare router. If you find a different way, do let me know - that would be very useful.

If you have a spare router you can dedicate to this, it should work well using the "Basic R3" controller mode as delays though the router will be minimal with no other traffic on that network.


As an alternative to using a separate router, you could reprogram the R3 with the new firmware which allows your Android device to talk directly with the R3 without any other WiFi hardware. This is a bit awkward to do but provides the best accuracy by eliminating the delays caused by the router relaying signals.

I can make things a little easier by supplying a previously compiled version of the firmware file so you do not have to go through the whole Arduino process to create a new one. I only realised that supplying the firmware file would makes things quite a bit easier for most people a few weeks ago - I have been messing about with embedded software for a long time and forgot that not everyone has!

Let me know how you get on and if you have any more queries.

Incidentally, it may be worth ordering a spare Sonoff - especially if you want to try reprogramming one - it is possible to kill it if the programming goes wrong...

Cheers.

dialektik
4th June 2021, 10:03 AM
Hi Bob,

thanks a lot! I think I will go for the spare router. I have old unused ones lying around so it's worth a try. And I am happy if I don't have to do too much on the hardware side like soldering especially when it has to do with higher voltage setups.

I will let you now if I find out anything interesting.

Thank you once more!

Bob
4th June 2021, 02:06 PM
The advantage of the Basic R3 (and the Sonoff Mini) is that it can be reprogrammed via WiFi rather than needing to solder wires to it, but yes, if you have a spare router to dedicate to the job, that will work well too. Have fun!

dialektik
4th June 2021, 02:21 PM
Oh, really? Then maybe I'll think about it. It seems to be a good idea to get rid of the extra router. But tonight I hopefully will have the chance to try it with the router setup first.