# Welcome to Castmill

![](/files/-M_LaqHZrmeDQNDRrV3o)

These are the documentation pages for Castmill. Here you will find all the information necessary for running your own digital signage network. From one to thousands of displays, Castmill help you to manage them.

Castmill has a lot of use cases but it boils down to showing any content you want in the screens that you have registered in your network.


# Login into Castmill

Castmill allows you to login using different mechanisms, you can create a custom Castmill account, or if you prefer you can login using your existing Google, Facebook or LinkedIn accounts. Access the castmill app by pointing your browser to <https://app.castmill.com>.

![The login dialog](/files/-M_LD7JgBnbnDMznr8IF)

As soon as you login, you will get to the main dashboard. From this dashboard you have access to everything you need in order to operate your players and program the content that you want to display on them.

![](/files/-M_LDb65uJafBtRqGCNP)

As you can see, the "Players" tab is preselected, and as expected there are no players in the list.

{% hint style="info" %}
In Castmill a Player and a Display are often interchangeable. In reality, a player is usually a piece of hardware connected to a display, but sometimes the display has a built in player.
{% endhint %}


# Registering your first player

If this is the first time you use Castmill, you could start by registering a so called "[Chrome](/players/chrome-browser)" player. This player will help you to get acquainted with the system and to test everything before you register your real production players.

For this to work you need to open the Chrome browser in your PC. If you do not have Chrome please install it from <https://www.google.com/chrome/>

{% hint style="info" %}
Castmill is optimized for the Chrome browser, so it is recommended that you use this browser also for accessing the castmill app.
{% endhint %}

From your chrome browser open a new window and go to the URL <https://player.castmill.io>.&#x20;

The player will load and you will get a **pincode**:

![The castmill player waiting for registration.](/files/-M_LFkTvbHdo8Ak47ppg)

Now you can go back to your "Players" tab in the Castmill app and register this player:

![](/files/-M_LGDbz0TNZxnHAg69U)

If you click on "Register" now the player will be registered and appear in your list of players!.

![](/files/-M_LGVB-Axgrj1_Asbyr)

![](/files/-M_LGfIsC8I-278BJIs8)

The player appears "online" and there is a bunch of other details information about it, but do not worry about this we will explain these controls later on.


# Uploading content

Now that you have a registered player that you control from your account we can start uploading content that we want to display on the player. For this we will need to go to the "Medias" tab, and click on the "Upload Media":

![](/files/-M_LHISawoPQbJL-P0qE)

A modal dialog will open allowing you to choose which files you want to upload:

![](/files/-M_LHpwv63g5nlZ5px-L)

{% hint style="info" %}
Castmill supports most known image, videos, PDFs and audio formats. If you find a media file that is not compatible, please [contact us!](mailto:support@castmill.com)
{% endhint %}

For this simple guide we will upload 1 image:

![](/files/-M_LIj59Va9XC9Th71I7)

As soon as the image is chosen it is uploaded and will appear on the Medias table.

Now we have an Image and a Player, but we need to still create a Playlist before we can show the content on the Player.


# Organizing a playlist

Playlists are the smallest unit that can be played in a Player. The playlist can be composed of one or several Medias as well as Widgets (TODO: ADD LINK), and as such we can mix images, videos and widgets in the same playlist.

Playlists also allows you to define a layout, such as landscape, portrait, and with different sections. You can put any content you want in every section. But for this guide we will just pick the simplest layout which is the Landscape:

![Dialog to select layout and create a new playlist.](/files/-M_LK2zFg7DaSqWV63xX)

By clicking in "New Playlist" we will create our first playlist. And we can now "drag and drop" from the medias that we uploaded before:

![](/files/-M_LKVAXy8TdPfIEYM_Q)

We can just pick the previous image:

![](/files/-M_LKc0q54uQ9j79T3GW)

Now the playlist is composed of one the image we uploaded before. By default the images will be displayed during 30 seconds, and thus this playlist will be 30 seconds long since there is only one image:

![](/files/-M_LKwbR8V_6INsGQd6l)

Now we have everything we need in order to show content on our player, we just need to use the Calendar!.


