Open ArdBir - definitive BIAB/RIMS controller arduino based

Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum

Help Support Homebrew Talk - Beer, Wine, Mead, & Cider Brewing Discussion Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
Hi

Source code is available trough Github
https://github.com/ArdBir

user manual available on our repository as well PCB and schematic and last SW version
http://goo.gl/qMhPgu

you tube channel
https://www.youtube.com/channel/UCgtcVKN_nspF1l_mY4cKUbQ

Hope you enjoy the project and you can support us
We are currently working to a new platfrom enhanced (SD card reader, real time clock, BT connection, graphic TFT display) and also to an advanced fermentation temperature controller (ArdFerm) supporting peltier (TEC) cooler and traditional cooler

Stay Tuned
Davide ArdBir team
The dropbox repository link is not working. Can you fix it, please?
 
Joe pcb's ready :D


0eJC2N.jpg

FZqEL9.jpg
 
Can someone explain why we need those rectifiers, resistors (except ds18b20 of course), transistors for the project? (and mosfets for Uno projects on addition).
Here is example of ardbir without those
http://www.sgabuzen.com/wordpress/wp-content/uploads/2016/01/ardbir-wide.jpg
from http://www.sgabuzen.com/come-assemblare-ardbir-da-zero/

and sousvide controller which work similar way (i know there are no additional outputs but the idea is the same.
https://learn.adafruit.com/sous-vide-powered-by-arduino-the-sous-viduino/materials

I have hard times getting PCB printed or DIY so I though I can do it on a prototype board, but then I found out that some elements are not needed? So it will simplify my life :)
 
Can someone explain why we need those rectifiers, resistors (except ds18b20 of course), transistors for the project? (and mosfets for Uno projects on addition).

R1 - current limiter for LCD backlight LEDs - omitting these would burn out the LEDs in the LCD

R2 - pullup for the OneWire bus - Onewire won't work

R3-R6 - pullup for button 1-4 - You can use the internal pull up resistors, but the external pullups reduce the chance of overloading the pin

R7 - pulldown for the heater mosfet - If you wire directly to the SSR, you risk drawing more than 20mA recommended current from the Uno pin. Unless you are positive your SSR draws less than 20mA while cycling fast, trigger it through a mosfet.

R8 - current limiter for heater LED - Not needed if you don't use LED indicators for the heater.

R9 - pulldown for buzzer mosfet - if wired directly to a buzzer, it must use less than 20mA.

R10 - pulldown for pump mosfet - if your pump relay draws less than 20mA, you don't need this. I would guess you need it.

R11 current limiter for the pump LED - Not needed if you don't use LED indicators for the pump.

D1 - flyback diode to prevent the heater mosfet from self-destructing
D2 - flyback diode for pump mosfet

C1 - voltage regulator output smoothing
C4 - voltage regulator input smoothing

V1 - variable resistance for the LCD display. Without it, it's impossible to trim due to variance in the LCD manufacturing process.

ArdBirsch.png
 
OK thank you very much! So now its clear for me, most of them is just as precautions and for better working but without will still work, like hooked on the image which I showed. I will probably skip capacitors and I am planning to use internal voltage regulator from arduino Uno. Can you just explain me one more thing? In your PCB and schemo Heater, Buzz etc is connected directly to VIN (~12V) and then through some stuff (mosfet or transistors and resistors) to pins. On the pic without it its other way around, directly to ground and then to pins.
On the DanielXian board the schemo is like directly to GND and to pins where on the board its like on your board, +12 and then through transistors to pins (imgs attached). So it doesnt matter which way do you connect it? Or there is a mistake? I do not want to fry any of the element :) Hopefully everything will fit to the prototype board.

One more question here, do I have to use soldermask etc if using prototype board and just solder to make lines?

1556421_10202864538473021_6737130582707886552_o.jpg


OpnArdBir-lc.jpg
 
