moritzvieli / rocketshow

A system to automate your backtracks, lighting- and videoshow.
http://www.rocketshow.net
GNU General Public License v3.0
15 stars 2 forks source link

My Rocket Show Startup Guide - comments welcome #77

Closed DavidOpgh closed 2 months ago

DavidOpgh commented 1 year ago

Rocket Show Startup Guide by DavidOpgh Version 1.0.20230307

Installing Rocket Show on a Pi4 isn't difficult but there are some important steps you need to know. I wrote this guide so you could benefit from my efforts and to get you up and running quickly. Note: This is very long and detailed. It might look difficult but it's not, it's just very comprehensive.

Installing Rocket Show on Pi4 (mine is the 4GB version)

Plug all your devices into the Pi4 (see Appendix A for a list of my devices)

Download latest version of Rocket Show and unzip the image to your PC https://rocketshow.net/install/images/latest.php

Download and Install Raspberry Pi Imager (currently Version 1.74) on your PC https://www.raspberrypi.com/software/

Insert microUSB card into your PC I like these microUSB cards, they have a Speed Class of C10, V30, and U3(4). Anything lower than this class are noticeably slower. https://www.amazon.com/SanDisk-Extreme-microSDHC-UHS-3-SDSQXAF-032G-GN6MA/dp/B06XWMQ81P

Run Raspberry Pi Imager Click "Choose OS" button Scroll to the bottom and select the "Use custom" option Navigate to the location on your PC where you unzipped the Rocket Show image file and select it.

Click "Choose Storage" button. Select your microUSB card

This next step is not absolutely necessary if you're planning to have a usb keyboard connected to the Pi 4 to directly access the command prompt. However I highly recommend enabling SSH to allow remote access from the laptop. Because as you will soon see you will most likely need to change some settings. See Appendix B about SSH access Click gear options button on the Raspberry Pi Imager Click checkbox "Enable SSH" Set username as rocketshow Set password as thisrocks Leave all other settings as the defaults Click "Save" button

Click the "Write" button Click "Yes" button to continue. When completed Windows will pop up a windows saying you need to format the USB memory card before using it. Click "Cancel" Raspberry Pi Imager will pop up window saying you can remove the SD card. Click "Continue" Exit Raspberry Pi Imager

Remove the USB card from the PC and insert it into Pi4 Boot Pi4 Console terminal will pop up a message saying Generating SSH Keys Console terminal will pop up a message saying rebooting in 5 seconds Pi4 automatically reboots Console terminal will show some text spelling out the words Rocket Show and the version number. Console terminal screen goes blank. This means Rocket Show has now started. (you can wake up the Console terminal screen with any key press on the connected USB keyboard)

SSH login / If you haven't read Appendix B about SSH login you should do it now. /

Enable/Disable OLA plugins / If you haven't read Appendix B.1 about enable/disable OLA plugins you should do it now. /

At this point you should have enabled / disabled all the needed OLA plugins. If not go to Appendix B.1

Now that you have the correct plugins enabled, reboot the Pi4 for the changes to take effect.

Log in remotely to the Pi4 from your computer using the address rocketshow.local on your browser.

Rocket Show will recognize the first time you've logged into this Pi4 and will ask you for your language. Click Next Rocket Show will ask you to name your new Pi4. Enter a name. Click Finished

Click on the "Settings" tab at the top of the page. Click on the "Audio" tab on the left side of the page. Click on the "Audio device" dropdown and select your audio device. Mine is listed as "USB Audio - USB Audio Device" Rocket Show assigns your audio device a default name of My Audio Bus 1. You can change it if you want. I left it as the default. Click the "Save" button. Rocket Show will pop up a green window saying the settings have been saved. Reboot the Pi4 for the settings to take effect. You can cycle the power or under the Settings.System there is a "Reboot" button. Rocket Show will ask you to confirm Do you really want to reboot. Click "OK"

Once Rocket Show reboots you can log in remotely again using rocketshow.local from your browser. Normally I just refresh the browser.

Confirm the audio and video are working correctly. Go to the Start tab and you will see a composition named "Example composition" selected. Click the Play button at the top. You should hear music and a click track in both stereo channels and a video of clouds (Note: the video stops after 30 seconds but the music keeps playing) You have now confirmed the audio and video are configured correctly

