Author Topic: Falcon Player - Install Instructions - Beaglebones - dkulp image  (Read 820 times)

Offline dkulp

  • Sr. Member
  • ****
  • Join Date: Sep 2013
  • Location: Framingham, MA
  • Posts: 446
  • Kudos: 13
Falcon Player - Install Instructions - Beaglebones - dkulp image
« on: November 05, 2017, 05:27:25 PM »
The installation instructions for the "dkulp" images is a bit different than the old images or the images for the Pi's.   As a start, I highly suggest watching the excellent video:

https://www.youtube.com/watch?v=6aSyA1gU2cQ


That will provide a good walk through an introduction on how to get started.   However, if videos are not your thing, here are some written instructions.


1) Download the latest image from http://dankulp.com/bbb and unzip it to your computer someplace.


2) Burn the image onto an SD card.   The SD card needs to be at LEAST a 4GB SD card.   Unlike the previous images and the Pi images, you cannot just unzip the image onto the card directly.   You need to use a program such as "ApplePi Baker" or "Etcher" to burn the image onto the SD card.   If you've never done this before, the Beaglebone community has some good instructions:  https://beagleboard.org/getting-started#update . The main reason is that the Beaglebone image is a full "Linux" EXT4 partition.  Once the image is burned, Windows or OSX will NOT be able to read the SD card as it's not a FAT filesystem that they understand.


3) Place the SD card into the BBB and hold down the S2 button (the button nearest the SD card slot) while powering it on.  At this point, it is STRONGLY recommended to power the BBB using a USB cable attached to your computer.  Once the lights start flashing, you can release the S2 button.


4) After about 90 seconds or so, you should be able to use a browser to obtain access to the BBB.   If using the USB cable, you can browse to http://192.168.7.2 (Windows) or http://192.168.6.2 (OSX) and it should be fully up and running. 


At this point, FPP is completely up and running and ready to be used from the SD card.   If you plan on only running FPP from the SD card, that is all you need to do.   Start configuring the storage locations, time zones, network settings, etc...   If you pan to use the SD card for storage as well, you will likely need to expand the partition.  By default, it will be a 3.8GB partition (to fit on a 4GB card), but it won't leave much space for sequences.   Assuming you are using a larger card, you can expand it by going to the Settings -> Advance Settings and click on the button to expand the partition.  Then reboot.  You should then have the full size of your SD card available. 


However, if you would like to run FPP from the eMMC, you need to flash the image there.   To do so, go to the Settings -> Advanced Settings and hit the Flash to eMMC button.   Then wait a LONG LONG time.   It can easily take 30-45 minutes to copy everything over.   It should shut down automatically when done.  Remove the SD card and re-power on the Beaglebone.  That should have you running off the eMMC.


There will be additional "Advanced Usage" posts later in this thread, but the above should get you started.



Dan Kulp

Offline dkulp

  • Sr. Member
  • ****
  • Join Date: Sep 2013
  • Location: Framingham, MA
  • Posts: 446
  • Kudos: 13
Wireless Beaglebones (BBBW and BBGW)
« Reply #1 on: November 05, 2017, 05:33:47 PM »
By default, the Beaglebones will use DHCP to obtain an IP address for the wired port.  Thus, if you don't connect the BBB to the computer via a USB cable, you can get to the BBB using the ip address if you can figure it out (via nmap or your router or other utility).  However, the wireless controllers cannot get an IP as they don't know what network to connect to.   Instead, they boot up in "teather" mode.   After boot up, look for a new WIFI network named "FPP-####" (the last 4 digits are randomish).  Connect to that from your computer using the Wifi password of "Christmas".   Then browse to http://192.168.8.1  .  Configure like normal.   For the wireless controllers, there is now a "Disable BBB Tethering" option on the FPP settings page to turn this off once you have everything configured.


Note:  the BBBW is completely compatible with all the common capes that we use.  The Octoscroller and F4-B/F8-B/F16-B controllers should work fine.   The BBGW, on the other hand, consumes various pins, and the current capes have issues.    I do have a new Octoscroller pinout that will work if interested.