# Using the calendar

In Castmill you need to use a calendar in order to decide when a given piece of content is going to be displayed. Calendars are very powerful with many options but in this guide we will use the simplest possible option which is setting a "default playlist".

In order for a player to reproduce any content it must have at least one Calendar attached to it. All new players are by default attached to one unique calendar. The easiest way go to this calendar is by going to the Players tab, select the desired player and then click on "View" for the Main calendar:

![](/files/-M_LS3Ax29tvH41S71TH)

By clicking on "View" it will open the Calendar attached to this Player:

![](/files/-M_LSnyGKn2AtpshH1q3)

As mentioned, the Calendar has many options, but the simplest we can use is to set a given Playlist as "Default". A default playlist will play when there is nothing else to play.

So lets click on the "Default" checkbox:

![](/files/-M_LTLmxCYtfCJbslblB)

Now if we check our Chrome player, it will be display the image.

![](/files/-M_LTsDOC9Exp8pwwpUG)

It has been a lot of steps to get us here. But hopefully you have also learnt how you can now create much more complex scenarios. In the rest of this documentation you can find a lot more information so that you can maximize what you can get out from Castmill. And if you need more help, please do not hesitate to [contact us!](mailto:support@castmill.com)


# FAQ

## Can I become who I want to be?

That's a tough question but thankfully, our team is on it. Please bear with us while we're investigating.

## Have you had a chance to answer the previous question?

Yes, after a few months we finally found the answer. Sadly, Mike is on vacations right now so I'm afraid we are not able to provide the answer at this point.


# Support

At Castmill we are committed to provide you a high quality and responsive support. We provide several means for contact us when you need help:

* The Chat bubble. There is a chat bubble in <https://castmill.com> that you can use at anytime to contact us. Even if there is not an online representative at the time of contact rest assure we will get back to you ASAP.
* The left side support button. Just click on this button to ask for support and we will provide you with the assistance you need.
* Mail us at <support@castmill.com>


# Medias

Castmill support most media types out there for images, videos, pdfs and audio files. All medias are handled in the Medias tab, where you can upload, preview and organize them.

{% hint style="info" %}
If you find a media file that is not compatible with Castmill, please [contact us](/getting-started/support) since we are always adding new formats by request.
{% endhint %}

The first time you enter Castmill it will appear empty until you start uploading content:

![The medias page](/files/-M_PfFFFfB9mzEvS0bWp)

Just click on "Update Medias" to upload the content you want. A dialog will open and you can choose as many media files as you want in one go:

![](/files/-M_Q-Udp-niBR8qL-xaC)

![](/files/-M_Q-9ZBMncaZOkrKkZj)

Click OK and now you can see the list of files ready to upload:

![](/files/-M_Q-g8ZhHQbkwCHwGlI)

The files will upload as soon as you click the "Upload" button:

![](/files/-M_Q-t8e3D1eKJ3MG9a-)


# Organizing content

When you upload new content, all the files will appear as a list under "All". Although you can use the search field to find your media items:

![](/files/-M_Q1wsqrOe-dgna5n0H)

It is however often useful to organize the content so that it is easier to find. For this we can use the "Customer" and "Campaign" fields. Writing any text in this fields will automatically organize your content.

![](/files/-M_Q0B8TkCbeP64u3KB6)

Lets change the Customer to "drugstore" for example:

![](/files/-M_Q0nEjKTaw1DXFt92y)

We may want to also specify a "Campaign" name for this item:

![](/files/-M_Q10m_KxoiMYmjy0_i)

However in this case nothing happens, that is because we only have 1 item with that particular campaign. We need at least 2 items for a folder to appear. Lets try it:

![](/files/-M_Q1aTPYAT0KmFaaPo5)

A you can see we can use these two simple fields to unclutter long lists of media files.


# Playlists

Playlists are the minimal playing unit in Castmill. For any content that you want to display, you need to use a playlist. A playlist can be as simple as just one media item, or as complex as a layout with several sections with many items per section.

{% hint style="info" %}
Remember that playlists needs to be programmed in a Calendar so that the player knows when to play them.
{% endhint %}

