Matho's controller

Australia & New Zealand Homebrewing Forum

Help Support Australia & New Zealand Homebrewing Forum:

This site may earn a commission from merchant affiliate links, including eBay, Amazon, and others.
Hey HSV the connector was mentioned HERE or you could get the ones from modtronix and mount them on the other side. I used a 10K pot but originally designed it for a 5k pot doesn't really matter which one you use both will work. That Arduino you linked is correct.

cheers steve
 
Hi Matho

I have been through a full run today with PWB to clean the whole system and have a question to ask.

During the mash stages when the unit is switching the heat on and off to maintain temperature.
Is it possible to alter the time when the heat is on and off. At the moment it is on for 1 or 2 seconds then off for 1 or 2 seconds maintaing the temperature.

I thought it would be good with the larger water volume to have the heat cycle for a bit longer time.

Cheers
 
Hi Matho

I have been through a full run today with PWB to clean the whole system and have a question to ask.

During the mash stages when the unit is switching the heat on and off to maintain temperature.
Is it possible to alter the time when the heat is on and off. At the moment it is on for 1 or 2 seconds then off for 1 or 2 seconds maintaing the temperature.

I thought it would be good with the larger water volume to have the heat cycle for a bit longer time.

Cheers

Sure you can do that, the unit is set up with a PID window size that is adjustable between 500 and 5000 ms and can be set in the "unit parameters". If the 5 second window is too small then you can change the code here

void unit_set (void)
{
int param[] ={
100,-100,1,100,-100,1,100,-100,1,5000,500,500,9,1,1,8,0,1 };
int a = 0;
boolean pidLoop = false;
int pidSet,setaddr;
int windowSizeSet;
char* setName[] ={
"Kp = ","Ki = ","Kd = ","Windowsize= ","Num of Stages=","Num of Hops=" };

setaddr = 0;
for(int i=0;i<6;i++){
if((i>=0) && (i<=3)){
if (i==3) setaddr = 33;
pidSet=word(EEPROM.read(setaddr),EEPROM.read((setaddr+1)));
}
if (i==4)setaddr = 38;
if((i>=4) && (i<6)){
pidSet= EEPROM.read(setaddr);
}
pidLoop= true;
display_lcd(0,1," ");
while (pidLoop){
display_lcd(0,1,setName);
lcd.print(pidSet);
change_set(pidSet,param[a],param[a+1],param[a+2]);
quit_mode(pidLoop);
if (!(pidLoop))i=6;

if(Button_hold_press(Button_nxt)){
if (i >= 4){
save_settings(setaddr,lowByte(pidSet));
pidLoop = false;
}
else{
save_settings(setaddr,pidSet);
pidLoop = false;
}
}
}
if (i>=4){
setaddr+=1;
}
else{
setaddr+=2;
}
a+=3;
}

}

the 5000 is the upper limit and the 500 is the lower limit and the next 500 is the step size so just change the 5000 to whatever you want.

cheers steve
 
Hey guys,

I should start by saying I'm not actually using Matho's controller, but I'm building a board using the same way of driving the relays. That's where my problem is.