Offline dkulp

  • Sr. Member
  • ****
  • Join Date: Sep 2013
  • Location: Framingham, MA
  • Posts: 446
  • Kudos: 13
Storage device filesystems
« Reply #2 on: November 05, 2017, 05:50:29 PM »

The new image supports using alternative filesystems for the storage (either SD card or USB drive) other than FAT.    FAT is the default filesystem on the various SD cards and USB drives.  FAT is useful as it's readable on Windows, Mac, Linux, etc....  However, with Linux, the FAT filesystem is slow and also prone to corruption if not cleanly shut down.    Also, regular FAT only supports up to 32GB.   If there is no need to read the SD/USB drive from Windows/Mac, then I'd suggest changing to something more "Linux native".   There are currently two other options:


1) ext4 - this is the normal filesystem for Linux and the one the boot drive will use.   It's likely the most stable, can check itself at boot, is relatively fast.


2) btrfs - this is a newer filesystem and as such may not be quite a battle tested as ext4.  However, it has some really great features that can be useful.  The primary one is built in compression.   The FSEQ files we use are VERY compressible so a lot of space can be saved.   In addition, this CAN be faster as less data is transferred to/from the card.


To use a different filesystem, you need to reformat the SD card.   At this point, you have to be able to login to the BBB command line.   You can use SSH to login or use the "SSH shell" option from the Help menu to get to the command prompt.   Username fpp, password falcon.   After you login, insert your SD card or USB drive.   First, you should repartition the card to mark the partition as "Linux".   There are two options that work well:


1) Just change the type:   "sudo sfdisk --part-type /dev/mmcblk0 1 83" for SD or "sudo sfdisk --part-type /dev/sda 1 83" for USB

2) Completely reformat and repartition the card.  This will make sure the partition uses the full size of the card: "echo ";" | sudo sfdisk /dev/mmcblk0" for SD or "echo ";" | sudo sfdisk /dev/sda" for USB





 To format it, type one of:

1) For ext4 for SD card:    "sudo mkfs.ext4 -F /dev/mmcblk0p1"

2) For btrfs on SD card:   "sudo mkfs.btrfs -f /dev/mmcblk0p1"

3) For ext4 on USB:  "sudo mkfs.ext4 -F /dev/sda1"

4) For btrfs on USB: "sudo mkfs.btrfs -f /dev/sda1"

You will need to type the password (falcon) again.   It should complete in 10-15 seconds or so.   After it's done, you can go to the FPP settings page and select it for the storage location.   Reboot, select it again, and reboot again.
« Last Edit: November 07, 2017, 08:04:09 AM by dkulp »

Offline Emuney18

  • Full Member
  • ***
  • Join Date: Nov 2015
  • Location:
  • Posts: 230
  • Kudos: 2
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #3 on: November 06, 2017, 05:31:53 AM »
Wow thanks Dan for posting. This is on the list for next year once this year is running.


Sent from my iPhone using Tapatalk

Offline Jradical

  • Newbie
  • *
  • Join Date: Apr 2015
  • Location: Australia
  • Posts: 7
  • Kudos: 0
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #4 on: November 06, 2017, 02:25:46 PM »
Hi Dan

using a lowercase -f didn't work for the reformat command. Unrecognised command. Switched it up to a capital and worked without issue.

Code: [Select]
sudo mkfs.ext4 -F /dev/mmcblk0p1

There's also a issue with using a RTC with this build. It won't "install" the RTC because the i2c bus it's sitting on has moved from i2c-1 to i2c-2.
Not sure if this was something major that changed in the latest image or something. but It's definitely on 2.
After making a small change to /opt/fpp/scripts/functions, time can be read and written from the RTC.

One other issue also is even with that fixed the system time doesn't appear to be updating from the RTC, from the startup log it looks like it's doing it, but time is still wrong
until I run /opt/fpp/scripts/piRTC again it blurts out a error because the i2c device is already mapped. but it does update the system time.