![](/files/-M_Uq-MGVXwdrxGAr7eQ)

You create new playlists by clickin on the "New Playlist" button. A dialog will popup and you will be allowed to choose the layout for your playlist. You can read more about layouts [here](/content/playlists/layouts).

![](/files/-M_Uq7WeII6xOb7lZ2GA)

For a simple layout such as landscape or portrait, the playlist will have just 1 section. So you can just drag and drop your medias from the Object selection component and rearrange them as you need.

#### Duration

When a media object is added to a Playlist, it gets a duration that depends on the kind of object it is. If it is a video it will be the video's duration, if it is an image or a widget it will have 30 seconds duration by default. However you can easily change the duration of the item by clicking on the duration and sliding the time:

![](/files/-M_VPYvzJiUAbyJRVZaw)

#### Rearrange items

Once the items are in the playlist you can still rearrange them in a different order by just dragging and dropping the items inside the playlist:

![](/files/-M_VR9YDcwiTGMcaruiB)

#### Preview

You can always preview the playlist by using the playlist controls which are similar to a video player. If you want to move the time to a given playlist item just click on the item and the player will move the time to the start of that given item.

####


# Transitions

There are currently 2 possible transitions between items in a playlist. The Soft transition, which creates a soft random transition, such as a crossfade between the items, and a left swipe, where the old item "swiped" to the left side.

![](/files/-M_VS0_pTXTG_Bnfu6Io)


# Autozoom

The autozoom function zooms the images so that the fill upp the entire screen even if their aspect ratio is different from the display.

For example, if the image has a wider aspect ratio than the screen (usually 16:9), it will add two black bars on top and bottom to preserve the original image ratio:

![](/files/-M_VSQyPPHFT5LF4pVB4)

However in some cases it is better to enable the autozoom so that the images cover the entire screen, even if that implies cutting some sides of the screen:

![](/files/-M_VSfQbvO4yI1_fqyvI)


# Layouts

It is possible to select between several layouts so that you can show more content on a display, specially if the display is large you can use this feature to show more items at the same time.

When creating a new playlist select the layout you prefer, for example you can choose the one that divides a display in 6 sections:

![](/files/-M_VSvdflm-Mnp90nEcN)

Since your layout has more than one section, you have actually in total 6 playlists, one for every section.

You can choose in which section you want to put your items by selecting the section from the dropdown control:

![](/files/-M_VTG_tO97i1kyf2mrb)

Adding items in one section will appear in the correct section on the preview:

![](/files/-M_VTUl6Paa4xZz4tYp3)

You can add as many items you want on every section since each is also a playlist, and so on:

![](/files/-M_VTndbwDH-xMw1JSE_)

![](/files/-M_VYd2LfkvCKEGrf5_1)

{% hint style="info" %}
Keep in mind that hardware may have limits on how many videos that can be played at the same time.
{% endhint %}

Layouts are also important to consider if you want to show content on a portrait display (default is landscape). By selecting the portrait layout you can preview how the end result will look like on the display.

![](/files/-M_VUeINLnxu9fwab4RH)


# Calendars

Calendars are powerful components that allows you to program when to display a given playlist. Calendars are accessed in the Calendars tab:

![](/files/-M_VUzlrgVoYhFbSvQVv)

You can add new calendars, however one is always created by default for every player that you register. of course you can use the same calendar for many players if that is what you want.

The calendar shows you the current week. And at the left side all the playlists that are available for using in your calendar.

![](/files/-M_VVPg3tB_RX7qrTIHe)


# Default playlist

Initially a calendar is empty, and you may want to add playlists to specific times of the day. However in order to always have something playing for the times when you do not have any other content playing, you can specify a "default" playlist. Just clicking on the default playlist will mark is as default:

![](/files/-M_VW2TxCs1MkhzCf0mG)

![](/files/-M_VYym3WZfwYt5-OAEe)

The default playlist will start playing immediately:

![](/files/-M_VZ8ZFy12QyLPdDYVk)


# Entries

You can add as many calendar entries as you wish. These entries allows you to specify when a given content is going to be displayed with a minimum granularity of 30 minutes.

