The Android Control Application

Nexus 7 Tablet On Its Bracket

Nexus 7 Tablet On Its Bracket

Having already programmed a couple of applications for Android being able to control the brewery entirely through an Android based device seemed like the sensible thing to do.

I designed the application to run perfectly on a Nexus 7 tablet which I already had available but would happily run on other devices with minor tweaks to the graphics displays. I installed a small mount on the side of the brewery so I could slot the tablet in when required and simply slide it out to take it away.

All the sequencing for all the stages in the brewery are entirely controlled by the Android application with visible and audible prompts at certain times. For example when the brew is boiling it prompts me to place the hops into the boiling at wort at certain times.The application will keep alerting me with an audible alarm every minute until I do as I’m told and put the hops in.

I’ve made the application to be very user friendly and a brew can be made by simply pushing the start button on the display and following the on screen prompts.

The following options are currently available within the software, some of which I’ll detail more on different blog posts.

  • A Main Menu.
  • The Main Graphics Display of the brewery.
  • The Fermentation control enclosure display.
  • A Cleaning Control Page.
  • Full logging of each brew and detailed historical information.
  • A Full Recipe handling system, including stock management.
  • And Various Other Settings Pages
The android control application main menu

The android control application main menu

The main menu is self explanatory and simply gives you a way to access all the other pages, As you can see from the photo most of the buttons on the main menu simply choose what you want to do. These all bring up the Main Graphics display of the brewery but change the control options at the bottom of the display, Allowing different sequences to be run such as sterilising the brewery, Hot rinsing the brewery or the main Brewing sequence.

The main display which is used for controlling the brewery

The main display which is used for controlling the brewery

When you are on the main graphics display, If you need to do something quickly such as opening or closing a valve simply clicking on the valve changes it state. You could run the brewery entirely this way without using the sequencing built in but would need to remember what you should be doing all the time.

All the items on the display are colour coded, For example the valves highlight in red while they are open and turn grey when they are closed.

At the bottom of the graphics display is the main control options where you start and stop the running of the brewery. While everything is running ok the options at the bottom are shown in green and if any problems occur the display turns red, if you stop the sequence from the screen the display shows yellow. You can also stop the brewing at any time by pushing the stop button. This shuts down the valves and pumps and also any heating elements in use at the time.

The application tells you how long each stage has to go such as how long to go on the boil, When the next hops are required and also if the tanks are heating up how long it will take for them to reach the temperature required.

Fermentation vessel and enclosure display

Fermentation vessel and enclosure display

One of the other graphics display available is the vessel control enclosure display, This page indicates the current temperature within the enclosure and also the current bubbles counted through the airlocks from each demijohn. It also indicates how long fermentation has been active for the brew and whether a gravity sample needs to be taken. These are entered by just clicking on the vessel and selecting the correct sample.

Clicking on the graph symbol while it’s fermenting displays a real time graph of the current bubbles counted, This gives an easy to read representation of how the fermentation stage is proceeding.

When fermentation is completed it prompts you what to do next and keeps track of the time taken for each stage, This is automatically logged against the particular brew number.

The other pages are settings pages which are used for configuring settings and times used within the system. This will eventually be expanded to allow a proper recipe editing facility.

The PoKeys57E Unit

The Pokeys57E module

The Pokeys57E module

The Pokes57E device I use is a low cost simple to use ethernet based device which combines a lot of inputs and outputs.

If provides 55 digital input and output connections which I use for things such as level probes and driving the relays for the valves and pumps.

It also has 7 analog inputs available though I’m only using 1 of these at the moment to measure the liquid level in the Hot Liquor Tank.

One of the main benefits to me is that it also has all the in built communications to talk to different sensor types including ones on the 1-wire bus which I’m using for the temperatures in the vessels.

The configuration software used for configuring the Pokeys57E device

The configuration software used for configuring the Pokeys57E device

The list of what this module can do goes on and on and is extremely flexible, I’m also using one of the devices in my greenhouse to monitor temperatures and levels in nutrient tanks. In this situation I’m also using the LCD and keyboard capabilities of the device to allow it to display the greenhouse situation and modify settings through a keyboard.

The overall configuration of the device is done through a simple to use piece of included software.

Example of the programming within the Pokeys device

Example of the programming within the Pokeys device

As well as the standard device you can also program the device to do certain things using a language/program called PoBlocks, I don’t really use this part of the device to it’s fullest as it makes more sense to do 99% of the programming and sequencing of the brewery within the Android application as it’s more flexible.

But for some things such as shutting of the water supply if the Hot Liquor tank goes to high level or shutting off the heating elements if necessary the programming capabilities are ideal as they don’t use any communications and just instantly take effect. So I’ve used them for this.

The device comes with all the communications protocols described in a document to allow any other ethernet device to communicate and read and write the status’s of the inputs and outputs. This is how I can control the brewery from the Android application. The Android application uses the described communication protocol to talk directly to the Pokeys57E board to find out the status of the brewery at all times and drive anything necessary at certain stages in the processes.

I’ve currently got the Pokeys57E board wired into a wireless router so that the Android tablet I am using does not even need a wired connection and I can carry it around and monitor the brewery wherever I want.