Brewtroller on an Arduino Mega Help

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 guys. I was able to get the brewtroller running on my Arduino Mega 2560 by simply following the directions on the Brewtroller website. The one problem I ran into was that I was upgrading the . Pde and the brewtroller code will not run on 1.05. Once I made some pin changes the board is up and running. I will set up the encoder and temp sensors and repost. My goal is to run it with brewtroller live via the Ethernet module.
E

Great to hear that you managed to get it working! Have you made any progress that you could share?

Cheers, R
 
Hi Everyone, I have continued to work on my MEGA with Brewtroller running but I am running out of patience. The screen boots up and the Brewtroller shows on the screen unfortunately the Encoder just will not work. Anyone else had success getting the encoder to work? The link below shows the configuration I am using. I also have been unsuccessful using the ethernet shield.

https://www.oscsys.com/sites/default/files/1000004_enc.jpg
 
Check the FastPin library to ensure that all the pins you are using are available to the Encoder library.
 
I have got the display working correctly and have sort of got the encoder registering too, My encoder is erratic at best and does what it wants, i presume this is because it is a cheapo one from china with a board attached to it. I might order a better one from somewhere and test that. :)
 
More likely a software issue. Interrupt based encoder routines work a lot better, from memory only 1 of the encoder pins is triggering interrupts the way it's set up by default.
 
Subbed...I'm interested in ditching my pid and pwm boil controller for an arduino sometime soon.
 
Hello,

I make a big up for this post...

I have found this video:
 
Last edited by a moderator:
People, anyone has a wiring diagram to connect LCD (I2C) on arduino mega? My setup is a e-herms, with 2 heater element (HLT and kettle). I recirculate wort with a chugger pump. So, I will construct my own Brewtroller on an Arduino Mega.

What is the correct version to this board: BrewTroller or OpenTroller HWProfiles file?

Thanks,

Fabiano
 
People, anyone has a wiring diagram to connect LCD (I2C) on arduino mega? My setup is a e-herms, with 2 heater element (HLT and kettle). I recirculate wort with a chugger pump. So, I will construct my own Brewtroller on an Arduino Mega.

What is the correct version to this board: BrewTroller or OpenTroller HWProfiles file?

Thanks,

Fabiano

Fabiano,

I believe your going to need to setup an actual I2C interface, I'd do some searching on I2C and arudino to get that figured out. The cable between the actual brewtroller boards and the I2CLCD on the back of your LCD (if thats what your doing) is 4 wires. If your not using the I2CLCD backpack, then its really up to you how you want to connect your LCD. If that makes sense.
 
What is the correct version to this board: BrewTroller or OpenTroller HWProfiles file?

Thanks,

Fabiano

Oh, and the hardware profiles are more about your brewery than the board. So you would select the right profile for your setup.. if you use a 3 vessel HERMS system, select that HWProfile.
 
Thanks for all the work you have put into this project! I was going to go the premade route, but after contacting Brewtroller a couple times about when the boards will be back in stock, I have yet to get a reply. So I figured I would try getting it going on a mega 2560 board.

However, I'm having trouble compiling the code from your github page. There seems to be a conflict with the LCD library from what I can tell, but I cant figure out why. I have the Sainsmart LCD from amazon below, and it works properly with the test code from the manufacturer.

https://www.amazon.com/gp/product/B0080DYTZQ/?tag=skimlinks_replacement-20

I tried deleting and reinstalling the IDE and downloading another copy of the brewtroller files to no avail. The error log is available on the txt link below. Any help would be greatly appreciated!!

https://www.dropbox.com/s/ocx1v0jt4gkn7by/Arduino Errorlog.txt?dl=0

EDIT: In the UI_LCD header file liquidcrystal.h was still included so it was using two copies of that library. I commented one out and was able to upload and compile successfully. Just getting white blocks on the LCD though... will have to keep trying.
 
Last edited by a moderator:
...Just getting white blocks on the LCD though... will have to keep trying.

Have you used the LCD before? Might be the hardware contrast, try adjust the pot that should be connected to the contrast pin on the LCD.
 
The contrast is good. It works fine with the example sketch in the notes on Amazon and I left it set where it was visible. I think the issue lies with the screen not working with the standard LiquidCrystal.h library or the modified LiquidCrystalFP.h library.

The example that works uses a library called NewLiquidCrystal which is available on github, and used a LiquidCrystal_I2C function. I think this would somehow need to be included in the code for it to function properly. I've been trying to add it for the past couple hours but I'm beginning to realize that task may be over my head because it keeps erroring out :)

I'm thinking the only way this may work would be to get a 4x20 LCD and other goodies that is compatible with one of those libraries. Not sure I can get a guarantee on that other than buying off the brewtroller site