Just drag and drop the playlist that you want to play during a specified time:

![](/files/-M_V_4iTbXpfeIid8cRC)

By default the entry will play for 2 hours, however you can easily change the length by dragging on the top or bottom borders:

![](/files/-M_VgKMP9w8McIjhW4M3)

It is also possible to expand the sides of the entry so that you can choose to play the same content several days in the week:

![](/files/-M_VhXHkhVemW07xpGYS)

#### Repeat weekly

It is also common to need to play the same entry every week. In this case you can just click on the checkbox "Repeat weekly" and the entry will play every week, note the change to the orange color:

![Play "My Playlist" between 1200-13:00, Tue, Wed and Fri every week.](/files/-M_VhynJYuU5VOKe7-8S)


# Events

It is also possible to program Events so that a given playlist is played when a certain criteria is met.&#x20;

Access the Events modal dialog by clicking on the "Events" buttons:

![](/files/-M_VjNoOGGq-B9ONiHnT)

Add new events by clicking on the New Event button:

![](/files/-M_VjmHMpBEC9ypE13DG)

When you create a new event you will get a lot of controls to define when the event should trigger:

![](/files/-M_VkxFv683DgehPjoFL)

You can choose from which time the event is allowed to trigger:

![](/files/-M_VlD4pt9h3aR8-1qyR)

If you also want that the event stops triggering after a certain date you can check the "Expires" checkbox and select a time in the future:

![](/files/-M_VlR3CUhhZhOLq9jyH)

You can also select how often you want the content to be played, Once a day, every hour, or a subset of hours:

![](/files/-M_W0j5bFSVEEruYCbRN)

It is also possible to choose which days of the week the content should be played:

![](/files/-M_W0vvD2wyE84IExHoU)

{% hint style="info" %}
By default no day is selected, but this implies that it will be trigger the event all days.
{% endhint %}

#### Immediate

There is a setting called "Immediate" that is used to specify if when the event triggers it should immediately play the content or if it should wait until the current playlist plays to the end:

![](/files/-M_W1QklivpOHh2UKRnG)

#### Choosing content

You must also choose which content you want to play when the event is triggered, you can chose a given media file or a complete playlist.&#x20;

#### Activate the event

Finally, in order for the event to start working you need to click on the "active" checkbox:

![](/files/-M_W28kea9aJOqA7SHWo)


# Secondary calendar

A player can have up to 2 calendars associated to it. We call them "primary" and "secondary" calendars. It is common to only have one calender, however there are some use cases where it is useful to have a secondary calendar.

The secondary calendar is specified in the Player tab, on the details view:

![](/files/-M_W2aTSxyOJBJ0MK6cG)

When a second calendar is specified, the player will now interleave the content of both calendars. So when the first calendar plays a playlist to the end, the next playlist will be picked from the second calendar.

This is useful if for example your players belong to a big network where the HQ wants to push certain content to all the players in the network, but were every local shop wants to show their own content.&#x20;

The HQ can provide with the secondary calendar that all players are required to use, and so their content will be interleaved with the local shop calendar.


# Sharing

Castmill offers powerful sharing tools. You can access them in the "Share" tab:

![](/files/-M_W8CAo9z_60ks8Uee_)

Sharing is organized around the concept of "groups": create groups where you can put resources and which users that are allowed to see or use these resources.

Start by creating a new group by giving it a name and clicking on Add Group:

![](/files/-M_W8b2D0Z9yq43YvAjC)

Now you can add some members to the group. These member will be able to access the resources that you share inside the group. Start typing the name or email of the user you want to add, and when you find it just click on the "Add Member" button:

![](/files/-M_WIP8S1WASsBOmA7dP)

You can add as many members as you want up to a maximum quota that depends on your current subscription.

You can now add the resources that you want to share within the members of the group. Click on Add Resources:

![](/files/-M_WJyselDyUuMr2GoOL)

You can share Medias, Playlists, Calendars and Players. Depending on the resource type different rights can be chosen. For example you may only allow the members of a group to view the media but not delete it.

Select the resources and click on "Add resource":