OK thank you very much! So now its clear for me, most of them is just as precautions and for better working but without will still work, like hooked on the image which I showed. I will probably skip capacitors and I am planning to use internal voltage regulator from arduino Uno. Can you just explain me one more thing? In your PCB and schemo Heater, Buzz etc is connected directly to VIN (~12V) and then through some stuff (mosfet or transistors and resistors) to pins. On the pic without it its other way around, directly to ground and then to pins.
On the DanielXian board the schemo is like directly to GND and to pins where on the board its like on your board, +12 and then through transistors to pins (imgs attached). So it doesnt matter which way do you connect it? Or there is a mistake? I do not want to fry any of the element :) Hopefully everything will fit to the prototype board.

One more question here, do I have to use soldermask etc if using prototype board and just solder to make lines?

My board and DanielXian's board are low-side switched. As in the ground is switched with the MOSFET. We do this because in the old days, a NPN transistor was much cheaper and easier to source than a PNP.

The directly connected arduino could also be used as a current sink instead of a current source. However, again, 20mA is the recommended current per GPIO. If you exceed the datasheet maximum of 40mA, you will have a dead pin or worse a dead Arduino. I've certainly thrown away my share of dead chips.

You don't need solder mask, but it's a good idea to prevent the board from shorting out on the enclosure. My enclosure is plastic so I didn't worry about it much. I've used acrylic spray paint for solder mask in the past.
 
ok thank you! So the first schemo is wrong right? As the NPN is connected to "+" and other heater, buzzer etc pin is grounded.
 
ok thank you! So the first schemo is wrong right? As the NPN is connected to "+" and other heater, buzzer etc pin is grounded.

Unless I'm reading the first schematic incorrectly, P2.1 P4.1 and P5.1 should be wired to VIN instead of GND. NPN transistors in the schematic Q2, Q3 and Q4 have their emitters tied to GND, which is correct for a low-side switch. The PUMPon and HTRon outputs are wired correctly.
 
ok thanks! Can I connect small pump 12v (<0,7A) directly to the screw in connector without relay? If not, I found those small relays but they have 3 inputs VCC, IN and GND, so in our case i connect only VCC and IN? Or VCC and GND?

Oh and can I connect using one AC cable to 3A adapter (230V->12V) and SSR for the heater (2000W)? Or I should connect them separately?
 
ok thanks! Can I connect small pump 12v (<0,7A) directly to the screw in connector without relay? If not, I found those small relays but they have 3 inputs VCC, IN and GND, so in our case i connect only VCC and IN? Or VCC and GND?

Oh and can I connect using one AC cable to 3A adapter (230V->12V) and SSR for the heater (2000W)? Or I should connect them separately?

What screw-in connector?
 
I meant the normal pump output from the PCB (aren't they called srew in terminals? :) ). So just skipping relay.
Or I thought I might just use relay as GTO on his board, built it

gto_pcb.jpg
 
I meant the normal pump output from the PCB (aren't they called srew in terminals? :) ). So just skipping relay.
Or I thought I might just use relay as GTO on his board, built it

Yes, you connect a 12v pump directly to it as long as Q3 is rated to handle it. The Q3 acts like a solid state relay controlling the pump output directly.
 
ok right, so maybe I should consider to have some stronger transistor/MOSFET there

So on the GTO board/project he is using IRFZ44N MOSFET (Q3, Q4, part list was somewhere in this topic and on ArdBir dropbox), but when i am checking the datasheet there is Vgs 10-20V which arduino cannot give I assume? So how his MOSFET is working? I will just choose probably some logic mosfets from your board joefarmer.


EDIT:
OK I will probably use IRF530 then for pump and 2N7000 for buzzer and SSR heater. Is this make any sense? :) I am just not sure how I should wire them and what resistors to use? Or if to use any? Middle solution seems the best to me what which resistor to use there? SOmething huge like 470k or 1M ?

Clipboard01.jpg
 
IRF530 and 2N7000 cannot handle current for the 5v Vgs specified. If you look at figure 1 in their respective datasheets, at 4.5v the IRF530 handles ~0A @ 12Vds and the IRFZ44N handles ~8A @ 12Vds. At 5v, IRF530 can do 2A and IRFZ44N ~11A. Use the parts specified.

http://www.irf.com/product-info/datasheets/data/irf530.pdf
http://www.irf.com/product-info/datasheets/data/irfz44n.pdf

You will need a setup like Q1 or Q2 with a MOSFET. Q1 has the advantage of a current limiting resistor protecting the arduino pin. Use 100-200 ohm depending on the frequency you're driving the pin. The lower resistor just keeps the MOSFET disabled. Normally a 10K is fine here.
 
I think its ~1A for IRF530 for 4.5V at 12Vds? (10^0). but still yes I see your point. I would use yours but yours are so small :)
So maybe except that I will use some other logic level gate (IRL family?) or something which can handle 5V and does not heat much?