Confirm the USB DMX interface is connected correctly. (this confirms you enabled / disabled the correct OLA plugins) (Using an ENTTEC OPEN DMX USB interface or generic FTDI USB DMX interface) Go to Settings.Lighting and click on the link "Open lighting console" or use the address rocketshow.local:9090/ola.html It will open a new "OLA Admin" tab in the browser. On the left side expand the "Universes" link. It should display a link named "Standard" Click on the Standard link which will show you a page for the Standard Universe including Input and Output ports and the Device name The Output Ports Device name should say "FT232R USB UART with serial number XXXXXXXX" If it says that you have now confirmed OLA sees your FTDI USB DMX interface.

Note: If the Output Ports Device name says something like "StageProfi Device" you forgot to enable/disable the correct plugins.

Verify you can control your DMX fixtures through OLA On the "OLA Admin" browser page there is tab named "DMX Console" Click on the tab and you'll see a simple 16 channel DMX controller with virtual sliders for each of the 16 channels. You can use the arrow keys to move the addresses of the channels in blocks of 16. Connect your DMX fixtures to the DMX USB interface. Set the address of your DMX fixtures within the 16 channel address range. Move the sliders on the page to control your DMX fixtures. The grid of numbers on the page shows the DMX signals being sent on each of the 512 DMX channels. If you can control your DMX fixtures from this page then you have confirmed that Rocket Show can control your lights through OLA

Note: any time you plug or unplug the DMX interface you need to reboot the Pi4 for the change to take effect.

Verify Rocket Show can run video and sound with synchronized lighting presets made in Rocket Show Designer (in 5 parts) I won't go into how the Rocket Show Designer works for DMX lighting. It's too involved for this guide and Moritz created a nice YouTube video showing how it works. https://www.youtube.com/watch?v=zxEBDDMAimM And how to build your own fixture profiles https://www.youtube.com/watch?v=c5n19GrXYfo

The simplest way to verify this function is to build a new composition using the default media included with Rocket Show.