piRTC is being called in the startup script  (i2c device is being mapped, troubleshooting page shows it working too), but for whatever reason the system time is not being changed.
I haven't been able to figure it out yet.
I have a BBB. with a octoscroller cape with built in RTC

Other than that it seems to be working fine.

Code: [Select]
/opt/fpp/scripts/functions

setupBBBRTC ()
...
            # DS1307 chip
            # BBB has onboard clock as rtc0 so we need to use rtc1
            echo ds1307 0x68 > /sys/class/i2c-adapter/i2c-2/new_device
            echo "FPP - Configuring RTC, Setting to DS1307/i2c-2"
            ;;
...
FPP & Vixen 3 Contributor (github.com/jaredb7)
7th year sufferer of CLAP
I dream of WS2811 Pixels.

Playlist Voting Plugin BETA -
https://github.com/jaredb7/FPP-VotingAPI-Integration

Offline dkulp

  • Sr. Member
  • ****
  • Join Date: Sep 2013
  • Location: Framingham, MA
  • Posts: 446
  • Kudos: 13
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #5 on: November 06, 2017, 03:21:37 PM »
Fixed the -F issue.  Thanks.   I was working from memory as I didn't want to reformat my cards.  :)


I haven't tried any of the RTC things.   None of my current capes have RTC on them and the capes that I do have sitting on my desk that do have an RTC don't have batteries for the RTC.   I'll Amazon a battery and see what I can figure out.   Not something I've ever looked at though as NTP works great for me.   I wonder if you need to modprobe the rtc-ds1307 module.

Offline jnealand

  • Developer
  • ******
  • Join Date: Aug 2013
  • Location: Kennesaw, GA
  • Posts: 2,189
  • Kudos: 41
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #6 on: November 06, 2017, 04:19:57 PM »
I also hit the problem with the formatting command so I'm glad to see the solution.  I would not have know what to do about it. 

I have one other issue and that is my WiPi ethernet adapter does not work with the new image, but it worked great with the old image.  If I swap the WiPi for and edimax my wifi works fine.  I seem to recall that there are some commands that can be run to get the proper driver to load, but darned if I know what they are. 

Please try to keep all solutions in the first couple of posts even if you answer them down in what I suspect will be deep depths in this thread.  Thanks for putting this thread up, the older one was getting quite cluttered.
Jim Nealand
Kennesaw, GA
Lynx, Falcon, XL, FPP

Offline JonB256

  • Supporting Member
  • ******
  • Join Date: Mar 2013
  • Location: Granbury, Texas
  • Posts: 3,863
  • Kudos: 81
    • Granbury Christmas Lights
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #7 on: November 07, 2017, 06:12:07 AM »
Dan, for those of us using Windows, do you know of any utilities that would let us see and work with the ext4 and btrfs partitioning?

There is "winbtrfs" and has a github page, but there are still many recent bug entries

I'm also looking a using my Chromebook for similar items.

**** addition

After inserting an flash drive (sda1) and formatting in ext4, this is what I get from a "sudo fdisk"

Disk /dev/sda: 7.6 GiB, 8166703104 bytes, 15950592 sectors
Units: sectors of 1 * 512 = 512 bytes
Sector size (logical/physical): 512 bytes / 512 bytes
I/O size (minimum/optimal): 512 bytes / 512 bytes
Disklabel type: dos
Disk identifier: 0x00000000

Device     Boot Start      End  Sectors  Size Id Type
/dev/sda1        8192 15936479 15928288  7.6G  b W95 FAT32


Should it still say "FAT32" at the end?
Did I need to reboot to get a remount of the flash drive?

Putting in a recently formatted Fat32 flash drive of the same size, I get exactly the same text.

The only difference I'm seeing is that if I put the "ext4" formatted drive in a Windows system, it won't read it.
If I put it in my Chromebook, it will open but is mounted as Read Only.

Now, I tried btrfs.

Using lowercase f , it looked like it did just what was expected.
After a several reboots to get sda1 mounted and recognized as my Media drive, I do see this promising line at the bottom of mount | grep -v password:

