Print this page

3.Configure Falcon Player to be Internet control capable

Falcon Player's purpose is to play shows created in xLights, controlling your lights.  These shows are saved as .fseq (sequence) files in xLights, then copied to Falcon Player on the Raspberry Pi.  Falcon Player is very flexible in playing back shows, you can combine multiple shows/fseq files into a "playlist" that plays one show after another, for more complex animations.

The idea is to allow people living in your neighborhood to watch your regular, fancy show, but allow the show to be temporarily interrupted by people on the Internet who want to control your lights.  When the Internet people have finished, your regular show starts again. 

My regular show is 8-1/2 minutes long.  For Internet control, I make a series of small shows, only 30 seconds long.  When someone from the Internet selects one of these mini shows, my regular show stops and the chosen mini show plays for 30 seconds.  When the mini show is finished, the regular show starts again.  Thus Internet people only have temporary control of your lights; when there is no one controlling them, your regular show plays for the people in your neighborhood as usual.  This is accomplished by setting up playlists in Falcon Player.

 

Uploading show/sequence files to Falcon Player

Falcon Player makes it easy to upload the show files that you created in xLights from your home computer to the Raspberry Pi.  You'll need to upload your regular/fancy show file (that your neighbors see) as well as the shorter "mini show" files (that Internet control people will see) to Falcon Player.  These show files are saved in the xLight's "show" directory.  Pressing [F9] in xLights will indicate where your show directory exists, but you will need to close xLights then open this folder with your operating system to reveal all of the .fseq files you have created.

In the Falcon Player menu, choose "Content Setup > File Manager", then click the Sequences tab.  The "Sequence Files" section should be empty as you haven't uploaded any sequence files yet.  Click the blue [Select Files] button, then browse your computer to the xLights show folder where your sequence (fseq) files are located.  When you select your fseq file from a show and then click [Open], the file is immediately uploaded to Falcon Player on the RPi.  Repeat these steps to upload your regular show file and all of your mini show fseq files.  The Sequence Files section should fill-up with all of the fseq files that you uploaded.

 

Creating playlists from the show/sequence files

Now that your show/sequence files are copied to Falcon Player, the next step is creating playlists that control how these shows are played.  The goal is that the regular/fancy show is in a playlist to itself.  This is what plays continuously until someone from the Internet requests control of your lights.  When this happens, a different playlist is started.  This other playlist will play a "mini show" for 30 seconds, then start playing the regular/fancy show again.  After the Internet control is finished, Falcon Player will continue playing the regular/fancy show for the neighborhood to enjoy.