![](/files/-M_WKPMeAJiPtPotdxq4)

Players have special rights for allowing the users to Assign only the "extra calendar", this allows for headquarters to only permit store owners to modify the extra calendar, while the main calendar is reserved for the HQ for generic content among all the stores:

![](/files/-M_WKtjxDemY31ZejuC-)

When you are done adding resources your group will show them on the group:&#x20;

![](/files/-M_WLA391YJeUpAoxnsr)

At any moment you can remove resources from the group or add new ones.

Now that you have created a group, the users members of that group will see the resources in their account.


# Widgets

Besides uploading content, Castmill also supports Widgets with special functionality. We are adding custom made widgets to our customers, so if you want something in particular please [contact us](mailto:support@castmill.com)!

The widgets are available in the "Choose object" component in the Playlists tab:

![](/files/-M_Wl1qo5C9RlEaKRv3J)

Just drag and drop the widgets as you would do with any other media:

![Adding a weather widget](/files/-M_WlxqbEB_gllm-_ULG)


# Quotas

All resources in Castmill are subject to quotas. The quotas are usually visible close to the "Add" or "New" buttons. For example in the Medias tab:

![Used 9 of maximum 50](/files/-M_WmXY0YdOH2NfrNEQ_)

When the usage has reached the maximum you get a warning:

![](/files/-M_WmlIcUVWHSXdikORa)

You can upgrade your subscription at anytime in order to increase your quotas.


# Managing players

In the Player tab you get a complete view of all the players that you control. For every player there are several settings and tools that you may find handy during the lifetime of the players.

For learning how to register new players you can read ["Registering your first player"](/getting-started/navigating-around).

When a player is registered you can always see if the player is online or offline:

![Online player](/files/-M_WnQNjPdEOZdL8MLGa)

{% hint style="info" %}
If a player goes offline it does not mean it has stopped playing content, it may just be a temporal internet issue.
{% endhint %}


# Details

The details view gives you an overall view of your player, and some basic controls.

![](/files/-M_WoNRbl0mq-QfQn7w5)

From this view you can control things like the orientation of the player (Landscape or Portrait), volume, assign a main or an extra calendar and update the players address.

You can also enable or disable the Castmill logo:

![](/files/-M_Wp72LpZhJWkYLNGum)


# Preview

The preview tab gives you a real time preview of what the player should currently be reproducing.

![](/files/-M_WpUM4XKkloQr7FsaW)

You can also use the code snipped in the bottom if you would like to embed your player in a webpage.


# Troubleshooting

In this tab you get some controls that are useful to resolve some problems that could occur with your players.

![](/files/-M_Wprn0Cm-TjO_THpQs)

#### Refresh Player

This command will perform a refresh of the player so that it reloads the content and restarts playing it.

#### Clear Cache

This command clears the players internal cache so that it will need to reload the content again.

#### Restart App

This command completely closes the player app (only available in some devices), and starts it again.

#### Reboot device

Reboots the device completely by shutting it down and starting it again (only available on some devices).

#### Look for Updates

Checks if new versions of the player are available and updates the player with the latest version if so.

#### Report Player

Sends a error report to the Castmill team so that we can look into any issue or problem the player may be having and give you assistance.


# Chrome browser

![](/files/-M_Zjpuqk9ypfzpbBk91)

A standard Chrome browser can be used as a Castmill player, just point the browser to <https://player.castmill.io> and register the player in the Players tab.

This browser is not meant to be used for production since it lacks important features available in the other devices, such as ability to automatically start when the device powers on or automatically restart in case of errors and crashes.

However this player is handy to quickly test stuff in your computer, you can register the player and use it to test your playlists and content.


# ElectronJS Player