Or can you suggest any replacements for yours FETs but mount through hole? I am not really into SMD and mounting on the surface and I think I do not wanna try to test it on my brewing PCB :)
 
If anyone is interested I designed a board for Arduino Nano, 20x4 LCD
Here are the gerbers files:
https://github.com/terragady/ArdBir

You can just do it at your local PCB house or something like dirtyPCB or elecrow for 20$/10PCBs which you can share.

So I just used BC337 as the original ArdBir. I was talking with them and they said it's enough to drive relays, SSRs and buzzer so why to go for MOSFETs :)
All the parts can be orderd from china for few bucks.
 
I am geting this error, it seems that the sketch is too big for my board. What can i do to reduce it size a little bit?
Arduino: 1.0.6 (Windows 7), Board: "Arduino Uno"
Binary sketch size: 33,614 bytes (of a 32,256 byte maximum)

processing.app.debug.RunnerException: Sketch too big; see http://www.arduino.cc/en/Guide/Troubleshooting#size for tips on reducing it.

at processing.app.Sketch.size(Sketch.java:1653)

at processing.app.Sketch.build(Sketch.java:1586)

at processing.app.Sketch.build(Sketch.java:1562)

at processing.app.Editor$DefaultRunHandler.run(Editor.java:1899)

at java.lang.Thread.run(Thread.java:619)
 
or you can delete first logo, initial screen etc. I believe pro mini has little more memory if I am not mistaken? Because bootloader is taking less space.
BTW I was able to put ArdBir to ESP8266 and it seems to be working fine. I used I2C display for it. But when I am trying to implement some of the WiFi functions, ardBir seems to get slower especially PID work.
 
Hi all. I am having troubles wiring my pump relay. It has three inputs and I have 2 wires from the arduino. I can get a green light when I turn the pump on the ardbir but cannot get the red led to turn on and cannot hear a click or anything. Plus no matter how I wire my pump I cannot make it go on. I am using a separate 12v power source for the pump.

View attachment 1463857381107.jpg
 
basically you do not need this whole module but only relay, then you only need 2 wires from arduino. Now you have two transistors in a circuit so you need to power another one as well.
 
Okay thanks. All the relays I can find online seen to have the switch vcc and ground. I have tried powering vcc separately and attaching the 2 outputs from the ardbir with no luck still.
 
Hi to all.
I Will start to build this project and I decided to use Arduino nano and I have first problem with the sketch size:
"Sketch uses 30,972 bytes (100%) of program storage space. Maximum is 30,720 bytes"

I downloaded last firmware from here: https://www.dropbox.com/sh/igkch19thwd64ey/AABxEf0zEHHt2Qopm7DZVu6Ca?dl=0

I tryed to find Credits and first logo to delete but I cand find it in the program :/

How can you upload last firmware ArdBir_2_8_3RC, on Arduino nano or better use Arduino UNO, because there is no problem?
 
Joefarmer is bigger version:
"Sketch uses 31,024 bytes (100%) of program storage space. Maximum is 30,720 bytes"
 
He is using nano as well and his version was optimized for this purpose and he cleaved credits so it should fit. Are you using latest IDE?
 
I do not think anything about it, just asking if you are using latest IDE for compiling the sketch? I know some previous versions were compiling sketches which were larger
 
I updated to 1.6.9 and now I uploaded Joefarmer without a problem :)

"Sketch uses 30,442 bytes (99%) of program storage space. Maximum is 30,720 bytes"

Thanke you for your help @terragady.
 
Back
Top