Requirements for SimACo
- AC 120-230V voltage devices: maximum total current on all four Device1-Device4 channels must not exceed 4A. There is protection fuse in the main board which can be blown if you will exceed this current.
- Temperature sensor: based on DS18B20 chip. Not required, but if not used, automatic control of heater and cooling fan will be disabled.
- 12V power supply for main board: 12V, 1.5A min. 12V electrical circuit is protected by PTC fuse which has 1.4A cut-off current.
- 5V power supply for main board: 12V, 0.5A min.
- Power supply (PSU) for LED lighting: it must be selected according to your LED lighting. MOSFET driver board has 12V-24V input voltage, max. 6A per channel. So select 12-24V PSU. Board output voltage will be equal to the PSU voltage. LDD driver board’s parameters depends on the soldered LDD driver modules. PSU (board input) DC voltage: 9-56V for LDD-300H…1000H and 9-52V for LDD-1200H, 1500H; LED1-LED4 (board outputs) voltage: 2-52V for LDD-300H…1000H and 2-46V for LDD-1200H, 1500H.
- PH sensor board: can be connected any PH sensor with 50Ohm BNC connector.
- Dosing pumps: 12V peristaltic pumps must be used. One pump’s current in any case can’t exceed 0,5A or 6W otherwise output transistors can be overheated.
- Auto top-off (ATO): aquarium float sensor must have contact closed, when water level is low. Reservoir sensor must work in reverse order: it must have contact open, when water level is low. ATO pump must be 12V, 800mA max.
- Battery: 3V standard CR2032 lithium battery.
- Fan: 12V, two wires, max power can be 3,6W or 0,3A. Two fans can be connected in parallel, but total power must not exceed 3,6W.
- In order to control SimACo you can use your mobile device with Android v.5.0 or higher or Windows device. Angry Fish application (Windows or Android version) must be installed. To update SimACo firmware you must use Angry Fish Windows version, Android application does not support firmware update.
Angry Fish application installation
Angry Fish for Android: to install application you must download Angry_Fish_for_Android_v.X.X.X.X.zip archive file from downloads section. Next extract Angry_Fish_for_Android_v.X.X.X.X.apk file from archive. Then transfer apk file to your Android device and install application from this file. Application is not available in Google Play store, but it will be made available in the near future. When installing application to your device, Android will throw message something like: “For your security your phone is not allowed to install unknown apps from this source”. To install application you must go to your device’s settings menu and move slider with text “Allow from this source” or “Allow installation of apps from sources other than the Play Store”.
After this you can continue installing application. Angry Fish for Windows: when installing application you can get security warning saying: “Do you want to allow this app from an unknown publisher to make changes to your device” or similar.
Press “Yes” and installation will continue.
Controller assembly
There is recommended connections schematics how to assemble controller components and to start to work with SimACo, click to enlarge.
First off all, if you are planning to use controller to control high voltage (120-230V AC) aquarium devices, like water or air pump, CO2 valve, heater, fluorescent lamps, you will need to connect controller to the AC wall socket. First mount all components into the plastic box which is impermeable to electric current. Then fully close the box, only after this you can connect SimACo’s high voltage power supply cable to the wall socket. Remember that touching controller parts when controller is connected to the mains you can be injured by electric current or you even can die. Connecting aquarium devices to SimACo use cable end sleeves:
There are several connections in the main board:
prog. – programming connection, may be not soldered. Not used.
J7 LCD – LCD connection. Used to connect 2×16 LCD module.
J3 buttons – keypad connection. Used to to connect 5 buttons keypad.
J1 (12V) – +12V power supply connection. Used to supply power to the peristaltic pumps, AC devices relays, fan, buzzer and ATO pump.
5V – +5V power supply connection. Used to supply power to the SimACo controller.
J6 aux I2C – I2C connection. Used to connect additional modules to the main board. PH sensor board can be connected here.
aux 12V – +12V connection, this is the output from 12V power supply. Used to connect additional modules to the main board.
T0C sensor – temperature sensor connection.
led1 – led4 – LED connections. Connect LED drivers to this connection only, LEDs can not be connected directly to those outputs. LED all “-” connections are connected together, so you can use only one “-” wire for all four LED strings.
fan – 12V aquarium fan connection. Fan can be connected directly.
pump1 – pump4 – dosing pumps connection. Pump’s all “+” connections are connected together, so you can use only one “+” wire for all four peristaltic pumps, if you want.
120 – 230V in – AC voltage input connection, 120-230V. You do not need this if you are not using devices which require high voltage (devices connected to the J5-2 output).
devices – output connection to AC voltage 120-230V devices. All devices must share one neutral wire, connected to the J5-2 “N” contact. This wire must be branched out in the separate powerstrip with 4 outlets where aquarium devices will be connected.
reserv. sensor – connection for ATO reservoir sensor.
aquarium sensor – connection for ATO aquarium sensor.
ato pump – connection for ATO pump.
USB – USB 2.0 type A connection.
Connect buttons board to the main board with flat 8 contacts cable. Connector J3 in the buttons board must be connected with the keypad J3 connector in the main board. Both J3 connectors have one white dot marking on both boards. Boards must be connected in such way that the marked contact in the buttons board must be connected with the marked contact in the main board.
![]() |
![]() |
Connect LCD module to the main board J2 LCD connector with two eight pin flat cables. The contact marked “1” on the LCD must be connected to the main board’s contact marked with the white dot. Because J2 connector has 16 contacts, two eight-contact cables must be used.
![]() |
![]() |
Connect PH sensor board J2 connector to the main board J6 aux I2C connector with 6 pin flat cable. The contact marked with white dot on the PH board must be connected to the main board’s contact marked with the white dot.
![]() |
![]() |
Warning! Wrong connection between main board and LCD, buttons board or PH sensor board will likely cause the damage to these components!
Connect wires from LED lighting to connectors led1 – led4 in the main board. Connect high voltage devices to devices connector in the main board through 4 outlets powerstrip. SimACo switches these devices through relays. If you have a filter, it must be connected to device1 output because this output has filtering capacitor. If you have a heater, it must be connected to the device4 output. Other aquarium equipment can be connected to the device2 and device3 outputs. Connect temperature sensor to connector sensor in the main board. Temperature sensor has three wires. Connect black to “-” connection, red to “+” and yellow to “DQ”. Connect aquarium fan to connector fan in the main board. Connect dosing pumps to pump1 – pump4 connectors in the main board. Connect aquarium and reservoir float sensors to the aquarium sensor and reserv. sensor connectors. Connect ATO reservoir pump to the ato pump connector in the main board. Insert 3V batterry in the main board battery holder, watch polarity. Connect +5V power supply unit 2.1/5.5mm connector to the 5V connection in the main board. After this you must see writings “General settings” in LCD. If LCD is blank, adjust LCD contrast with potentiometer LCD contrast. Connect +12V power supply unit 2.1/5.5mm connector to the 12V connection in the main board. Connect 120-230V power supply cable to the main board 120 – 230V in connector.
Mount high voltage wires/cables in the box (120-230V power supply cable and wires from devices connector) away from all other cables. High voltage cables touching/crossing low voltage control cables can make LCD or PH sensor board work unstable.
How to reset controller
- Disconnect 5V power supply, wait 20 – 30 seconds and connect again. You can reset controller if it malfunctioning or you need to enter Firmware Update / WiFi Configuration mode.
- Also automatic reset is implemented, controller will reset itself if important error occurs.
Three ways to control SimACo
There are three ways to control SimACo:
- USB cable connection. You will need USB cable and computer with Windows OS to update SimACo firmware.
- through a buttons keypad. With keypad you can control mostly used SimACo functions.
- wireless WiFi connection. Using Windows PC or Android mobile device with WiFi connection you can access all SimACo functions except firmware update. You will need to install Angry Fish application’s Windows or Android versions from the download section.
Standard, Firmware Update and WiFi Configuration working modes
SimACo has three working modes: Standard mode, Firmware Update mode and WiFi Configuration mode. In the table below you can see which version of Angry Fish works for the particular mode:
WiFi Configuration mode through USB cable | Mode works only in Angry Fish Windows version. | This mode is used to configure SimACo WiFi settings in order to establish wireless computer – SimACo connection. This configuration is required to do only once. USB cable must be used. |
Standard mode | Angry Fish Windows and Android versions. | This is default mode and is used to control aquarium equipment through WiFi connection. Also WiFi connection can be configured in this mode. |
Firmware Update mode through USB cable | Mode works only in Angry Fish Windows version. | This mode is used to update SimACo controller’s firmware. USB cable must be used. |
When SimACo boots up, first it boots in to the WiFi Configuration mode. You will not notice that is everything is OK. Then SimACo checks if firmware is OK (firmware present and is not corrupted). If firmware is OK, it automatically boots in to the normal working Standard mode. If firmware is not OK, SimACo stays in the WiFi Configuration mode.
How to enter different modes:
To enter WiFi Configuration mode you must:
- Press and hold “bootload” button, soldered in the main board.
- Press and release “reset” button.
- When you will see text “Mode: WiFi config” in the LCD screen, release “bootload” button.
- Connect USB cable between SimACo and computer. In the Angry Fish application’s right top corner you must see blue USB icon.
If method above does not work, try method below:
- Disconnect +5V power supply, wait 20 seconds.
- Press and hold “bootload” button, soldered in the main board.
- Connect +5V power supply.
- When you will see text “Mode: WiFi config” in the LCD screen, release “bootload” button.
- Connect USB cable between SimACo and computer. In the Angry Fish application’s right top corner you must see blue USB icon.
To enter Firmware Update mode you must:
- Enter WiFi Configuration mode as described above.
- Shortly press and release “bootload” button, soldered in the main board. Then you will see text “Mode: Firmware update” in the LCD screen.
- Connect USB cable between SimACo and computer. In the Angry Fish application’s right top corner you must see blue USB icon.
To enter Standard mode you must:
- If you are in the WiFi configuration or Firmware update modes, press reset button in the main board.
- USB cable can be disconnected, it is not required in the Standard mode. When SimACo is connected to PC wirelessly, in the Angry Fish application’s right top corner you must see blue WiFi icon.
If you are in Firmware Update or WiFi Configuration modes: “bootload” button press toggles between these two modes.
SimACo WiFi settings
First time after you have received SimACo you may want to configure WiFi settings in order to connect to controller from your Windows/Android device. Normally all WiFi devices can be access points (router) or stations (mobile phone, laptop etc.). Two station devices can not talk directly one with the other – station device can talk only with the access point device and vice versa (here exclusion exist – WiFi direct mode where two station devices can be connected directly). In order to make WiFi communication between two station devices they both must connected to the same access point. Then these station devices will communicate one with another through access point. Take a look at the picture below:
In the picture devices A, B and C are stations. Devices B and C can communicate one with another only through a router. SimACo at this point can be set both as station or access point (router). But only one mode can be active at a time. So devices A, B and C as stations can reach SimACo through a router if SimACo is configured as station. If SimACo will be configured as access point, devices B and C will be able to communicate with SimACo directly and device A will not be able to reach controller. That is because device A does not belong to the users home network. So is up to you to decide which SimACo mode do you need:
- If you will set SimACo as station, you will be able to connect to controller from devices B and C through a router. Devices B, C and SimACo controller must be connected to the same router. You even will be able to reach your controller from device A, which is located outside your home. It can be in other town or other country. But to reach SimACo from device A you will need to do port forwarding operation in your router. If you have a router, i recommend to use SimACo as station. For station mode you must connect SimACo to your home router. SimACo IP address will be assigned by the router.
- If you will set SimACo controller as access point, you will be able to reach controller only from your house, devices B and C. By default SimACo controller is configured as access point. In the access point mode SimACo will act as a router. SimACo address will always be the same for this mode: 192.168.4.5.
There are two ways to configure WiFi connection settings: through USB cable (works only with Windows PC) or using WiFi connection (Windows PC or Android device). For both methods you will need to install Angry Fish application in to your Windows/Android device.
To configure through USB:
- Switch SimACo controller to the WiFi Configuration mode.
- Connect USB cable between PC and SimACo. In the Angry Fish application’s right top corner you must see blue USB icon.
- After successful connection through USB open “Connection and update” menu in the Angry Fish application. Next select “SimACo as station” or “SimACo as access point” tab in order which type of device you want SimACo to be.
- If you have selected “SimACo as station” tab, press “Find nearby access points” button. SimACo will search for the routers. After several seconds routers will be found, they will be displayed in the list. Selected your router from the list, enter your router’s password in to the “Enter access point password’ field and press button “Configure WiFi”. Your router will assign the IP address to SimACo (controller as station) and SimACo will connect to the router. You can see what is going on in the log window below. Also you will find SimACo IP address written there.
- If you have selected “SimACo as access point” tab, SimACo will be configured as a router itself. Fill SimACo’s desired name and password fields. You can leave channel and encryption fields intact. Next press button “Configure WiFi”. You can see what is going on in the log window below. For this mode SimACo IP address will be always the same: 192.168.4.5.
To configure through WiFi connection:
- Connect to the SimACo through Angry Fish application. How to do this read section “Connect SimACo through WiFi” below.
- After successful connection through WiFi open “Connection and update” menu in the Angry Fish application. Next select “SimACo as station” or “SimACo as access point” tab/ radio button in order which type of device you want SimACo to be.
- If you have selected “SimACo as station” tab/radiobutton, fill your router’s name and password fields and press button “Configure WiFi”. Your router will assign the IP address to SimACo (controller as station) and SimACo will connect to the router. In the LCD screen you will see text “Configuring WiFi as Station”. After that controller will automatically reset and will load in to the Standard mode.
- If you have selected “SimACo as access point” tab/ radio button, SimACo will be configured as a router itself. Fill SimACo’s desired name and password fields. You can leave channel and encryption fields intact. Next press button “Configure WiFi”. In the LCD screen you will see text “Configuring WiFi as AP”. After that controller will automatically reset and will load in to the Standard mode. For this mode SimACo IP address will be always the same: 192.168.4.5.
Connect to SimACo through WiFi
If you are using SimACo as access point mode first you must connect your PC/ mobile device to the controller’s network. Search in your PC/mobile phone for the access point named “SimACo” and connect to it. By default SimACo is configured as access point with default parameters: name – SimACo, password – MyHappyAquarium, IP address – 192.168.4.5.
Warning: if you are connecting to the SimACo controller (as access point), from Android device, turn off mobile data. Mobile phone with Android version 9 or newer may not connect to the SimACo if mobile data is on.
If default parameters are changed, you can always restore them. To do this use 5 buttons keypad: go to the “General settings menu”, then through “Load Default WiFi config.” menu restore default settings. To do this in the “Load Default WiFi config.” menu press button “Enter” in the five buttons keypad. Word “Load” will start to blink. Press “Enter” button again and controller will configure itself as access point. In the LCD screen you will see text “Configuring WiFi as AP”. After that controller will automatically reset and will load in to the Standard mode.
Next in order to connect to SimACo through WiFi you must to know SimACo login password and IP address. Here do not confuse login password and SimACo WiFi password when controller is configured as access point. They are different things. For example, you are connected to your router from mobile phone and yo are using Facebook application. You need one password to connect to the router (WiFi password) and another to connect to the Facebook application (login password). They will be not necessarily the same. Default login password is MyHappyAquarium1. If SimACo is configured as access point, IP address always is 192.168.4.5. If SimACo is configured as station, you can find IP address in two different ways:
- when configuring SimACo through USB, Angry Fish application will show this address in the “Connection and update” menu log window as text “IP address xxx.xxx.xxx.xxx was set as default.”
- when SimACo restarts and boots in to the Standard mode, it automatically will read it’s configuration mode (station/ access point) and IP address. These two values you can see in the LCD screen. Simply enter “General settings” menu using 5 buttons keypad and you will find those values.
In your Angry Fish application’s “Connection and update” window enter SimACo IP address, login password and press button “Connect through WiFi”. If connection was successful you must see blue WiFi icon in the application’s top right corner. Your PC/mobile device automatically will read data from SimACo and will display in the Angry Fish application.
Access SimACo from any place in the world
If you want to access your SimACo from a distant location, first you must configure controller as station: controller must be connected to your home router. Next step: find out your public IP address. Your router has two IP address fields: one public (external) and one private (internal) for all your home devices connected to the router. If you want to access your controller from the outside you must connect to the controller with your router’s external (public) IP address. Public address is given by your internet provider. Ensure that this address is static. Some internet providers sometimes change user’s IP address. IP address change occurs when router is restarted. So if your provider uses dynamic IP addresses, after every router restart you must to check your IP address in order to know which address to use to connect to SimACo. Angry Fish application will find and show this address for you in the “Connection & update” tab. Next you must do port forwarding in your router. With port forwarding all data which will be sent to your router through an external device’s Angry Fish application, will be redirected to SimACo controller. Port forwarding operation is similar for many routers. You must write your SimACo IP address, protocol and port in to the router’s settings. Local and external ports number always is 55555, protocol – TCP. Most routers have “Name” field – write any text you want here. In the pictures below you can see Asus and TP-Link routers port forwarding examples:
Controlling SimACo with 5 buttons keypad and LCD module
SimACo has keypad with five buttons, every button has several functions. Using buttons you can view LCD menu, check or edit various parameters.
There are two levels menu in SimACo: 1st level (higher) and 2nd level (lower):
How to navigate through LCD menu: button UP scrolls menu up, button DOWN scrolls down. Press button ENTER to go from the higher to the lower level menu. Press button ESC to go from the lower to the higher level menu. How to edit parameter: In the menu picture editable parameters are shown in red color. Go to the LCD’s second level menu where desired parameter is displayed. Press button ENTER. The first editable parameter starts to blink. If there are several editable parameters, select between them with button SELECT. When the required parameter is selected, edit it with buttons UP/DOWN. You can press and hold these buttons for 1 second to change parameter faster. When you are done, press button ENTER to save parameters or button ESC to discard parameters changes. Several parameters are not editable, for example command reset. Command can be executed by pressing button ENTER, buttons UP/DOWN will not work for them. After when buttons ENTER or ESC were pressed SimACo exits Edit mode and saves new parameter value to volatile memory, if ENTER was pressed.
Controlling SimaCo from Angry Fish application
Angry Fish application has several windows/tabs. In the Equipment overview window/tab you can see all SimACo channels and their main parameters. In Alarms window all alarms and their states (active or inactive) are displayed. Equipment overview window channels information and Alarms window alarms states are updated automatically in two-three seconds interval. All other windows are not updated automatically, you must update them manually using “refresh data” button.
In Angry Fish application icons are used:
Name | Picture | Actions |
Button “refresh data”. | ![]() |
Press this button to read all data from controller. |
Button “save settings to controller”. | ![]() |
Press this button to save settings to the controller. |
Alarm state icon. | ![]() |
This bell icon shows active alarms state. Three colors are possible: green – alarm has not been read yet; red – one or more alarms are active; green – there are no active alarms. |
Icon “SimACo connected through USB”. | ![]() |
PC is connected to SimACo through USB. |
Icon “SimACo connected through WiFi”. | ![]() |
PC or Android device is connected to SimaCo through WiFi. |
Editable parameters in Angry Fish for Android application have blue color. In Windows version most parameters can be edited directly, some editable parameters are underlined. By pressing such underlined parameter new window will open where you can edit this parameter.
Every SimACo channel (physical output or input) has its own icon. Most icons can be changed by the user to correspond real device, connected to this channel. Also some channels have changeable descriptions. In order to change icon or description, press on the icon picture or description in the dedicated channel’s control window. Channel’s icon or description can not be changed from the Equipment Overview window.
Changing channel’s icons and desriptions in your own way makes a work with SimACo more comfortable because you will know exactly which channel’s parameter you are viewing or changing. In channel’s description only ASCII symbols allowed; space symbol is not allowed.
There one special icon exists for all channels – grey square named “not used”. By selecting it, you will disable channel. Disabling channel you will disable channel electrically; alarms also will be suspended. Also every output channel has background color which indicates channel state:
![]() |
![]() |
![]() |
![]() |
Saving and viewing controller’s status. SimACo has non-volatile memory (FLASH). This memory is used to save SimACo settings permanently. These settings will remain in the memory even if the 5V power supply and battery will be removed. 3V lithium battery stores controller time, so after battery replacement you must set the correct time. In the Angry Fish application all similar parameters are joined in the groups. Each group has one button (“Save settings to controller” button). This button sends all parameters of that group to the controller and controller saves them to non-volatile memory. After editing parameter press this button to save settings. New value will be saved to controller and controller immediately will start to work with a new settings.
When Angry Fish application connects to the SimACo, application will read all settings from it automatically. If you want to read all data from SimACo manually, press “refresh data” button it the top of the application.
SimACo channels control
Understanding channel’s events. LED, Devices and 12V Fan channels each have Auto mode. When this mode is activated channel is controlled automatically. Settings for the Auto mode is controlled in the Events window. Each event is like separate timer. These timers allow to turn channel on or off at a time desired. Also they have an additional features for LED and 12V Fan channels control. Events have several parameters which can be set by the user: event number, channel type, start time, starting brightness/speed, end time and end brightness/speed parameters. For LED channels all parameters are used. For Devices channels starting brightness/speed and ending brightness/speed parameters are not used. For Fan channel ending brightness/speed parameter is not used. Not used values are faded. Editing values which are not used for the particular channel will not have any effect. There are 50 in total events dedicated to all four LED channels, Devices channels and Fan channel. Any event can be assigned to any LED1-LED4, Device1-Device4 or 12V Fan channel. Every event can control only one channel but the same channel can be controlled with several events. Events for the same channel even may overlap each other by time. If events overlaps, event with a lower number will be executed first. When it ends, the event with the bigger order number will be activated. Take a look at the example:
Here events #2 and #3 for LED3 channel are overlapping. So at 9:00 o’clock event #3 will be activated and LED’s initial brightness will be set to 0%. Brightness will continuously increase and at 10:00 will reach 30%. At this time event #2 will be activated for LED3 channel, because it’s order number is lower. So at 10:00 LED3 channel brightness will be set to 0%. Next at 11:00 event N#2 will event will end, at this time LED brightness will be 100%. Now because event N#2 has ended but event N#3 has not ended yet, controller will keep event N#3 active from 11:00 to 12:00. LED brightness will change from 60% to 90%. At 12:00 there is no events set for LED3 channel, so this channel will be turned off. This event’s description in bigger part is valid for Devices and Fan channels too, so the event’s usage for device’s and fan channels will not be described separately.
SimACo firmware checks for events change one time per second. This is valid for LED, Device and Fan channels. There is one thing the user must to know: if LED channel is set to change LED brightness, for example, from 0 to 100% during one minute interval, brightness will be not evenly changed. This is because brightness must be changed by 100 steps of brightness through the 60 seconds (steps) of time. To achieve an even full – scale brightness change i recommend to use 5 minutes or bigger time interval.
LED channels control. There are four channels dedicated to LED lighting. They all have the same functions but they work independently of each other. Channels have three modes: OFF, ON and AUTO. In OFF or ON modes channel will be permanently turned off or on. In AUTO mode LED’s brightness will be adjusted automatically according to user settings (events). All LEDs must be connected to power supply through additional devices, called drivers. SimACo has two LED driver boards: MOSFET driver board and Mean Well LDD drivers board. Each board has four channels.
- MOSFET driver board is designed to be used with LED strips or LED modules which requires constant voltage 12V or 24V power supply.
- LDD driver board has four Mean Well LDD-XXXX series drivers soldered in. Board must be used with LEDs which requires constant current power supply. This board mostly can be used with powerful LED (1-3W) strings, connected in series. Mean Well drivers are several types: LDD-300H, LDD-350H, LDD-500H, LDD-600H, LDD-700H, LDD-1000H, LDD-1200H, LDD-1500H. Digits in the type description shows supplied current in mA to the LED string. Who wants to know more about these drivers, here is a datasheet.
Both boards both connects directly to the main board. Also additional power supply is required to supply power to the LEDs. It’s voltage and current must be selected according to the selected LED lighting.
Devices channels control. Devices channels are designed to control AC voltage devices.
Device1 channel has 4 modes: OFF, ON, AUTO, Off15. Device2 channel has 4 modes: OFF, ON, AUTO, FAN CONTROL. Device3 channel has 4 modes: OFF, ON, AUTO, CO2 SOLENOID. Device4 channel has 4 modes: OFF, ON, AUTO, HEATER CONTROL. So all four channels have OFF, ON and AUTO modes. In OFF or ON modes channel will be permanently turned off or on. In AUTO mode device will be turned off and on automatically according to the events settings.
Device1 channel is designed to control aquarium filter. It has special mode: OFF15. Activating this mode aquarium filter will be disconnected for 15 mins. After this it will be set to ON mode. This function is useful when you need to feed your fish and aquarium filter flow scatters food flakes all around.
Device2 channel is designed to control 120-230V aquarium fan block when is set in FAN CONTROL mode. In this mode fans will be turned on or off according to the real aquarium water temperature and “Maintain water temperature” parameter, set in “Temperature sensor” window. Water temperature is measured by temperature sensor. To use fan in FAN CONTROL mode temperature sensor must be connected to SimACo and enabled from Angry Fish application. Fan will be turned on when aquarium temperature will rise 0,5°C above the “Maintain water temperature” (MTA) value, that is MTA+0,5°C. Fan will be turned off when temperature drops below MTA + 0,2°C. For example, you set maintained temperature to 26,0°C. If temperature will rise up to 26,5°C, fan will start. When water cools down and temperature drops down to 26,1°C, fan will be turned off. There is 0,4°C gap between fan on/off. This ensures that fan will not be turned off and on frequently when aquarium temperature will fluctuate a little. Rotating fan block fan can be noisy, especially if you are going to sleep and the air in the aquarium room are hot. In this case fan can be turned off at particular time interval. Edit parameters: “Disable fan from XX hour till XX hour” to disable fan at specified interval even if aquarium temperature is high.
Device3 channel has CO2 SOLENOID mode. This mode is designed to control CO2 solenoid valve according to the water PH measurements. To use this mode PH sensor must be used and PH sensor channel must be enabled. SimACo controller will measure water PH parameter and according to this parameter will turn on/off solenoid valve in order to keep water PH at desired level.
Device4 channel is designed to control aquarium heater. For this purpose HEATER CONTROL mode can be used. To use heater in HEATER CONTROL mode temperature sensor must be connected to SimACo and enabled from Angry Fish application. In this mode heater will be turned on when aquarium temperature will fall below 0,5°C from the “Maintain the temperature in aquarium” value set. If HEATER CONTROL mode is active and sensor error occurs or user manually disables sensor, Device4 channel automatically will be turned off.
Temperature sensor channel control. Temperature sensor measures current aquarium temperature. Other channels also will use temperature measurements:
- 12V Fan channel , when fan is set to Sensor Controlled (SC) mode – water cooling;
- 120-230V Device 2 channel, when this channel is set to Fan mode – water cooling;
- 120-230V Device 4 channel, when this channel is set to Heater mode – water heating.
12V Fan channel control. Fan channel has OFF, ON, AUTO and SENSOR CONTROLLED modes. In OFF or ON modes channel will be permanently turned off or on. To use fan in SENSOR CONTROLLED mode temperature sensor must be connected to SimACo and enabled from Angry Fish application. Fan will be turned on when aquarium temperature will rise 0,5°C above the “Maintain the temperature in aquarium” (MTA) value, that is MTA+0,5°C. Fan speed will be automatically increased if temperature will increase. When temperature will reach MTA+1,5°C fan will turn at full speed. Fan will be turned off when temperature drops below MTA + 0,2°C. For example, you set maintained temperature to 26,0°C. If temperature will rise up to 26,5°C, fan will start. When water cools down and temperature drops down to 26,1°C, fan will be turned off. There is 0,4°C gap between fan on/off. This ensures that fan will not be turned off and on frequently when aquarium temperature will fluctuate a little. Rotating at full speed fan can be noisy, especially if you are going to sleep and the air in the aquarium room are hot. In this case fan speed can be reduced or increased at particular time interval. First set time interval in “Time interval from XX hour till YY hour”. Then edit parameters: “Set max. fan speed when interval is not active” and “Set max. fan speed when interval is active”. Both parameters will limit fan speed. The first parameter sets max. fan speed only when current time is not in the time interval between “from” and “till” time values (interval inactive). The second parameter sets max. fan speed when interval is active. So you can increase or decrease maximum fan speed only at desired time, for example, at night. There is “min fan speed” parameter also. It is valid if it’s value is >0. Parameter is useful if you don’t want fan to stop when aquarium water temperature is normal. For example, you have non-waterproof electronics in your aquarium hood and you want to remove water vapour from the hood constantly. Then you can set “min fan speed” to 30-40%, MTA value to 26,0°C. Then fan will never be turned off. When aquarium temperature will fall below 25,5°C, heater will be turned on but fan will continue to rotate according to the “min fan speed” parameter set. Every 12V fan has its own start-to-spin voltage. It is about 2,5-3,0V or 20-25% from the 12 volts. For example, if we will apply 2V to the fan, it will not spin. That’s why there is a 30% or 3,6V fan startup voltage set in SimACo controller (not accessible to the user). This means that fan speed set automatically or by user will not fall in to the interval 0%-30%.
PH sensor. SimACo is designed to measure aquarium water PH level and support constant aquarium CO2 level by controlling CO2 solenoid (valve). Also SimACo can be used only for PH measurement without solenoid control. To use water PH measurement function an additional PH sensor board must be used. PH sensor board has 50 ohm BNC connector to connect PH sensor. To use CO2 control function you must:
- Connect PH sensor board to the Main board.
- Connect PH sensor to the PH sensor board.
- Connect CO2 solenoid to the Main board’s “devices” output #3.
- Enable PH sensor from Angry Fish application.
- Set Device 3 mode to “CO2 solenoid”.
How SimACo controls CO2 level in your aquarium water? In the aquarium CO2 level and water PH are directly related through kH (carbonate hardness) parameter. kH value must be stable in the aquarium in order to get exact CO2 value from the measured PH value. If you know your aquarium kH and PH values, you can get CO2 value from these two parameters. You can use CO2 calculator in the Angry fish application to get required water PH value for the CO2 level you want to support. Save this value to SimACo as “Maintain water PH” parameter. Controller will open and close CO2 solenoid to support this PH value ±0.05PH. If for example you set “Maintain water PH” value to 7.00PH, controller will turn on solenoid valve when PH rises up to 7.05 and will turn off valve when PH will fall to 6.95. CO2 level and PH has reverse relativity: PH gets lower (water is more acidic) when CO2 level will rise and vice versa: PH will rise (water will be more alkaline) when CO2 concentration will decrease. SimACo supports two CO2 level scenarios. First scenario is to support required CO2 level 24 hours/day. This scenario helps to support aquarium water PH stable. Other scenario: CO2 level is only supported at daytime; CO2 valve will be shut down at night. This helps to save CO2 gas but water PH in this case will fluctuate during 24 hours period.
Sensor calibration. PH sensor must be calibrated before using. To calibrate sensor PH buffers are used. You will need two calibration buffers: one buffer with low PH value and the second with high PH value. These values can be: 4.00 (4.01), 6.86, 7.00, 9.18 and 10.00 (10.01). It is required that high buffer’s PH value must be greater than the low buffer’s PH value by the 2 PH units or more. For example you can use 4.00 PH buffer as the low PH buffer and 9.18 buffer as the high PH buffer. But buffers with PH values 6.86 and 7.00 can not be used because the difference between the two buffers PH values will be lower than 2. There is a rule: the bigger difference between two buffers PH values the bigger accuracy you will get measuring with your PH sensor. So using of 4.00 PH and 10.00 PH buffers will be the best option. During calibration you will need to know calibration buffer’s exact PH value. Any PH buffer slightly changes it’s PH value according to the buffer temperature. Usually manufacturers declare buffer’s PH value at a 25oC temperature. But they also provide a table with buffer’s PH values at different temperatures. Calibrating PH sensor you must use PH values at a current temperature of the PH buffer. If buffer was in the room for a while you can use a room temperature as buffer’s temperature. For example: PH buffer has 9.18PH value at 25oC buffer temperature. But there is a 30oC temperature in your room, also buffer has the same temperature. Buffer at a 30oC has 9.14 PH value, so you must use value 9.14 during calibration. First prepare low PH and high PH buffer solutions if you got them as a powder. To prepare a solutions use deionized or distilled water, do not use a water from the tap! Next prepare a glass and fill it with deionized/distilled water. PH sensor can be calibrated from Angry Fish application or from LCD menu using keypad. Here are instructions how to calibrate sensor from the keypad: Remove the protective cap with the storage solution from PH sensor. Rinse PH sensor in the glass with distilled water and put it in the low PH buffer. Go to the “PH sensor settings” menu, next go to the “Aquarium PH value” menu. Check the PH value and wait while PH readings from the sensor will stabilize. This can take minute or two. Then go to the “Low PH buffer” menu, select your exact low PH buffer’s PH value and select command “calibrate”. In the same manner you must do calibration with a high PH buffer. Again rinse PH sensor in the glass with distilled water and put it in the high PH buffer. Wait while PH readings from the sensor will stabilize. Then go to the “High PH buffer” menu, select your exact high PH buffer’s PH value and select command “calibrate”.
Alarms. There are four alarms dedicated to the PH sensor: Water PH low limit exceeded, Water PH high limit exceeded, PH sensor calibration error and PH board fault. If you have calibrated sensor with a wrong PH values, PH sensor calibration error will appear. You can always reset bad calibration to the default calibration with a “Reset sensor calibration” command. This command will set low PH buffer’s value to 4.00 and high PH buffer’s value to 9.18. Using default calibration you can get approximate PH values when measuring aquarium water with a sensor. But for exact measurement you must calibrate sensor manually. PH sensor calibration error automatically disables CO2 solenoid; PH board fault error automatically disables both PH sensor and CO2 solenoid. Disabling PH sensor channel all four PH alarms will be disabled.
Dosing Pumps channels control. 12V dosing pumps must be connected to SimACo main board. You can use 1-4 pumps depending on how many different fertilizers you are using. Generally there are 2 modes for dosing pumps: automatic and manual. You can set automatic mode for selected amount of fertilizers dosing on selected days. Or you can select manual mode if you want to doze fertilizers right now. By pressing “Stop pumps” button user will stop pumps in both modes. On first SimACo run you must calibrate your dosing pumps flow rates. In the other words you must know how many mililiters of fertilizer are pumped through 60 seconds interval and set this parameter in “Pump flow rate ml/min” for each pump you are using. The test can be done using manual dosing. Take a spare container where pump will pump fertilizers and a syringe with mililiters marked on its side. Go to the Angry Fish application’s Dosing pump menu and set initial “Pump flow rate, ml/min” value for channel DosingPump1 to 20ml/min. Save this value. Next in “Manual dosing” menu set “Fertilizer dosing amount, ml” to 30ml and set “Channel” to DosingPump1. Next press button “Start manual dosing”. Dosing will start. When dosing pump will stop, measure with syringe actual dosed amount of fertilizer. For example 15mililiters of fertilizer were dosed. Then calculate actual flow rate for DosingPump1 using formula:
Real flow rate ml/min=(Flow rate set ml/min * Real dosed amount ml) / Set dosing amount ml Real flow rate ml/min=(20ml/min*15ml)/30ml=10ml/min
Here we got that the actual flow rate is 10ml/min. Set this value for DosingPump1. In the same order calibrate flow rates for channels DosingPump2 – DosingPump4. SimACo knowing real flow rate and fertilizers dosing amount will calculate how many time to run pumps in order to dose required amount of fertilizers. Also every time when you refill containers with fertilizers you must update “Fertilizer amount left in container” parameter. Controller is created in such way that it will try to dose fertilizers even if “Fertilizer amount left in container” value is 0. After every dosing SimACo recalculates fertilizers amount left in containers. You can check this amount from Angry Fish application or LCD even not seeing containers with fertilizers. Parameter “Start to pump fertilizers at X hour” sets the begining of automatic fertilizing. Pumps will pump fertilizers one after another – not all at the same time. This prevents fertilizers mixing with each other. If either pump is not enabled on the current day, it will be omitted. Also you can start or stop manual dosing using controller keypad. When the manual dosing is active, at the 1st line of LCD you will see blinking “dosing active symbol”. At the second LCD line you will see the number with amount of fertilizers left to dose (in ml).
Aquarium top-off (TO) control. Top-off function is used to refill aquarium with fresh water automatically if current aquarium water evaporated and water level has dropped. Two float sensors (switches) and one pump is used for this function. Put pump in the reservoir as close to the bottom as possible. Pump will pump water from the reservoir to the aquarium. Also you need a hose. Connect one end to the pump and the other pump end attach to the aquarium wall. Do not immerse hose in to the aquarium water to prevent siphoning effect. One float sensor – aquarium sensor you must put in the aquarium. It will track aquarium water level. Sensor must be attached to the aquarium wall about 8mm below the desired aquarium water level. The other sensor – reservoir sensor you must put in the reservoir with fresh water. Reservoir sensor must be attached to the reservoir’s wall above pump’s top point. This sensor will track reservoir water level and will prevent your pump from running dry. Many pumps can run only fully immersed in water else pump can be overheated. TO system can refill aquarium automatically everyday at a time, set by user. Also user can start manual refill at any time. Manual top-off can be activated from Angry Fish application or using LCD menu. TO module will refill aquarium automatically or manually if all these conditions are met:
- Aquarium sensor is in the LOW position (aquarium needs to be refilled).
- Top-off channel is enabled.
- “Top-off: reservoir water level low” alarm is not active.
- “Top-off: max aquarium fill time expired” alarm is not active (this condition is valid only for automatic refill).
If any of these conditions are not met pump will not run and will immediately stop if this occurs when pump is running. Also pump can be stopped at any time by pressing “Stop top-off pump” button in Angry Fish application or starting the pump from Manual top-off LCD menu.
When pump starts to refill aquarium automatically, controller counts time and constantly compares pump run time with time value set in “Maximum aquarium fill time” field. This field can be set from 0,5 min to 25 min. It is needed to protect your aquarium from overfilling in case if aquarium sensor started to malfunction. If aquarium sensor is in low position but “Maximum aquarium fill time” limit is reached then controller will stop the pump and “Top-off: max aquarium fill time expired” alarm will be generated. If everything goes OK pump will stop when aquarium sensor will rise. You can view the both sensors states in the LCD menu if top-off system is enabled. Go to the “Top-off settings” in the LCD menu. There in the second level menu you will find “Sensor state:” menu. The status of the aquarium sensors will be indicated by writings “Hi” or “Lo” (sensor is in the high or low position). For example: “Sensor state: Aqua:Lo Res:Hi”. This means that the aquarium sensor is in the low position (needs to be refilled) and the reservoir sensor is in the high position (water level is OK). If TO system is disabled, sensor state will be indicated by writing “NA” (not available).
Dosing and top-off pumps queue. Five pumps can be connected to SimACo: 4 dosing pumps and one top-off pump. SimACo program works in such way than the only one pump can work at the same time. Controller program has the queue which distributes pump’s work. The queue prioritizes pump’s work in such way:
- Only one pump can run at the same time.
- Auto dosing operation has higher priority that the auto top-off operation: if auto dosing and auto top-off operations must start at the same time, first dosing pumps will run one after another. Only after that automatic top-off operation will start.
- Manual dosing and manual top-off operation can be activated if no one pump is active. For example, if automatic dosing is active, SimACo will not respond to the “Start manual top-off” button press.
- If manual dosing or manual top-off operation is active and auto dosing or auto top-off operation must start, auto operation will wait till manual operation will be finished and only then will start.
Alarms
In Alarms tab/window you can check which alarm/alarms currently are active. Green color means that there is no alarm, red means that alarm is active. Also you can see alarms in the LCD module. If any alarm is active, the blinking “!” sign will be shown in the screen.You can activate buzzer which will sound when active alarm exists. Also you can set time interval at which alarm will sound. Buzzer will beep three times at the every start of ten minutes in the selected time interval. Some alarms will reset automatically. Others must be reset manually through Angry Fish application or 5 buttons keypad. If alarm in Angry Fish application’s Alarms tab/window has a “Reset” button near it, that means that alarm will not be automatically reset even if alarm conditions will be removed. In this case alarm can only be reset manually. If channel is disabled, alarms for this channel are also automatically disabled. SimACo has several types alarms, they are:
N# | Alarm | When activated | How to disable alarm through Angry Fish application |
1 | Channel Pump1 daily dose too low | PumpX spinning time in Automatic Dosing mode is less than 5 sec. | Dilute fertilizer with distilled water and increase dosing amount of fertilizers. |
2 | Channel Pump2 daily dose too low | ||
3 | Channel Pump3 daily dose too low | ||
4 | Channel Pump4 daily dose too low | ||
5 | Channel Pump1 fertilizer amount in container low | PumpX fertilizers amount left is less than the alarm limit set | Refill fertilizer bottles and increase PumpX fertilizers amount left or decrease alarm limit value. |
6 | Channel Pump2 fertilizer amount in container low | ||
7 | Channel Pump3 fertilizer amount in container low | ||
8 | Channel Pump4 fertilizer amount in container low | ||
9 | Water temperature low limit exceeded | Water temperature is lower than the “Low temperature alarm limit” | Check if heater is working or decrease alarm limit value. |
10 | Water temperature high limit exceeded | Water temperature is higher than the “High temperature alarm limit’ | Check if cooling fans are working or increase alarm limit value. |
11 | Temperature sensor fault | Sensor is disconnected/malfunctioning | Connect good sensor and reset alarm manually. |
12 | Top-off: reservoir water level low | Reservoir flow switch is in the “low” position (not rised). | Refill water reservoir or check if reservoir float switch is working correctly. |
13 | Top-off: max aquarium fill time expired | ATO pump’s working time was bigger than “Maximum aquarium fill time” parameter | Check if top-off pump is working; check if aquarium float switch is working correctly. Also you can increase “Max time when aquarium must be filled” parameter. Then reset alarm manually. |
14 | System fault: SimACo restarted | Controller has stuck and was restarted automatically. This alarm also can be thrown if user disconnects PH sensor board from the Main board when PH sensor channel is enabled. | Reset alarm manually. |
15 | Water PH low limit exceeded | Measured PH value < (Maintain water PH – Low PH alarm limit). | Check CO2 valve, maybe it has stuck in open position. Check if PH sensor is measuring correctly. |
16 | Water PH high limit exceeded | Measured PH value > (Maintain water PH + High PH alarm limit). | Increase High PH alarm value or change the time when Low/High PH alarms are active. Check if PH sensor is measuring correctly. |
17 | PH sensor calibration error | The difference between high and low PH buffer’s values is less than 2. One more variant is included here when calibrated Low PH buffer’s value is bigger than High PH buffer’s value. | Activate command to reset calibrations to default or calibrate PH sensor manually with correct calibration buffer’s PH values. |
18 | PH board fault | PH sensor is enabled from Angry Fish application but SimACo can not communicate with PH sensor board. | Check if PH sensor board is connected to the Main board. If it is connected reset alarm manually. |
Using “Fast control” function
Using Fast control” function with one button press you can rapidly set Device1 channel to OFF15 mode or to go to the desired menu without scrolling through LCD menu.
List of “Fast control” 15 actions:
- none
- Display date and time
- Display water temperature
- Display fertilizer #1 amount left
- Display fertilizer #2 amount left
- Display fertilizer #3 amount left
- Display fertilizer #4 amount left
- Display fertilizer #1 manual dosing settings
- Display fertilizer #2 manual dosing settings
- Display fertilizer #3 manual dosing settings
- Display fertilizer #4 manual dosing settings
- Display alarms
- Display manual top-off settings
- Display water PH value
- Set Device1 to Off15 mode
Four buttons in keypad – UP, DOWN, ENTER and SELECT have this function. Any of those four buttons can have one action assigned. You can program buttons actions in the Angry Fish “General Settings” tab. Simply select action for the particular button and press button. “Fast control” function is activated when button is continuously pressed for more then 1 second. There are default programmed actions when you first time run controller: Button UP: view water PH value; Button DOWN: set channel Device1 to OFF15 mode; Button ENTER: view current aquarium temperature; Button SELECT: view alarms.
How to update SimACo firmware
Warning! If your old and new firmware version numbers are different, non-volatile memory will be erased and set to default values, so all your settings will be lost. So write down current controller settings on a sheet of paper, you will need to restore them manually after firmware change. For example, old SimACo firmware is 2.3. You are updating firmware to v2.4. In this case settings will be set to default. But if you are updating from v.2.4 to 2.4 (for example minor update released), settings will remain unchanged. Firmware and Angry Fish application versions must be same in order to communicate between Windows/Android device and SimAco. Else application will throw message that versions are not compatible.
Firmware can only be updated through USB cable using only Windows device. So in order to update firmware you need:
- Switch SimACo to bootloader mode.
- Connect USB cable from PC to SimACo.
- In the “Connection & update” tab” Firmware update” groupbox press button “Choose hex file” and choose desired .hex file with SimACo firmware.
- Press button “Program firmware” and firmware will be programmed to SimACo.
Programming will take about 2 minutes. If Angry Fish application during programming throws firmware update error, try to reconnect USB cable and to program firmware again. After programming you can press a “reset” button in the main board to return to the Standard mode.