# Learner's Block

In this documentation you can find everything from how to get started with building your own Block, to the principles that guide it.

![](/files/BV0aqU95lLTPmRX98ePh)

## What is a Learner's Block?

Learner's Block is an open-source project that lets individuals and organisations provide their educational resources, websites and apps to users offline.

Upload your content, stick the Block in your pocket and take it where it needs to be. Users connect directly to the Block with their computer, phone, tablet or other Wi-Fi enabled device and access your content offline.&#x20;

**Key Features:**&#x20;

* Multilingual
* Automatic updates
* Upload your own content, or content created by others
* Mirror your pre-built website or app to the Block for offline access

## Who is it for?

Everyone and anyone. While we have built the Block with education in emergencies in mind, Learner’s Block is intentionally non-prescriptive. Look at its features and flexibility, and feel free to use it as you see fit, in the sectors you feel can benefit.&#x20;

## Where can I get one?

Right [here](https://downloads.learnersblock.org). Learner’s Block is software available for download for free from our website. It is designed to be deployed on hardware you can afford where you are and provides a range of compatible options. For instructions on how to install the software, check out our [Quickstart](/how-to-build-one/quickstart) guide.&#x20;


# About us

Learner’s Block is a non-profit open-source project founded by Arran Magee – a doctoral scholar at the UCL Institute of Education Centre for International Development. It is, however, a community made possible by a diverse range of volunteers from within and outside the education community, all looking to make a difference.

{% content-ref url="/pages/-MWVykoz67NQVZ5yfB6e" %}
[Why we make the Learner's Block](/about-us/why-we-make-the-learners-block)
{% endcontent-ref %}

{% content-ref url="/pages/-MWVythC48Pyf6MDU17d" %}
[How we are funded](/about-us/how-we-are-funded)
{% endcontent-ref %}


# Why we make the Learner's Block

A Learner's Block is free, feature rich, adaptable, durable, technologically advanced and built to be as simple as humanly possible to operate (see our [website](https://learnersblock.org) for more details). But it is more than just its features, it is about the way we operate.&#x20;

EdTech has become big business, especially in the humanitarian and development world. Private companies, technology experts and even non-government organisations (NGOs) - many of which inspired and informed by San Francisco start-up philosophies - have been burrowing away on their EdTech interventions. While adding value, and certainly admirable, this drive raises concerns. It is clear that certain actors in the EdTech industry are treating EdTech, and the COVID-19 crisis as a business opportunity. For others, it is erroneously seen as a panacea for education around the world or substitute for the right to education.&#x20;

Understandably, educators - many of ourselves included - are still wary of being involved in EdTech. We are still trying to identify how or if EdTech should be blended into learning. This however, does not permit our absence from the conversation. The world is currently writing and cementing a new chapter of education interventions and it is vital that this one is written in concert with different authors than those who wrote the last.

How? Well, a new breed of organisation is changing the shape of industries the world over. Community built, community led, community focused projects leave behind the market-based principles and politics of the private and NGO world that have so often constrained the education sector and left control of our education interventions in the hands of the few.&#x20;

The Learner’s Block adopts this community organisation philosophy from start to finish. All of its features are chosen by the community through our [voting platform](https://vote.learnersblock.org/) and funded by our community through a completely transparent [Open Collective initiative](/about-us/how-we-are-funded). It is built on the principle that EdTech can best fulfil needs when it is adaptable, as simple to use as humanly possible and is free, easily accessible and controlled by the organisations, educators and learners that use it. Through the Learner’s Block we thrive to keep EdTech in the hands of the education community.


# How we are funded

We are operated by the community, for the community, and therefore also funded by the community.&#x20;

This is why we are part of the Open Collective initiative, a new way to operate community led initiatives. Anyone can donate, big or small, individual or organisation. Everything spent and raised is listed on our [Open Collective](https://opencollective.com/learnersblock/) page, meaning total transparency.&#x20;

The video below from the Open Collective explains more:

{% embed url="<https://youtu.be/IBU5fSILAe8>" %}


# Quickstart

### **All installations share a series of steps:**

1. Order the required parts:&#x20;
   * [Compatible hardware](/how-to-build-one/quickstart/picking-hardware)
   * [Micro SD Card Reader](/how-to-build-one/quickstart/picking-a-micro-sd-card-and-sd-card-reader)
   * [Power cable and plug if necessary](/how-to-build-one/quickstart/picking-a-power-supply)
   * [Case](/how-to-build-one/quickstart/buying-vs-printing-your-own-case)
2. [Install the software](/how-to-build-one/quickstart/installation) on your memory card
3. Plug in and use your Learner's Block :tada:&#x20;

{% hint style="info" %}
Need a step by step? Don't worry, we can walk you through the whole process. Click the 'Next' button below to begin.&#x20;
{% endhint %}


# Picking hardware

We support a number of different hardware platforms, ranging in power and price to suit your needs. They are ordered here starting with the cheapest through to the most expensive:

* [Raspberry Pi Zero 2](https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/)
* [Raspberry Pi 4 Model B 2GB](https://www.raspberrypi.org/products/raspberry-pi-4-model-b/)

{% hint style="info" %}
We provide a [Raspberry Pi 3 image](https://downloads.learnersblock.org) for those who already have the hardware. We do not recommend buying a Pi 3 however, but to instead buy the Pi 4 due to its improved features at around the same cost, which is why the Pi 3 is not included in this documentation.
{% endhint %}

While there are lots to distinguish between the hardware, here is an overview of what we deem to be particularly noteworthy:

|                                                                                            | Known Issues                | Power                                                                                                                                         | Value                                                                                            | Availability                                                           | Features                                                                                                                                                                                                                                                 | Durability                                            | Wi-Fi                                                                                                                     | Storage | Approximate cost (before shipping) |
| ------------------------------------------------------------------------------------------ | --------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------------ | ---------------------------------------------------------------------- | -------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------- | ------- | ---------------------------------- |
| [Raspberry Pi Zero 2 512MB](https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/)   | Unable to use 5GHz networks | Equivalent to the Raspberry Pi 3. Suitable for those on a budget and looking for a small device.                                              | Incredibly low cost, for those really needing to cut costs                                       | Good distribution, but limited in the quantities you can order at once | Provides the bare minimum needed to run the Block, no USB ports and no Ethernet                                                                                                                                                                          | Tried and tested, produced by a reliable manufacturer | Built in Wi-Fi, but with no aerial impacts the range                                                                      | SD Card | $15USD                             |
| [Raspberry Pi 4 Model B 2GB](https://www.raspberrypi.org/products/raspberry-pi-4-model-b/) |                             | A powerful system which is a significant step up from the others. Provides a good basis for running multiple applications from the App Store. | A step up may feel worth the splurge, but will begin to add up if buying a large number of units | Good distribution, but limited in the quantities you can order at once | Quad-Core processor, 2GB of RAM (no need to go higher) and a Gigabit Ethernet port means this hardware could be plugged into a school network to handle larger numbers. it does mean a larger form factor that won't fit in your pocket like the others. | Tried and tested, produced by a reliable manufacturer | No aerial, but the newer hardware and technologies provide a good range. Ethernet connectivity will allow for more users. | SD Card | $30USD                             |

You can find places to buy each by clicking on the links above which will take you to the manufacturer's website.

{% hint style="warning" %}
While 512mb of memory is sufficient to run the Learner's Block platform, if you are planning to run several applications or demanding applications it would be better to opt for devices with 1gb of more.&#x20;
{% endhint %}


# Picking a Micro SD card and SD card reader

#### MicroSD card

A MicroSD card is a small memory card that stores all your data and the Learner’s Block software. MicroSD cards are available from a wide range of electrical retailers, supermarkets, eBay and Amazon.&#x20;

Each Block requires around 3-4GBs of storage to hold the Learner’s Block operating system. You will then want to ensure there is enough space left for your own files. &#x20;

Fortunately, 8GB tends to be the entry level capacity for memory cards, providing plenty of storage for most users and is our recommended minimum. An 8GB card will provide plenty of space for the Blocks software, future updates and your own files, while also providing some advantages in expanding the lifespan of your card when compared to smaller cards. Prices can range between $3-10USD.

{% hint style="warning" %}
We recommend not using cards over 32GB as compatibility issues may occur.
{% endhint %}

#### MicroSD card reader

Some laptops have built-in ability to read MicroSD cards, but if you do not, then you will need a MicroSD card reader to add the software to your Micro-SD Card. These can be found at local computer stores or online and usually plug in to the USB port of your computer.


# Picking a power supply

Many of the low powered hardware found online come without power supplies. This can often be an advantage, as many users will already have suitable power supplies and can benefit from cheaper hardware.&#x20;

Most hardware will use either a Micro-USB cable or a USB-C cable and prices can start from $1-$2 USD.&#x20;

This cable can then be plugged in to USB ports on laptops, battery packs, Wi-Fi routers and many other power sources to power your Learner’s Block. If however, you want to run the hardware on the mains power supply, you will also need a plug that allows you to plug your USB cable into the relevant wall socket.&#x20;

{% hint style="danger" %}
While there is an array of different options for powering your hardware, be warned, ensuring sufficient power gets to the hardware as outlined by the hardware manufacturer is important to its effective.&#x20;
{% endhint %}

|                                                                                            | Micro-USB | USB-C |
| ------------------------------------------------------------------------------------------ | --------- | ----- |
| [Raspberry Pi Zero 2](https://www.raspberrypi.com/products/raspberry-pi-zero-2-w/)         | ✓         |       |
| [Raspberry Pi 4 Model B 2GB](https://www.raspberrypi.org/products/raspberry-pi-4-model-b/) |           | ✓     |


# Picking a case

The supported hardware are exposed boards. Keeping your new hardware away from water and dirt is always going to be important to ensure it lasts. Many manufactures produce cases for their hardware and there are also a range of options available online start from as little as 3-4USD.&#x20;

Alternatively, you can 3D print your own case. We provide the [design files ](https://downloads.learnersblock.org)you can send to have printed. Generally, this option works best using local providers. Schools and community centres increasingly have 3D printers that you can use too. Alternatively, [CraftCloud3d](https://craftcloud3d.com) provides a search engine to compare prices in your area.

Generally, 3D printing is cheaper if you have access to a printer or if you require multiple cases. If you only need 1 or 2, then costs of printing and postage can begin to add up.&#x20;

{% hint style="info" %}
When we say we are open source, we really mean it. You can get the design files for our cases and print your own!

[Download the Design Files](http://downloads.learnersblock.org)
{% endhint %}


# Installation

**Installation is simple:**

1. Download the image that matches the hardware you are going to use from our [downloads page](https://downloads.learnersblock.org).&#x20;
2. Download [Etcher](https://www.balena.io/etcher/), a piece of free software that will allow you to transfer your download file to the MicroSD Card
3. Insert your MicroSD Card into your computer or [MicroSD Card Reader](/how-to-build-one/quickstart/picking-a-micro-sd-card-and-sd-card-reader), launch Etcher, select the image you downloaded from our website and the inserted card in the Etcher software and hit ‘Flash’.
4. When Etcher is done, put your MicroSD card into your chosen hardware, plug in the power supply and you are ready to go.

{% hint style="info" %}
As an open-source project, all of our code is available for you to use how you wish. Head over to [GitHub](https://github.com/LearnersBlock/learners-block) to see the code and a range of other installation options for more advance users.&#x20;
{% endhint %}


# Connecting to the Block

It may take 5 - 10 minutes on the first boot for the Block to load. Soon you will see a new Wi-Fi hotspot available to your phones, tablets and laptops called ‘Learner's-Block’. You guessed it, that’s the one you want. There will not be any password required.

Once you are connected to the Block, open your web browser and enter:

```
 http://lb.local
```

That’s it! You will now see the Learner’s Block welcome page and all of the default features available to the users.&#x20;


# Setting the language

When a user connects to a Block, it will try to automatically detect the language of the device that has connected and change the interface language accordingly.&#x20;

If, however, you want to manually change the language, you can do so through the icon in the top right of the interface which looks like this:

![](/files/-MWVzg1Qz18aPIIGQKn8)

Every user of the Block can choose their own language, allowing users of different languages to all use the Block simultaneously.&#x20;


# Setting your password

### Set a password

You can set a password to lock the Control Panel and avoid unauthorised users from change your Block settings.&#x20;

Click the Settings cog in the top right of the screen<img src="/files/-MWW0NfAVsYSt7ubDwqi" alt="" data-size="line">.

In the `Security` section, click `Set Control Panel Password` or slide the toggle:

![](/files/-Mk-o7OnaDR9UXIrbxv4)

Follow the prompts to set your new password.&#x20;

{% hint style="danger" %}
Learner's Blocks are designed for offline use. This means we cannot provide a password reset facility like you may find in online platforms. Be very careful not to forget your password or you will be locked out indefinitely.&#x20;
{% endhint %}

### Disable the password

If you decide that you no longer want a password to protect the Control Panel, you can disable it by clicking the `Set Control Panel Password` section or sliding the toggle:

![](/files/-Mk-p2pKCeRWQZiZWPWz)


# Enabling components

A Learner's Block is packed with features. But not everyone will need them all. That is why we let you disable the ones you do not need to prevent users from seeing unnecessary buttons. Click on the Settings cog in the top right of the interface <img src="/files/-MWW0NfAVsYSt7ubDwqi" alt="" data-size="line">.

Under the 'Components' section, use the toggles on the right to enable or disable components:

![Toggles circled in red](/files/-MWW0lUIPN8Zls4cZMVK)

By disabling the two middle features as we can see in the image above, the entry page of your Block will change from this:

![Users interface when all the toggles are switched to on.](/files/-MWW177M1of7oimgl020)

to this:

![Users interface when the 'Library' and 'Makerspace' toggles are switched to off. ](/files/-MWW1S8AlLA-RvFoyEdH)


# Adding content

There are a multitude of ways to add a range of content to your device.&#x20;

1. Through your browser
2. From the Learner's block Library
3. Form a USB Drive

Click a tab below to explore each.&#x20;

{% tabs %}
{% tab title="Through your Browser" %}

## Files and Folders

[Connect to your device](/how-to-use-it/how-to-connect), and login to the Control Panel by clicking the Settings cog at the top right of the interface<img src="/files/-MWW-GJvtfYA2Nwnkxan" alt="" data-size="line">. &#x20;

Under the 'Components' panel, click anywhere on the 'Files' row:

![](/files/-MWW5sbYUDYm4-681YUE)

A File Manager will open, where you can upload files and folders. Open the folder named 'Files', and begin uploading your content.&#x20;

When a user clicks on the 'Files' row on the first page of the Block, they will see all the files you have uploaded, but don't worry, only those who have access to the Control Panel can delete, move or change them.&#x20;

{% hint style="success" %}
ePUB files clicked in the File Manager will automatically open in the built-in ePUB reader!
{% endhint %}

## Websites

A special folder exists on the Block called 'Websites'. This folder works differently than the others. When users of the Block view the content you add in this folder, they will not see files and folders like in the 'Files' component detailed above. Instead, the folder is treated like a web server, where index.html and index.php are sought and opened as webpages when available.&#x20;

To add content, [connect to your device](/how-to-use-it/how-to-connect), and login to the Control Panel by clicking the Settings cog at the top right of the interface<img src="/files/-MWW-GJvtfYA2Nwnkxan" alt="" data-size="line">. &#x20;

Under the 'Components' panel, click anywhere on the 'Website' row:

![](/files/-MWWBO7pJ-lm0pO_oA0V)

The File Manager will open the Website directory where you can upload your website files.&#x20;

When a user clicks on the 'Website' menu on the first page of the Block, they will be directed to the content stored here, where it will open as a webpage.&#x20;
{% endtab %}

{% tab title="From the Library" %}

## Add content

If you would like to add resources from the Learner's Block Library, [connect to your device](/how-to-use-it/how-to-connect) and login to the Control Panel by clicking the Settings cog at the top right of the interface<img src="/files/-MWW-GJvtfYA2Nwnkxan" alt="" data-size="line">.

Under the 'Components' panel, click anywhere on the 'Library' row:

![](/files/-Mk-pVb5IX-1IEnVAoKm)

{% hint style="warning" %}
You will need to be connected to the internet for this feature to work, otherwise the Block will not be able to download the content.&#x20;
{% endhint %}

A new window will open that will take you to the Learner's Block Library. Once you have found the resource you want to download, click the `Download` button.&#x20;

When a user clicks on the 'Library' menu on the first page of the Block, they will see all the Library items you have downloaded.

## Delete or edit content

If you want to delete Library content later, navigate to the Control Panel and click on the `Edit` icon next to the Library toggle:

![](/files/-Mk-pwLJHTYT4i9tZVgK)
{% endtab %}

{% tab title="From a USB Drive" %}
Plug your USB Drive into your Block.

Under the 'Components' panel, click anywhere on the 'Files' row:

![](/files/-MWW5sbYUDYm4-681YUE)

A File Manager will open. Open the folder called 'Files' and you will see a new directory named after your USB Drive. You can leave the Drive plugged in and use the content directly, or you can copy or move the content to the Block.

When a user clicks on the 'Files' row on the first page of the Block, they will also see the USB Drive folder while the USB Drive is plugged in.&#x20;
{% endtab %}
{% endtabs %}

{% hint style="info" %}
You can see the space available on your device at the bottom of the Control Panel.&#x20;
{% endhint %}


# Using the Application Store

Your Learner's Block has an Application Store allowing one-click installation of popular EdTech platforms.&#x20;

To install from the Application Store, you will need:

1. Internet connectivity via [Wi-Fi ](/how-to-use-it/connecting-to-a-wi-fi-network-optional)or [Ethernet](/how-to-use-it/advanced-features/using-an-ethernet-connection)
2. Sufficient [space](/how-to-build-one/quickstart/picking-a-micro-sd-card-and-sd-card-reader#microsd-card) on your device for the downloaded application

{% hint style="info" %}
If you would like to know the space required for each application you can find the source containers on [GitHub](https://github.com/LearnersBlock/app-store), although it is unlikely you will encounter issues if you have chosen a [suitable memory card](/how-to-build-one/quickstart/picking-a-micro-sd-card-and-sd-card-reader#microsd-card).
{% endhint %}

## **Installing an Application**

To install an application click the Settings toggle in the top right of the interface <img src="/files/-MWW0NfAVsYSt7ubDwqi" alt="" data-size="line">.

Click the Application Store tab:

![](/files/-Mk-sQKLSTLRddhXY1-c)

Click the refresh button to fetch the latest list of available applications, then choose an application to install and click 'Install':

![](/files/-MfEEAwQVJEBgbbOVlcZ)

{% hint style="warning" %}
Depending on the application you are installing, your internet connection and device resources, this process may take some time. It is not unheard of on slow connections for installs to take up to 10 minutes.&#x20;

Once the install has taken place, it may also take some time for the application to launch, depending on the process developed by the manufacturer.&#x20;
{% endhint %}

## **Using an Application**

After installing an application it will be available to all users via the frontpage of your Learner's Block. Click the application you want to use to begin:

![](/files/-MfEEIXmFAJgQl7T9JhK)

If you want the installed application to be the first thing people see when they access your Block you can [change the default loading page](/how-to-use-it/advanced-features/changing-the-default-loading-page).&#x20;

## **Updating an Application**

To check for available updates, press the refresh button.

If updates are available the button will change to indicate 'Update Available'. Click the button and the update will begin.&#x20;

![](/files/-MfEEEJPWDYroPdfAp_c)

Updates follow the update procedure of the application provider. This means that if the application provided allows for updates without losing your settings and files then the same will be true for your update on the Learner's Block.&#x20;

## **Removing an Application**

To remove an application click on the label 'Installed' next to the application you want to remove:

![](/files/-MfFNSWDe81-3W9fWSa_)

Removing an application will remove the running application. Application settings, system files and the content downloaded through the application will remain on the device if the application manufacture has allowed it.

{% hint style="danger" %}
We cannot guarantee the data will be kept when you uninstall an application. Some application designers have not built in such a functionality.
{% endhint %}

{% hint style="info" %}
If you want to remove application data to free up space on your Block, you can do so through the applications own interface.
{% endhint %}

{% hint style="info" %}
If you want to remove the application system files to free up space on your device, you can [prune the system files](/how-to-use-it/advanced-features/pruning-system-files).&#x20;
{% endhint %}


# Connecting to a Wi-Fi network (Optional)

## Connecting

Your Block will work perfectly well offline. But if you have access to another Wi-Fi network nearby connecting your Block to it can provide a series of benefits:

1. Your Block can access the internet to fetch updates
2. Your Block can handle more users connected simultaneously by using the available Wi-Fi instead of the built-in Wi-Fi.&#x20;
3. Your users will not need to be close to the Block to access it

In order to connect to a network, click the Settings toggle in the top right of the interface<img src="/files/-MWW0NfAVsYSt7ubDwqi" alt="" data-size="line">.

Under the Networking section, click 'Connect'

![](/files/-Mk-qvWEM1T7jk9BJdS9)

A new window will open displaying a list of available networks, and asking for a password:

![](/files/-Mk-r1G_5XjqxEM5Cy2r)

Complete the fields and hit connect. If you entered the details correctly, your Block will be available on your chosen network after a short period.&#x20;

{% hint style="info" %}
If you do not see the Wi-Fi network you are looking for press the refresh button or try restarting the Block and try again.
{% endhint %}

You can now access the Block with the following steps:

1. Connect your phone, tablet laptop or other device to the same network, either via Wi-Fi or an ethernet cable
2. Visit your Learner's Block just like before, using [the URL](/how-to-use-it/how-to-connect) in your browser

If you entered the wrong password, your Block will soon reappear in your list of available Wi-Fi hotspots. Connect and try again.&#x20;

## Disconnecting

In order to disconnect from a network, click the Settings toggle in the top right of the interface<img src="/files/-MWW0NfAVsYSt7ubDwqi" alt="" data-size="line">.

Under the Networking section, click 'Disconnect':

![](/files/-Mk-rh-o1klc-lX3RDm0)


# Advanced Features


# Checking the Remaining Space

You can find out how much space is left on your Block in the Control Panel.

Click the Settings cog in the top right of the screen<img src="/files/-MWW0NfAVsYSt7ubDwqi" alt="" data-size="line">.

Click the Advanced tab at the top of the page:

![](/files/-Mk-tCzWyFULU1NWM8kx)

Scroll to the bottom of the page to find information on the remaining space:

![](/files/-Mk-vmyYxLWUYDIhMjj1)


# Updating the Block

Automatic updates means your Block will keep going as long as you do.

Updates for your Block are downloaded and installed in the background automatically when:

1. You first turn on a Learner's Block that already has Wi-Fi credentials stored inside, and is in range of that network.
2. Your Block is connected to Wi-Fi for extended periods. Checks for new updates occur every 1 hour.

Don't worry, updates are sent out as little as possible to ensure you have a stable offline experience. Most users will never need to update their Block, unless they want to benefit from new features, or resolve an issue they have been experiencing.&#x20;

When updates are installed, everything is done in the background in a way that you can keep working as normal. Most users will experience 30 seconds or less of interruption upon starting their device. Even if you lose power to your Block, we have you covered with a system built to avoid corruptions.&#x20;


# Using an ethernet connection

Connecting with an ethernet cable avoids relying on the Wi-Fi chip in your Block, and will significantly increase the number of simultaneous users that can use the Block.

Some of the available hardware for running your Learner's Block has an *ethernet port*. This means you can use an Ethernet cable to connect your Block directly into a router in your home, office or school. Once plugged in:

1. Give your Block a minute to register on the new network
2. Connect your phone, tablet laptop or other device to the same router, either via Wi-Fi or ethernet cable
3. Visit your Learner's Block just like before, using [the URL](/how-to-use-it/how-to-connect) in your browser

{% hint style="warning" %}
When connected to your Block via a shared Wi-Fi router, you will not be able to access the Wi-Fi connect page used to connect your Block to Wi-Fi networks. Instead, connect directly to your Blocks own Wi-Fi hotspot as outlined in the [How to connect](/how-to-use-it/how-to-connect) guide, and then access the Wi-Fi Connect page.&#x20;
{% endhint %}


# Automatically Opening Files

Specify a file to automatically open when a user accesses its folder through the File Manager.

When you upload content to your Block, such as a web application, it may include folders containing large numbers of files and sub-folders. When a user accesses the content through the File Manager they risk being confused by which file it is they should open to begin using the uploaded application.&#x20;

{% hint style="info" %}
An example would be a web application with an `index.html` or `index.php` file. Alongside those files will be many other files you will not need the user to see.
{% endhint %}

Therefore, your Block provides the ability to specify a file to automatically open when a user uses the file manager to access the folder which it is stored within. Prefix the file you would like to automatically open with the string:

```
--auto-open
```

**Only users that are not logged in to the Control Panel will benefit from the automatic opening of files.** This is so that an administrator logged in to the Control Panel is able to access the folder and change the files.&#x20;

{% hint style="info" %}
Here are a few examples:

`--auto-open.jpeg`\
`--auto-open-my-original-filename.php`\
`--auto-open_anythinghere.html`
{% endhint %}

{% hint style="warning" %}
It is important to keep the original file extension on the end of your file. Otherwise, your browser will not know how to open the file.&#x20;
{% endhint %}


# Changing the Default Loading Page

Choose the first page you want users to see when accessing the Block to make it easy for users to find your resource, website or app.

**If you want to change the default page displayed when accessing your Block, you can do so in the Control Panel:**

1. Click the settings cog in the top right of the navigation
2. Click the `Advanced` tab at the top of the page
3. Under the `Choose a Start Page` section, select a new start page from the dropdown menu.

You will be provided with a number of options:

| Option:                      | Description                                                                                                                                                                                                                                                                                                                   |
| ---------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Learner's Block Welcome Page | The default Learner's Block navigation page                                                                                                                                                                                                                                                                                   |
| File Manager                 | The users version of the File Manager                                                                                                                                                                                                                                                                                         |
| Library                      | The users access to the Library through the File Manager                                                                                                                                                                                                                                                                      |
| Website                      | The files hosted in the [Website folder](/how-to-use-it/adding-resources)                                                                                                                                                                                                                                                     |
| Application Store App        | An application which you have installed on your Block via the [Application Store](/how-to-use-it/installing-from-the-application-store)                                                                                                                                                                                       |
| Custom Start Page            | <p>An option to specify your own URL. </p><p></p><p>Include only the path you want to point to. For example, entering <code>my-site/index.html</code>will forward users to http\://%%hostname%%.local/my-site/index.html. </p><p></p><p>To specify a port, enter a colon followed by the port number: <code>:8787</code>.</p> |


# Changing the Wi-Fi SSID and URL

You can choose your own Wi-Fi SSID and URL

## Choosing your own Wi-Fi SSID and URL

{% hint style="info" %}
SSID stands for “Service Set Identifier”. The SSID is the name of the Wi-Fi network that you see when you connect to Wi-Fi hotspots on your computers, phones and tablets. By default the Learner's Block SSID is 'Learners-Block'.
{% endhint %}

**By default, the URL to access your Block is:**

> lb.local

**The default Wi-Fi SSID is:**

> Learners-Block

**If you want to set your own, you can do so in the Control Panel:**

1. Click the settings cog in the top right of the navigation
2. Click `Advanced` tab at the top of the page
3. In the `Change URL and Wi-Fi SSID` section, type a new name in the field.
4. Click the green tick button to apply the change:  <img src="/files/-Mk-tylQHnphjEwVR8KP" alt="" data-size="line">&#x20;
5. Restart your Block.

{% hint style="warning" %}
URL and Wi-Fi SSIDs must be a maximum of 32 characters and have no special characters other than `_` and `-`
{% endhint %}

{% hint style="info" %}
You can restore the original URL and Wi-Fi SSID by changing you hostname back to `lb`
{% endhint %}

### **Here is an example:**

In the settings panel, I change my URL and Wi-Fi SSID to:

> my-school-name

After restarting my Learner's Block, its Wi-Fi network name is now:

> my-school-name

To visit my Block, in my browser I type:

> <http://my-school-name.local>

## Using Multiple Blocks on the Same Network

When multiple Blocks are connected to the same nearby router, your phones, laptops and tablets will not know which one you want to connect to when typing in `http://lb.local`or choosing a Wi-Fi network.&#x20;

In these scenarios, you can follow the instructions above to set a custom Wi-FI network name and URL.


# Using Portainer

Portainer allows technical experts to deploy an infinite number of possibilities to their Learner's Blocks

Learner’s Block includes an instance of [Portainer](https://www.portainer.io) - an open-source container management tool - allowing you to deploy micro-services that can run software in its own isolated environment.

We included this facility, to allow users to customise and use their Learner's Blocks in whichever way they deem necessary. Thanks to the inclusion of Portainer, you can host complex apps and websites by including backends, Node instances or anything else you can think of to build.

By default, Portainer is not running to avoid use of unnecessary services. You can start and stop it on your Block in the Advanced tab of the Control Panel.&#x20;

{% hint style="danger" %}
Installation of Portainer requires your device to be connected to Wi-Fi or Ethernet to download the required packages.&#x20;

First launch of Portainer will take some time, as it needs to fetch the image and extract the required components. Please be patient.&#x20;
{% endhint %}

A URL to access Portainer will be provided in the Control Panel that accounts for any changes to your Blocks URL and Wi-Fi SSID but will typically be `http://lb.local:9000`.

{% hint style="info" %}
[Docker Hub](https://hub.docker.com) is a comprehensive database of available containers that can be pulled to the Learner's Block via Portainer. While it is not the only database, it is a good place to start finding an array of operating systems and common services.
{% endhint %}


# Pruning System Files

Some files accumulated over time are kept on the device for speed and offline access. These include:

* Docker images of downloaded applications from the [Application Store](/how-to-use-it/installing-from-the-application-store)

These files are kept for speed and convenience when using your device. If, however, you need to free up space on your SD card you can prune these files without any major impacts to your device.

{% hint style="info" %}
Here is an example. When you install applications from the [Application Store](/how-to-use-it/installing-from-the-application-store) and then [remove them](/how-to-use-it/installing-from-the-application-store#removing-an-application) again, the application's system files are kept on the device for your easy offline installation later. If, however, you would rather have the space back, you can prune these files using the Prune button.&#x20;

**Note,** however, that this will not remove your application data and settings that are used by the application manufacturer to customise the app to you. Therefore, if you reinstall the application later, your settings will be restored. If you want to remove these files, do so through the applications own interface.&#x20;
{% endhint %}

In order to prune system files, click the settings icon in the top right of the interface<img src="/files/-MWW0NfAVsYSt7ubDwqi" alt="" data-size="line">. Click the 'Advanced' tab.&#x20;

![](/files/-Mk-tCzWyFULU1NWM8kx)

Scroll to the bottom and you will find a `Prune` button under the 'System Maintenance' heading:

![](/files/-Mk-tPXj176gJXB5c6Ee)


# Reset System Database

If you encounter database corruption due to SD card errors or software issues, you can reset the database to restore the original settings of your device.

Click the settings icon in the top right of the interface<img src="/files/-MWW0NfAVsYSt7ubDwqi" alt="" data-size="line">. Click the 'Advanced' tab.&#x20;

![](/files/-Mk-tCzWyFULU1NWM8kx)

Scroll to the bottom and you will find a `Reset` button under the 'System Maintenance' heading.

Resetting the database should only be done as a last resort as you will lose your configuration and it cannot be restored.&#x20;


# What is the Library?

The Learner's Block Library is a central repository for open source education materials made by the larger education community.

![](/files/-Mk-uweyzXiQ4pCiWLL2)

The EdTech community has created a wealth of resources in all shapes and sizes. Yet so often they are hard to find, or only work on certain devices.

Our Library provides a central platform to access these open-source resources how they were intended: free and open to use how you wish.

Download them directly to your [Learner’s Block via the Control Panel](/how-to-use-it/adding-resources).


# How can I contribute?

## **Translate**

See an issue with a translation? Able to contribute a new language? Great! You can easily submit changes through our [translations page](https://translate.learnersblock.org).

## Vote

Know of a new feature needed in the community? Add new suggestions or up vote others through our [voting platform](https://vote.learnersblock.org).&#x20;

## Donate&#x20;

As with all community projects, we do incur costs. You can see everything we have spent,  everything we have been donated and you can donate yourself through our [funding page](/about-us#how-we-are-funded).&#x20;

## Code

Do you have the technical skills to contribute to building the Learner's Block platform? Then we love to get your contributions. Check out the [Learner's Block repository](http://github.com/learnersblock) on GitHub.&#x20;

## Everything else

There are many ways to contribute and we cannot list them all here. If you want to get in touch about something else, feel free to reach out via the [contact form](https://learnersblock.org/contact) on our webpage.&#x20;


# Technical details

We have intentionally tried to keep the documentation as lean as possible in order to avoid overwhelming users with the technical details. Now we have a little space, let’s get into some more specifics around what the Block does, and how.&#x20;

## Operating System

At the base of our project is [Balena](https://www.balena.io), an open-source project and set of tools for building, deploying and managing fleets of Blocks. Each Block runs BalenaOS, based on Yocto Linux but heavily customised for reliability and low resource Blocks. It is a read-only OS to avoid risks of corrupting data on SD memory cards and to minimise writes to the Block. Within the OS is a bespoke variation of Docker to run required services in isolated containers. The result is an extremely stable and durable operating platform (so stable in fact, it is even [used in space!](https://www.balena.io/blog/beyond-the-cloud-docker-containers-in-space/)).&#x20;

## Updates

Each Block is connected to the [Balena Cloud](https://www.balena.io/cloud) infrastructure. This service allows security, stability, language and feature updates to be deployed to Blocks when they come online.&#x20;

Updates are installed automatically and in the background. Individual layers of each container are updated rather than the entire container in order to reduce data usage. Only after installations complete successfully are previous versions removed in order to ensure maximum uptime and to reduce risks of Blocks being corrupted if disconnected during updates.&#x20;

Updates are triggered at key intervals such as when the Block loads. This ensures the data usage required during everyday operation of the Block is as low as possible. &#x20;

This service is not required by your Blocks to operate, you can run entirely offline by not connecting to a nearby internet enabled WI-FI Network. &#x20;

## Learner's Block Web Server

One of the core functions of the Learner’s Block is the ability to host your own website. Running on each Block is NGINX and PHP8-FPM ready to serve your files as soon as you drop them in the ‘website’ folder through the [File Manager](/how-to-use-it/adding-resources) accessed in your browser.&#x20;

For more advanced hosting options, you can benefit from [Portainer](/how-to-use-it/advanced-features/using-portainer).

## Learner's Block Resource Consumption

Each Block type will use slightly different amounts of resources, although all hover around 2-3GB of storage and 250MB of RAM in order to run the base Learner’s Block platform. SWAP memory is disable in order to reduce memory card wear.&#x20;


# Security & Privacy

Learner's Blocks are designed to be used offline, which reduces security risks significantly. Yet we still build towards making them secure enough to be used in other more public environments just to be sure. All of the code running on the devices is available on our [GitHub page](https://github.com/LearnersBlock) for your own review.&#x20;

We use [Balena Cloud](https://www.balena.io/cloud) to provide device updates and device management services. Therefore, by using a Learner's Block you are also a user of Balena Cloud. Subsequently, the Balena Cloud privacy policy applies: <https://www.balena.io/privacy-policy/>.&#x20;

More information on security steps provided by Balena can be found here: <https://www.balena.io/docs/learn/welcome/security/>