(/dev/sda1 on /home/fpp/media type btrfs
(rw,noatime,nodiratime,compress-force=lzo,space_cache,subvolid=5,subvol=/)

« Last Edit: November 07, 2017, 07:42:28 AM by JonB256 »

Offline JonB256

  • Supporting Member
  • ******
  • Join Date: Mar 2013
  • Location: Granbury, Texas
  • Posts: 3,863
  • Kudos: 81
    • Granbury Christmas Lights
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #8 on: November 07, 2017, 07:28:30 AM »
For the btrfs command, the upper case F gives an error, then lists the options.

-f is the "force overwrite of existing filesystem" option

Offline dkulp

  • Sr. Member
  • ****
  • Join Date: Sep 2013
  • Location: Framingham, MA
  • Posts: 446
  • Kudos: 13
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #9 on: November 07, 2017, 08:12:22 AM »



I think I have the RTC issue fixed.   It apparently was taking about 20 seconds to load the module once the command to detect the RTC was initiated.  Unfortunately, the hwclock command was occurring before that timeout.   If I force the modprobe of the module prior to the detect, it's very quick and seems to work.    (also updated the script to use i2c-2)


I fixed the btrfs -F issue.


I also added info about repartitioning the card.   It's not "required" but what it does do is mark the partition as type 83 (Linux) instead of "c" Win95/FAT32.    It also makes sure the partition uses the full size of the card.   Marking it as type 83 might help the Windows utilities recognize it as not being FAT.   No idea.  I don't use windows.  :)


Offline Jradical

  • Newbie
  • *
  • Join Date: Apr 2015
  • Location: Australia
  • Posts: 7
  • Kudos: 0
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #10 on: November 08, 2017, 04:06:43 AM »

I think I have the RTC issue fixed.   It apparently was taking about 20 seconds to load the module once the command to detect the RTC was initiated.  Unfortunately, the hwclock command was occurring before that timeout.   If I force the modprobe of the module prior to the detect, it's very quick and seems to work.    (also updated the script to use i2c-2)


That's fixed it, the workaround I had was to change i2c-2 obviously. but add a 10second sleep the piRTC, that would work into the 20second load time you noticed.
Thanks.