The [ElectronJS](https://www.electronjs.org/) player is a generic player that can be used on many different devices, but works particularly well on linux based devices.


# Intel NUC

![](/files/-McnuaS4a0MGs-TC_RxZ)

Intel NUC provides a very nice hardware that together with castmilll results in a robust, maintainance free device that can run un-attended 24/7 for years.

The following guide is based on Arch-Linux (<https://archlinux.org/>) but certainly other linux distributions will work as well. We provide an install script that makes all the necesary steps to convert your device into a Castmill player.

### Requirements

* You will need a Intel NUC device with at least 4Gb ram and 256Gb HDD.&#x20;
* A USB drive with at least 4Gb space (note, its contents will be destroyed).
* A PC or Mac

### Prepare a USB

First we need to prepare the USB drive with the Arch linux install image. You can grabb it from [here](https://mirror.rackspace.com/archlinux/iso/latest/). Download a file like ***archlinux-YYYY.MM.DD-x86\_64.iso***

Then you need a tool to "flash" the image in the USB drive, for this we recommend the free tool "balena etcher" that works in both Windows, Mac and Linux systems, you can get your copy here: <https://www.balena.io/etcher/>

Just select the .iso image dowloaded before, the USB drive as target and let it perform the flashing.

![](/files/-Mco22dotFUXzu_aOQV8)

### Prepare the Intel NUC

Preparing the NUC requires 2 steps: activate auto-start on power on and install archlinux. First make sure you have your Intel NUC connected to an ethernet cable providing internet access, as well as a screen and keyboard attached to it.

#### Enable auto power on

By default the Intel NUC will not start automatically if the power goes off and on again, this is very important for un-attended operation, so that in cases where the device is shut down due to electricity shortage it will start up again automatically.

Be prepared to press F2 when the device starts so that you can get into the Bios, if you miss to press F2 in time just turn off and turn on again. The BIOS menu will appear. If you still have problems to access the BIOS please check this guide: [Can't Access BIOS Setup with F2 Key for Intel® NUC](https://www.intel.com/content/www/us/en/support/articles/000005847/intel-nuc.html)

#### Disable secure boot

It is possible that your Intel NUC has secure boot activated, in this case you will get an error when trying to boot from the USB device. To avoid this problem just disable the secure boot on the bios:

<https://www.intel.com/content/www/us/en/support/articles/000038401/intel-nuc/intel-nuc-kits.html>

#### Install Arch Linux

Insert the newly flashed USB drive in any of the USB slots in the Intel NUC and turn it on. The Device will start and a menu will appear, choose the first option: "**Arch Linux install medium (x86\_64, UEFI)**".

The device will boot and a prompt will be displayed. If you have connected the Intel NUC to an ethernet cable, then you can just jump to the next step, otherwise, you can configure the WiFi connection using the command line tool \`\`\`iwctl\`\`\`:

```
# iwctl
[iwd]# station connect wlan0 myWifiRouter
Type the network passphrase for myWifiAccessPoint psk
Passphrase: ***********
```

You can then verify that it is connected to the access point:

```
[iwd]# station wlan0 show
                          Station wlan0
----------------------------------------------------
Settable Property          Value
----------------------------------------------------
         Scanning          no
         State.            connecting
         Connected Network myWifiAccessPoint
```

#### Run the installation script

Now run the script that will perform all the installation semi-automatically (you will need to provide a password and press 'y' a couple of times):

```
# bash <(curl -s scripts.castmill.io/arch-setup.sh)
```

Your keyboard may not be US standard, one option is using this sheet in order to find the proper symbols:

![US Standard keyboard](/files/wiPR5I3jJSKBl1a9KYcB)

The script will run directly and starts by asking you for a network name for your player, this is just a human readable name to indentify the player in the local network, such as when you check in your router list of connected devices, you can call it something like "castmill-player-1", these naming can be of importace when you have many devices and you wish to connect to them via SSH for low level maintainance.

Next it will ask you for a password, this password is required in order to login into the device via SSH for maintenance, make sure this password is kept secret, and it will be asked later on during the installation step of the script, so keep it handy.

The script will continue running and will ask you a couple of times if you want to proceed, write "y" (yes).

It will take a couple of minutes before it completes.

When the script completes succesfully without errors just type "reboot" and the device will restart automatically.&#x20;

{% hint style="info" %}
If you get any errors at this stage please contact us at <support@castmill.com> with all the information available and we will help you promptly to resolve the issue.
{% endhint %}

You can now remove the the USB drive and the device will show an image like this:

If you have a mouse you can click and a menu will open with some useful functions, for example to configure the Wifi settings.

{% hint style="info" %}
Although Wifi is a fine solution, we always recommend to use a wired Ethernet connection when possible to increase stability.
{% endhint %}

Now you can just proceed to register this player in Castmill as with any other player, please see [Registering your first player](/getting-started/navigating-around).


# Raspberry PI

![](/files/-McoH24zy2pwKSXDrkHc)

The Raspberry PI is a low cost device that can run Castmill perfectly. You can run it on all versions of RPI but the newest devices will able to play content more smoothly and allow for more videos to play simultaneously, so we recommend you to use the RPI 4 model B, but anything from RPI3 and above will work just fine.

### Requirements

You will need a RPI running the latest version of Raspberry Pi OS, and having it up-to-date connected to a display with keyboard and a mouse. If you need help installing Raspberry Pi OS just follow the instructions for *"Raspberry Pi OS with desktop"*  here: <https://www.raspberrypi.org/software/operating-systems/#raspberry-pi-os-32-bit>.

{% hint style="info" %}
If you find problems installing Raspberry PI OS or the castmilll player, do not hesitate to contact us at <support@castmill.com>
{% endhint %}

### Installing Castmill

Open the RPI browser and download the player from this url: <https://update.castmill.io/castmill-player-1.0.0-armv7l.AppImage>

When the file is downloaded go to downloads using the file explorer:

![](/files/-McoO8pJKhzTjHxvToI9)

Right click on the file and choose properties:

![](/files/-McoOvjSR48q9LUT54Cy)

Choose the Execute Anyone on permissions:

![](/files/-McoPVatmr7oMz_XrBJH)

Now you can double click on the file and click on "Execute":

![](/files/-McoPCXz0pDrBZ6oxcGF)

The player will now start and you will get a pincode so that you can register the player (you can read the instructions here [Registering your first player](/getting-started/navigating-around).

![](/files/-McoTq0lB1HX5vSDciKG)

Finally you should enable the Autostart feature in the player so that it starts automatically when your RPI device powers on:

![](/files/-McoTw3NiEKz96cxUjnB)


# LG WebOS

LG digital signage displays requires no external player hardware. Just install CastmillPlayer and connect it to power and internet and you're good to go.

![](/files/-MaggmuPiNf7ZhLYrMCX)

LG has a wide range of signage displays suitable for demanding applications such as outdoor displays, high brightness window facing displays etc. For more information about available hardware see:

<https://www.lg.com/global/business/standard-digital-signage>&#x20;

<https://www.lg.com/global/business/high-brightness-digital-signage>

## Requirements

Castmill player for LG WebOS should run on any LG signage series hardware running WebOS 3.0 or higher.

## Installation

To install CastmillPlayer for LG WebOS follow these steps:

### Prerequisites

1. Power on your LG WebOS display
2. Go through the basic configuration (selecting language, country, time zone etc.)
3. Make sure the device has internet access

{% hint style="info" %}
Although wifi usually works well, we always recommend a wired ethernet connection when possible.
{% endhint %}

### Installing Castmill Player

In order to install Castmill Player on an LG WebOS display, you have to configure where the app should be downloaded from in the server setting menu. The steps for doing this are slightly different, depending on which version of WebOS your device is running. Follow the instructions below, matching your device's version.

{% hint style="info" %}
To simplify the installation process, we provide a configuration file with all the server settings. Copy this file to an empty USB flash drive, plug it into one of the free USB ports of you LG display and reboot.

You can then install Castmill Player as described below but with all the settings already made for you.&#x20;
{% endhint %}

{% file src="/files/pHZgqPvbkTwVnt5ePoUp" %}
Configuration file for automatic server settings (optional)
{% endfile %}

#### WebOS 3.0

1. Hold the **Settings** (⚙) button on your LG remote for at least five seconds until a chat bubble appears in the top right corner
2. Press **8 0 8 0** and then **OK** the remote control to access the Server Settings menu
3. In the Server Settings menu, set *Application Launch Mode* to **Local**
4. Set *Fully Qualified Domain Name* to **<https://update.castmill.io/webos/player.ipk>**
5. Set *application type* to **IPK**
6. Set *Local Application Upgrade* to **Remote**
7. Select **Confirm** to download the app
8. When the download is complete, reboot your device. Castmill Player should now start automatically.

#### WebOS 3.2 and later

1. Press **Setup** on your LG remote control
2. Select **EZ Settings**
3. Select **SI Server Settings**
4. Set *Application Launch Mode* to **Local**
5. Set *application type* to **IPK**
6. Turn on *Fully Qualified Domain Name* and set it to **<https://update.castmill.io/webos/player.ipk>**
7. Set *Local Application Upgrade* to **Remote**
8. Select **Confirm** to download the app
9. When the download is complete, reboot your device. Castmill Player should now start automatically.

### Registering your new player

In order to control what is shown on your display you have to register it to your Castmill account.

1. Make sure your LG display is on and connected to the internet. It should display the Castmill welcome screen with a pin code  \
   &#x20;<img src="/files/-MagyK3a9q4MjdKDRRVk" alt="" data-size="original">&#x20;
2. Follow the steps for registering your new player as described here:[Registering your first player](/getting-started/navigating-around)

## Verified hardware

We have verified that Castmill Player works on the LG hardware listed below.

{% hint style="info" %}
If you have additions to this list please contact us at <support@castmill.com>
{% endhint %}

* 43SM3C-BF
* 49LS75C-MH
* 49UH7F-BJ
* 49XS2D-BH
* 49XS2E-BH
* 49XS4F-BH
* 55XS2E-BH
* 55XS4F
* 55XS4F-BH
* 65UH7F-BJ
* 75XS2E-BH


# Android

There is a plethora of Android devices available ranging from tablets to HDMI-dongles to professional signage displays with built-in Android hardware.

![](/files/4gN9gQz20Zm0jRKU6C63)

{% hint style="warning" %}
Some Android hardware may require specific adaptations of our player software. Contact us at <support@castmill.com> if you want to use Android.
{% endhint %}

### Installing Castmill for Android

1. Download and install the latest CastmillPlayer app from <https://update.castmill.io/CastmillPlayer-3002008.apk>
2. Start the app CastmillPlayer. The first time CastmillPlayer starts it will ask you if you want to enable autostart, which makes the player start automatically when the device is switched on.

### Registering your new player

In order to control what is shown on your display you have to register it to your Castmill account.

1. Make sure your Android display is on and connected to the internet. It should show the Castmill welcome screen with a pin code  \
   &#x20;<img src="/files/-MagyK3a9q4MjdKDRRVk" alt="" data-size="original">&#x20;
2. Follow the steps for registering your new player as described here:[Registering your first player](/getting-started/navigating-around)


# Clearing the player's data

In rare situations the player may get a corrupted data, this could happen in unexpected power loss situations or due to wear out of the player internal flash memory.

Symptoms of this issue could be that the player is unable to connect to the internet, or content is not displayed correctly or gets frozen.

A short term solution may be to delete the player data, this will just clean up all the cached data inside the player as a software reset. After restart your player will automatically re-connect to Castmill and appear online.

Start by going to the Android settings clicking on the Settings icon:

![](/files/-MezcS4x0NqftVjY5e8O)

The settings view will open, look for the "Apps" option and click on it:

![](/files/-MezcnNfT8Q1UTwsO4Fg)

Choose the CastmillPlayer App and click on it:

![](/files/-Mezcy8yZ3zKifdsdagn)

Now if the Castmill Player is running you should force it to stop:

![](/files/-MezdKtbq7GUoJOoZWud)

Now you can clear the data:

![](/files/-MezdSlD1iu8HK8cUc1P)

You will get a warning, just click OK:

![](/files/-MezddDowFnv--HBDovg)

After this you can just exit the Settings and start the Castmill Player by clicking on its icon:

![](/files/-Mezdw2IE78FwOd2D_6B)

The player should be start and if the device has working internet connection it will start running your previous content automatically.


# Retailer displays


# Real-estate storefronts


# Office screens