Part 1: Go to the Composition tab and click "Create Composition" I named mine "DesignerTest" Click on "+ Add File" From the popup window click on Media Library. select clouds.mp4 and click "OK" Click on "+ Add File" Select head_smashed_far_away_click.wav (The Audio Bus field should auto populate with "My audio bus 1" which you set up previously. Click OK Click "Save" button. Rocket Show will pop up a green window confirming you have saved the new DesignerTest composition. Go to the Start tab and you should see the new DesignerTest composition. Select the DesignerTest composition, click the play button to verify it plays correctly.

Part 2: Enable Designer live preview You need to enable Designer live preview so you can see your DMX presets respond to your changes. Note: This is not the same as the OLA DMX Console. You need this for Rocket Show Designer to synchronize your lights with the audio.

Go to Settings.Lighting and click the Enable checkbox for Designer live preview. Click the Save button Rocket shows pops up green window verifying you have save the settings. Reboot Pi4 for the changes to take place.

Part 3: Go to the Designer tab to create new presets and scenes. Note: This requires your DMX fixture to be in the list of fixture pool profiles or you have to create your own profile. Click on the Designer tab

Important Note!! Any time you click away from the Designer tab you lose all your work, so make sure you save your Designer Project frequently!

Go under Project dropdown and select New. Save the new Designer project right away. Under Project dropdown select Save As. I named mine DMXTest. Click on "Add new fixtures to the project" to call up the Fixture pool. Select a fixture from the Fixture pool or upload your own profile file by using the "+Create from profile file" button. From the Fixture pool click on the plus sign to load the fixture on the DMX Overview. Move the orange blob that represents the fixture's DMX addresses around the DMX Overview until it overlays with the correct DMX addressing. Click on the Settings tab to change fixture modes (if applicable).

Click OK to go back to the Designer. You should now see your fixture listed in the "Fixtures" box. Create new Presets and Scenes for your DMX fixture. You should see your DMX fixtures respond to the commands. Once finished creating Presets and Scenes I normally save the Designer Project at this point.

Part 4: Link the composition "DesignerTest" to lighting Designer Project "DMXTest" using audio sync. Click on the "Create a composition to synchronize the scenes" In window that pops up, type the first letter of the name you gave the composition earlier in the Name field, in this example it's DesignerTest. (Once you enter the letter D the autocomplete will show you the name DesignerTest for you to select) Leave the Synchronization field as the default "Audio file" Select from the Media Library the file head_smashed_far_away_click.wav and Click OK.

Rocket Show Designer will show the audio file head_smashed_far_away_click.wav on a timeline. Select a Scene from above and with your mouse draw the Scene's start and end points directly on the timeline. With the mouse you can also modify the start/stop times and drag it around the timeline. Repeat until you have drawn all the Scenes in the timeline.

You can now play this composition with the Play button and verify all the Scenes play correctly on the timeline. Note: The audio will play from your remote PC, not the Pi4. When finished save the project using the Project dropdown and selecting Save. Rocket Show pops up a green window confirming the Designer project has been saved. I normally recall the Designer Project just to verify it has been saved.

Part 5: Play the composition to verify the DMX lighting Designer Project "DMXTest" is now synchronized with audio and video Composition "DesignerTest" Go to the Start tab Select the synced composition. In this example it's named "DesignerTest". Click the Play button. The lighting presets should be synced with the audio and video.

You have verified Rocket Show can run video and sound with audio synchronized lighting presets made in Rocket Show Designer.

Setting the Default composition If you want a composition to play any time Rocket Show starts or when you're not playing another composition. Go to Settings.Sytem to the field Default composition. Click in the field box and it will give a dropdown menu of all the compositions you can choose for the Default composition. Choose a composition and click Save Reboot the Pi4 for the changes to take effect.

That's It! That's as far as I got with the features of Rocket Show. Once I figure out any more features I'll update this document.

thanks for reading. I hope it helps you. DavidOpgh

Appendix A: My Gear Raspberry Pi4 4GB Case https://www.amazon.com/Argon-Raspberry-Aluminum-Heatsink-Supports/dp/B07WP8WC3V Power supply https://www.amazon.com/gp/product/B094J8TK61 HDMI Monitor 1 - For playing videos HDMI Monitor 2 - terminal console display Powered USB Hub - not absolutely necessary but I highly recommend it until you know your setup is working I'm using this USB hub https://www.amazon.com/gp/product/B07MQDJLSF Network cable plugged into home or local internet USB audio device - I'm using this https://www.amazon.com/gp/product/B07RV6VBNR USB DMX Interface - I'm using the ENTTEC Open DMX USB https://www.amazon.com/gp/product/B00O9RY664 USB keyboard and mouse - I'm using this https://www.amazon.com/Logitech-Wireless-Keyboard-Mouse-Combo/dp/B07SD98VP7 PC laptop connected to home or local internet with network cable

Appendix B: SSH Access - Enable/Disable OLA plugins

The current configuration of the Open Lighting Architecture (OLA) used by Rocket Show has the required plugins disabled for the most common of DMX USB interfaces. So if you bought a ENTTEC OPEN DMX USB interface (which I consider as the standard) or some other cheap FTDI USB DMX interface like this one https://www.amazon.com/dp/B07D6LNXF9 when you boot up Rocket Show it won't see your USB DMX interface and your DMX lights won't work.

You have to disable 3 OLA plugins and enable 1 plugin for interfaces like these to work. This is required because some plugins conflict with other plugins. You can do this from the USB keyboard but since you're already accessing the Pi4 remotely from a computer it makes sense to use SSH through PowerShell. But if you're using a USB keyboard connected to your Pi4 you can skip down to Appendix B.1 Enable/Disable OLA plugins

On a PC connected with a network cable to the same network as the Pi4 start the Windows app PowerShell At the PowerShell prompt type ssh rocketshow@rocketshow.local

You'll most likely get this message The authenticity of host 'rocketshow.local (2601:549:c100:7440:6a75:b6a9:cb0f:f51d)' can't be established. ECDSA key fingerprint is SHA256:lwp1Feo/UDlGseNhGeYI5vF/NPx2i5RcgFzIGLPGvfo. Are you sure you want to continue connecting (yes/no/[fingerprint])?

reply with yes

you'll get this message rocketshow@rocketshow.local's password:

supply the password with you should have set in the Raspberry Pi Imager as thisrocks

you'll get this message

Linux RocketShow 5.15.84-v7l+ #1613 SMP Thu Jan 5 12:01:26 GMT 2023 armv7l

The programs included with the Debian GNU/Linux system are free software; the exact distribution terms for each program are described in the individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent permitted by applicable law. rocketshow@RocketShow:~$

So now you're logged in and are ready to enable/disable OLA plugins Skip now to Appendix B.1

Troubleshooting SSH Access: If you play around and keep making new images you might encounter this message when you try to enable SSH access

PS C:\Users\Dell i7> ssh rocketshow@rocketshow.local @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: POSSIBLE DNS SPOOFING DETECTED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ The ECDSA host key for rocketshow.local has changed, and the key for the corresponding IP address 2601:549:c100:7440:a4a6:2b92:8c96:a5b6 is unknown. This could either mean that DNS SPOOFING is happening or the IP address for the host and its host key have changed at the same time. @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ @ WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED! @ @@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@ IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY! Someone could be eavesdropping on you right now (man-in-the-middle attack)! It is also possible that a host key has just been changed. The fingerprint for the ECDSA key sent by the remote host is SHA256:UWreSZROqx3PkdHLnn3CSW6Bb3DF/yVD1S+P5m8cnew. Please contact your system administrator. Add correct host key in C:\Users\Dell i7/.ssh/known_hosts to get rid of this message. Offending ECDSA key in C:\Users\Dell i7/.ssh/known_hosts:1 ECDSA host key for rocketshow.local has changed and you have requested strict checking. Host key verification failed.

If you get this message the easist way I found to fix it is to type this command in PowerShell ssh-keygen -R rocketshow.local

then you'll get this response Host rocketshow.local found: line 1 C:\Users\Dell i7/.ssh/known_hosts updated. Original contents retained as C:\Users\Dell i7/.ssh/known_hosts.old

You can go back to the beginning of Appendix B and log in normally.

Appendix B.1 - Enable/Disable OLA plugins

/ If you have a USB keyboard connected to your Pi4 you can enable/disable OLA plugins through the USB keyboard after logging in locally to Rocket Show on the Pi4. /

Here is the command you need to enable/disable OLA plugins ola_plugin_state - Get and set the state of the plugins loaded by olad. SYNOPSIS ola_plugin_state --plugin-id [--state <enable|disable>] DESCRIPTION ola_plugin_state is used to get and set the enabled/disabled state for a plugin and the list of plugins this plugin will conflict with. OPTIONS -h, --help Display the help message -p, --plugin-id Id of the plugin to fetch the state of. -s, --state <enable|disable> State to set a plugin to.

Here are the important plugins and Id's These are the 3 plugin that need disabled. They need to be disabled because they conflict with the plugin we need.

Plugin StageProfi Id=8

Plugin Enttec Open DMX Id=6 (Yes, I know it's surprising that this plugin doesn't work with the ENTTEC OPEN DMX USB interface)

Plugin Serial USB Id=5

To disable these plugins type in these commands ola_plugin_state -p8 -sdisable ola_plugin_state -p6 -sdisable ola_plugin_state -p5 -sdisable

Here is the 1 plugin that needs enabled Plugin FTDI USB DMX Id=13

To enable this plugins type this command ola_plugin_state -p13 -senable

Note: If you need to find the id of a plugin There might be an easier way but this is how I did it. You can do this after Rocket Show is up and running. Go to the OLA Admin browser tab page in your browser rocketshow.local:9090/ola.html Click on plugin name located in the column on the left side Click the "View Log" link located in upper right corner of the page Look for a recent entry in log for the command Sending request [GET json/plugin_info?id=XX where XX will be the Id of the plugin you clicked on.

moritzvieli commented 1 year ago

@DavidOpgh Wow! Highly appreciated, well done! I am thinking on where such guides could be hosted. I think it will be something like markdown files hosted here on GitHub and linked from the website. I'll come up with something and let you know. 👍

DavidOpgh commented 1 year ago

@moritzvieli You're welcome. Glad to contribute. Looking forward to exploring more features of Rocket Show.

moritzvieli commented 1 year ago

@DavidOpgh I prepared the folder docs (currently only on develop-branch) with a getting-started.md markup file. If you want, you could add your guide there and make your first "official" repository contribution. Otherwise I'll transform your input here into markdown. Let me know, what you prefer. (y) :)

DavidOpgh commented 1 year ago

I would like the guide to have the ability to be updated in the future so which method would be better? For example the original guide was formatted for Github and currently doesn't contain any photos which I think would be helpful to include.

My original plan was to update this google doc https://docs.google.com/document/d/1qc-VDSoUHncOlFBArfpUA7hCuyIxQjfIOHbg5ceMGdw/edit?usp=sharing But I'm open to implementing whatever process you think would work best. If there is a markdown editor that I could use to make the process easier I'm open to that.

On Thu, Mar 30, 2023 at 1:47 AM Moritz A. Vieli @.***> wrote:

@DavidOpgh https://github.com/DavidOpgh I prepared the folder docs (currently only on develop-branch) with a getting-started.md markup file. If you want, you could add your guide there and make your first "official" repository contribution. Otherwise I'll transform your input here into markdown. Let me know, what you prefer. (y) :)

— Reply to this email directly, view it on GitHub https://github.com/moritzvieli/rocketshow/issues/77#issuecomment-1489733861, or unsubscribe https://github.com/notifications/unsubscribe-auth/AYZQAXF6GFC34GV2M5EJG7DW6UM7LANCNFSM6AAAAAAVSPSFUU . You are receiving this because you were mentioned.Message ID: @.***>

moritzvieli commented 2 months ago

Closed in favour of https://github.com/moritzvieli/rocketshow/issues/111