Sigh... now I need to decide if I want to drop another $50 on the brewtroller site for the LCD / LCD to i2C interface / encoder, or if I should go the easy route and just pick up a BCS-460 or 462....
 
Thanks for all the work you have put into this project! I was going to go the premade route, but after contacting Brewtroller a couple times about when the boards will be back in stock, I have yet to get a reply. So I figured I would try getting it going on a mega 2560 board.

However, I'm having trouble compiling the code from your github page. There seems to be a conflict with the LCD library from what I can tell, but I cant figure out why. I have the Sainsmart LCD from amazon below, and it works properly with the test code from the manufacturer.

https://www.amazon.com/gp/product/B0080DYTZQ/?tag=skimlinks_replacement-20

I tried deleting and reinstalling the IDE and downloading another copy of the brewtroller files to no avail. The error log is available on the txt link below. Any help would be greatly appreciated!!

https://www.dropbox.com/s/ocx1v0jt4gkn7by/Arduino Errorlog.txt?dl=0

EDIT: In the UI_LCD header file liquidcrystal.h was still included so it was using two copies of that library. I commented one out and was able to upload and compile successfully. Just getting white blocks on the LCD though... will have to keep trying.

How have you been trying to contact me? I don't typically miss messages via email or Facebook. Where you trying other ways? I should have boards back in stock next week or the week after, I'm just doing the final testing/programming of the last batch right now.

In terms of the code, you will not be able to use the 1.8.1 IDE to compile (thats what I see referenced in your log file), you have to use one of the bundled IDE's on our website. What version of the firmware are you trying to use? The 2.6 version needs the 0022 custom IDE. If you are going with the 2.7 version that Matt Reba is maintaining, then I believe his works in the 1.0.6 version. I don't support that one, but there is a Facebook group where he answers questions.

We also have a 2.8 version about to be released that forgoes the Arduino IDE for either command line using CMAKE and AVRDUDE or an upload utility we have built that makes it dead simple.

Again, let me know how you have been trying to contact me, I want to make sure I'm not dropping any balls here!
 
Last edited by a moderator:
kdog_x, I just realised you were talking about compiling the project for the mega. So you can disregard what I was saying if its irrelevant. If you want/need help with my firmware, just let me know! And, for sure, let me know how you were trying to contact me so I can make sure I'm not missing stuff.
 
kdog_x, I just realised you were talking about compiling the project for the mega. So you can disregard what I was saying if its irrelevant. If you want/need help with my firmware, just let me know! And, for sure, let me know how you were trying to contact me so I can make sure I'm not missing stuff.

Ok thanks, I thought that was kind of odd getting no response. I sent two messages via the contact link on the bottom right of the brewtroller website, one a few days ago and another about a week before that. Not sure why they didn't go through, i do use mozilla for browsing though, didnt try any other browsers or anything. Let me know when you have the boards back in stock. I'm still slightly on the fence between the BT and the BCS, but I'm leaning towards the bretwtroller.
 
I will let you know!! Try sending an email directly to [email protected]. I'll double check emails and make sure that form is working right.

I know I'm biased, but BCS doesn't offer anything BrewTroller doesn't have for less $$. But I'm happy to help in any way I can no mater your choice!
 
kdog_x, I a having a similar problem where the mega will not compile. You said that in the UI_LCD header file liquidcrystal.h was still included so it was using two copies of that library, so you commented one out and was able to upload and compile successfully. Can you show in the UI_LCD header file where you commented out? I tried to follow the code, but was not successful. Thanks.
 
You need to change this section

#include "Config.h"
#include "Enum.h"
#include "HWProfile.h"
#include <Wire.h>
// #include "LOCAL_LiquidCrystalFP.h"
#include <LiquidCrystal.h> //Admiro - if you want to use no-FP version remove two LiquidCrystalFP file from sketch
#include <stdlib.h> // for malloc and free
#include <EEPROM.h>

to this...

#include "Config.h"
#include "Enum.h"
#include "HWProfile.h"
#include <Wire.h>
#include "LOCAL_LiquidCrystalFP.h"
// #include <LiquidCrystal.h> //Admiro - if you want to use no-FP version remove two LiquidCrystalFP file from sketch
#include <stdlib.h> // for malloc and free
#include <EEPROM.h>

The FP stands for "fast pin". The two liquidCrystalfp files can be removed from the sketch if you want to use the normal liquidcrystal.h library, which is how it is originally configured. Or with the second option above, it will load the "fast pin" setup and not the standard library. It compiled successfully with both options, it just can't be configured to use both of them at the same time.
 
Back
Top