The other issue I'm having now is FPPD won't run when my my Octo cape is enabled (didn't realize it was disabled before), the functions file we have is point to the wrong slots location (check FPP master branch and that one looks correct)
Even after that, trying to load the cape resulted in a hang until I commented enable_uboot_cape_universal=1 in boot/uDev.txt
After that it seems the cape will show along with the pru thing when you run the command cat /sys/devices/platform/bone_capemgr/slots

If I disable my panel setup via Channel Outputs, and restart FPPD, it starts and is running. Enabled it, restart, FPPD won't start.
Used some info from here for the new slots location
https://elinux.org/Beagleboard:BeagleBone_Debian_Image_Migration

Not sure what's going on, I swear it was working in one of your other images. I had my matrix running at the time testing the brightness.
Using your latest image, not so much.
Code: [Select]
[   33.644602] bone_capemgr bone_capemgr: part_number 'uio_pruss_enable', version 'N/A'
[   33.644641] bone_capemgr bone_capemgr: slot #4: override
[   33.644658] bone_capemgr bone_capemgr: Using override eeprom data at slot 4
[   33.644675] bone_capemgr bone_capemgr: slot #4: 'Override Board Name,00A0,Override Manuf,uio_pruss_enable'
[   33.656117] bone_capemgr bone_capemgr: slot #4: dtbo 'uio_pruss_enable-00A0.dtbo' loaded; overlay id #0
[   33.696932] bone_capemgr bone_capemgr: part_number 'CAPE-BONE-OCTO', version 'N/A'
[   33.696971] bone_capemgr bone_capemgr: slot #5: override
[   33.696987] bone_capemgr bone_capemgr: Using override eeprom data at slot 5
[   33.697005] bone_capemgr bone_capemgr: slot #5: 'Override Board Name,00A0,Override Manuf,CAPE-BONE-OCTO'
[   33.714069] bone-pinmux-helper ocp:helper: could not find pctldev for node /ocp/interrupt-controller@48200000, deferring probe
[   33.714427] bone_capemgr bone_capemgr: slot #5: dtbo 'CAPE-BONE-OCTO-00A0.dtbo' loaded; overlay id #1

Getting this in the Startup log too, not sure where it's coming from, could be part of the issue
Code: [Select]
FPP - Configuring RTC, Setting to DS1307/i2c-2
P8_07 pinmux file not found!
WARNING: GPIO pin not exported, cannot set direction or value!
bash: /sys/devices/platform/ocp/ocp*P8_07_pinmux/state: No such file or directory
Cannot write pinmux file: /sys/devices/platform/ocp/ocp*P8_07_pinmux/state
« Last Edit: November 08, 2017, 04:14:27 AM by Jradical »

Offline dkulp

  • Sr. Member
  • ****
  • Join Date: Sep 2013
  • Location: Framingham, MA
  • Posts: 446
  • Kudos: 13
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #11 on: November 08, 2017, 06:06:10 AM »



You shouldn't need to do ANYTHING with the overlays as we don't use it anymore.   I need to actually remove the "slots" thing from the scripts.   I was leaving it in place as I was hoping to eventually merge some of this to the main 1.9 branch and try and support both Wheezy and Stretch, but I don't see that happening now so I could remove a bunch of the non-stretch code.


In any case, we use the cape_universal setup now and don't use any of the overlays.   We configure each pin via the "config-pin" command at boot up, but we also sometimes need to configure the pins individually within FPP (mostly as the DMX's don't use gpio anymore so need to flip those pins to pru direct mux).   


The "P8_07 pinmux file not found" error is directly a result of trying to use the CAPE overlay.   That's coming from the config-pin stuff trying to configure the pin for out, but the CAPE_BONE_OCTO overlay has taken over the pin so the config-pin command won't work.

Offline JonB256

  • Supporting Member
  • ******
  • Join Date: Mar 2013
  • Location: Granbury, Texas
  • Posts: 3,863
  • Kudos: 81
    • Granbury Christmas Lights
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #12 on: November 08, 2017, 08:06:58 AM »
The other issue I'm having now is FPPD won't run when my my Octo cape is enabled

I've got four working Octoscrollers with this latest image and FPPD runs on all of them. (so I never had to dig THAT deep into the code).

I'm not quite sure what is stopping yours, but it isn't a generic issue.

Are you storing your Configuration on uSD or Flash Drive? Anything else you doing, like using ext4 or btrfs partitioning?

Offline jnealand

  • Developer
  • ******
  • Join Date: Aug 2013
  • Location: Kennesaw, GA
  • Posts: 2,189
  • Kudos: 41
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #13 on: November 08, 2017, 03:56:29 PM »
I still have the problem that my Wi-Pi wifi adapter will not work where it did in the June image I was using.  I'm pretty sure that is a library issue, but I am not a coder or a linux wizard so I have no idea how to fix that.  The Wi-Pi adapters work perfectly in the Pis.

Offline dkulp

  • Sr. Member
  • ****
  • Join Date: Sep 2013
  • Location: Framingham, MA
  • Posts: 446
  • Kudos: 13
Re: Falcon Player - Install Instructions - Beaglebones - dkulp image
« Reply #14 on: November 08, 2017, 04:49:32 PM »
I still have the problem that my Wi-Pi wifi adapter will not work where it did in the June image I was using.  I'm pretty sure that is a library issue, but I am not a coder or a linux wizard so I have no idea how to fix that.  The Wi-Pi adapters work perfectly in the Pis.


I have no idea what chipset or anything they use so not even sure how to debug it.   Is it this:  https://www.amazon.com/Wi-Pi-Raspberry-802-11n-Wireless-Adapter/dp/B00BDW6D7I


If so, I'll order one and see if I can get it working.   Not sure what would have changed in regards to wifi to change it. 

 

Back to top