Skip to content
Rachael Kemp edited this page Oct 17, 2019 · 7 revisions

Welcome to the horizon-gui wiki!

This tool allows Arribada Horizon biologging tags to be configured, modified and, inspected. It is based around a captive portal which redirects all traffic to a custom Flask server using the SCUTE library.

System overview:

To run the Horizon GUI, you must host it on a Raspberry Pi as a Flask webserver. The GUI is written in Python and uses SCUTE to generate the forms which allow users to apply configurations to connected tags.

The GUI also provides a number of additional features including scripts which run preset commands on the Pi to perform basic actions which would otherwise require terminal access.

Once a Pi is running the GUI Flask server, users then connect to the ArribadaHorizon WiFi hotspot using the password arribada and then load up a browser to access the GUI. The hotspot provides no internet access and all page requests will redirect to the Horizon GUI homepage.

Terms:

Python tools refers to a set of backend tools, written in Python, which directly communicate with Horizon tags. Tags are configured and return information in the form of JSON files.

Flask is a web framework written in Python. It is used to produce the webserver the GUI is run on.

A captive portal is a WiFi access point which users can connect to. Once connected, all web traffic is redirected to a given location (one example of a captive portal is sign in pages on public WiFi hotspots). In this application the location is the GUI front page.

SCUTE (Schema Compiled Utility Template Engine) is a Python library developed by Octophin. It creates GUI pages from JSON schema files. In this application the schema files are for the Horizon tag configuration files and SCUTE generates form pages for configuring tags. For more information on SCUTE, visit its repository.

Image files are files which can be applied to a drive to recreate the contents of previously ripped drive. FOr this application, a Raspberry Pi was set up with a functioning Horizon GUI and ripped to a .IMG which can turn microSD cards into exact duplicates of the functional setup.