I have a digital pin going to an LED, through a 470 ohm resistor to the base of a 2n222A transistor. I have 12V DC to the Vin of the Arduino (it's a Mega) and to the positive terminal of the SSR. The negative terminal of the SSR goes to the transistor's collector, and the emitter goes to ground.

The trouble is my SSR is always on, i.e. whether the pin is high or low makes no difference, the LED on the SSR always glows. On digital low the voltage across the SSR measures ~4.5V, on digital high ~5.5V. I don't know if that measurement is significant. Other than that I've tested that the resistance between LED cathode and transistor base is 470 ohms, and the resistance between transistor emitter and ground is 0V. The LED is series between the Arduino pin and the transistor illuminates as expected.

I'd appreciate any pointers as to what may be wrong or how I go about troubleshooting it.

Cheers,

Jon
 
I think I might have found the problem. It's always the way, 10 minutes after posting on AHB. I have two datasheets for NPN transistors, that are both supposed to be 2N222As. On one the collector is pin 1, on the other it's pin 3. Looks like I need to do some soldering.
 
I think I might have found the problem. It's always the way, 10 minutes after posting on AHB. I have two datasheets for NPN transistors, that are both supposed to be 2N222As. On one the collector is pin 1, on the other it's pin 3. Looks like I need to do some soldering.

Yeah there are 2 different pin outs for the 2n2222a, which is really annoying
 
Hi,

This is impressive! just read through the thread and very interested. If I wanted to get a system and put it together - what is the situation with boards / supplies?

bigbanko - your build looks sweet. Would you be willing to share a parts list and costs?


I think someone mentioned at some point the idea of adding automatic hop additions - would that be a possible extension? It would mean unattended mashing and boiling potentially?

while i'm getting all ambitious - would it be possible to extend this to load a recipe file or similar to program in the steps etc?

Would love to see a youtube of the user interface / brew in action for a complete one of these! anyone have one?
 
Hi,

This is impressive! just read through the thread and very interested. If I wanted to get a system and put it together - what is the situation with boards / supplies?

bigbanko - your build looks sweet. Would you be willing to share a parts list and costs?


I think someone mentioned at some point the idea of adding automatic hop additions - would that be a possible extension? It would mean unattended mashing and boiling potentially?

while i'm getting all ambitious - would it be possible to extend this to load a recipe file or similar to program in the steps etc?

Would love to see a youtube of the user interface / brew in action for a complete one of these! anyone have one?

Hi lael,
where are you from? Someone may be able to demonstrate it for you. It's going to be very similar to the braumeister so watch videos for that to see what it is like.
 
Hi lael,
where are you from? Someone may be able to demonstrate it for you. It's going to be very similar to the braumeister so watch videos for that to see what it is like.

In Sydney - happy to travel - but live out west at Rouse Hill
 
If you watch Mathos YouTube videos you can glimpse the UI

looked at it - love to see it in action somewhere.

Anyone know if it can be extended for automatic hopping? think i have a fairly simple design worked out that should do the job.
 
Anyone looking for silicone seals to put on the bottom of the malt pipe should try Jehbco in Melbourne as they make hundreds of different extrusions in silicone rubber.

Jehbco


Silicone extrusions

Something like 546 if it is to scale looks like it would do the trick.

I see a bulk buy coming on.....
 
looked at it - love to see it in action somewhere.

Anyone know if it can be extended for automatic hopping? think i have a fairly simple design worked out that should do the job.
Where there's a will, there's a way...

What is your idea?
 
Where there's a will, there's a way...

What is your idea?

really simple actually. just need to run a motor for a short period of time for each hopping - are there outputs / control ports available to allow that on the controller?
 
really simple actually. just need to run a motor for a short period of time for each hopping - are there outputs / control ports available to allow that on the controller?
You will have to add more control circuitry to the system as the arduino can't drive the motor directly, but it is possible. I would recommend using a stepper motor for any control such as this.

The most limiting factor here is the number of digital pins you have left. I don't know whether there is an I2C driver available but that would be nice.
 
There are I2C I/O expanders out there that aren't expensive - so using something like this it would be easy enough to implement. Done correctly it could be used on any system that supports I2C.
 
Or with no additional hardware you could modify a servo motor to have it spin without limits, then drive it directly from the Arduino with one pwm pin... Thinking of trying this myself...
 
there is 4 digital I/O left (0,1,12,13) and 2 analog pins left (A4, A5), A4 and A5 are the I2C pins so you can use them to expand or just use the extra digital I/O's to do what you want.

cheers steve
 
Or with no additional hardware you could modify a servo motor to have it spin without limits, then drive it directly from the Arduino with one pwm pin... Thinking of trying this myself...
I like your thinking :)
 
Back
Top