To create the regular/fancy playlist:

  1. Click the Content Setup > Playlists menu in Falcon Player.  In the New Playlist field, enter a name (I chose to call my regular playlist the word "on", it's not a very good name), then click the [Add] button.  

  2. Scroll to the bottom of the window to the Playlist Details section.

  3. For the Type field, choose "Sequence Only".

  4. For the Sequence field, choose your regular/fancy show/fseq file from the drop-down list, then click the [Add] button.

  5. Click the [Save] button to save the playlist.

Next, create playlists for each of your "mini shows" that Internet visitors can control.  The process a little different than creating the regular/fancy playlist, so follow these steps instead:

  1. Click the Content Setup > Playlists menu in Falcon Player.  In the New Playlist field, enter a name (I chose to call my regular playlist the word "on", it's not a very good name), then click the [Add] button.  

  2. Scroll to the bottom of the window to the Playlist Details section.

  3. For the Type field, choose "Sequence Only".

  4. For the Sequence field, choose the mini show fseq file from the drop-down list, then click the [Add] button.

  5. Repeat Step 4, but choose your regular/fancy show/fseq file from the drop-down list, then click the [Add] button.

  6. In the list at the bottom of the Playlist Details section, you should see two shows: the regular/fancy show and the mini show.

  7. Place a checkmark in the "Play first entry only once" checkbox.

  8. Click the [Save] button to save the playlist.

Now repeat the above steps for additional mini shows that you wish Internet visitors to control.

 

Securing Falcon Player from Internet hackers

As of version 1.8 of Falcon Player, it was not designed to made open to the world for Internet users to control it.  The original intention of Falcon Player was for the home owner to play shows using a low-cost, low-power computer and an easy-to-use web interface, all from your home network.  That being said it, it is possible to add a small amount of security to make it work safely from the Internet.  It is a far cry from being totally secure, but the steps below work well enough.  If you leave your Raspberry Pi with Falcon Player powered on for only the holiday season, the security is good enough.  But don't leave Falcon Player running and connected to the Internet 365 days a year, otherwise it could get hacked and damaged.

 

Set password for Falcon Player web interface

  1. Under the "Status/Control > Set UI Password" menu in Falcon Player, Click the "Enabled" field.

  2. Specify a password in the "Password" and "Confirm password" fields.  Try to make the password difficult to figure out.  For instance, do not use real words or names, add numbers and special characters, etc.

  3. Click the [Submit] button to save the password.

Once the password is saved and enabled, you will be required to enter the login name of "admin" and your password to access the Falcon Player web interface.  Write down this password and don't lose it!

Note: If you change this password in the future, it will erase modifications made to the .htaccess file in the "Configure Falcon Player to receive commands from the Internet" instructions below.  So whenever you change this password, be sure to fix the .htaccess file as well!

 

Set password for Raspberry Pi operating system

This step prevents hackers from bypassing Falcon Player and attempting to login to your Raspberry Pi directly.  If hackers can login with the "fpp" account, they can damage files on your Raspberry Pi!

  1. In the Falcon Player web interface, choose "Help > SSH Shell" from the menu.ke that, choose the Advanced link, then the "Proceed to..." link.

  2. When the "FPP login:" prompt is displayed, enter "fpp" then press [Enter].

  3. When the "Password: prompt is displayed, enter "falcon".  
    1. Note: If this password does not work, try the Falcon Player web interface password that you set in the instructions above.

  4. If the working password was  "falcon", change it to another password by typing the following command and press [Enter]:
    1. sudo passwd fpp
    2. When prompted, enter a new password twice (you can use the same password as the Falcon Player web interface, if you like).

  5. Type "exit" and press [Enter] to exit the SSH Shell.

 

Disable "root" login for Raspberry Pi operating system

This step also prevents hackers from bypassing Falcon Player and attempting to login to your Raspberry Pi directly.  If hackers can login with the "root" account, they can have complete access of everything on your Raspberry Pi!  Do the following steps: 

  1. In the Falcon Player web interface, choose "Help > SSH Shell" from the menu.
  2. If your web browser shows a message that "Your connection is not private" or something like that, choose the Advanced link, then the "Proceed to..." link.

  3. When the "FPP login:" prompt is displayed, enter "fpp" then press [Enter].

  4. When the "Password: prompt is displayed, enter the password that you defined in the instructions above.

  5. Enter the following command and press [Enter]:
    1. sudo nano /etc/ssh/sshd_config
    2. A screen full of text will appear.  
    3. About 27 lines down is a line that begins with "PermitRootLogin".  If the word after it is "yes", change it to "no".
    4. Press [Ctrl-O] (the letter "o") to save your changes.
    5. Press [Ctrl-X] to exit the text editor.

  6. Type "exit" and press [Enter] to exit the SSH Shell.

 

Backing up Falcon Player settings

There is a lot of settings you have made to Falcon Player at this point.  It is possible to save Falcon Player's configuration to a backup file.  This way, if the settings are damaged or accidentally changed, they can be restored from the backup.  Here is how you do it:

  1. In the Falcon Player menu, choose Choose Status/Control > FPP Backup.
  2. Remove the checkmark from "Protect sensitive data".
  3. Click the [Download configuration] button.
  4. In a moment, a file will download to your computer containing most of Falcon Player's setting.  Store this file in a safe place.

    Note that the json file does not restore the UI login name & password as “admin” and “r00123456fpp” and the SSH name & password is “fpp” and “r00123456fpp”. These need to be set manually after restoring. 

 

Configure Falcon Player to receive commands from the Internet

Normally, setting a password to access the Falcon Player web interface prevents scripts from running without that password.  The following steps are needed so that shows can be played via scripts.  This is necessary for Internet control of your lights.

  1. In the Falcon Player web interface, choose "Help > SSH Shell" from the menu.

  2. If your web browser shows a message that "Your connection is not private" or something like that, choose the Advanced link, then the "Proceed to..." link.

  3. When the "FPP login:" prompt is displayed, enter "fpp" then press [Enter].

  4. When the "Password: prompt is displayed, enter the password that you defined in the instructions above.

  5. Enter the following command and press [Enter]:
    1. sudo nano /opt/fpp/www/.htaccess

  6. Add the following lines to the bottom of this file:
           <Files "runEventScript.php">
           Allow from all
           Satisfy any
           </Files>

  7. Press [Ctrl-O] (the letter "o") to save your changes.

  8. Press [Ctrl-X] to exit the text editor.

  9. Type "exit" and press [Enter] to exit the SSH Shell.

  10. Reboot Falcon Player by clicking the [Reboot] button at the bottom of the web interface

Last modified on Monday, 29 May 2017 03:24