News

V0.9.0 Release Announcement

Added by Michael J. Hammel 3 months ago

PiBox Media Server / PiBox Media Player v0.9.0 Release Notes
2014-09-09

Additional Information

General Status
------------------------------------------
This is the first fully functional media-based release, with both the Media Server and Media Player functionality implemented and working. The Media Server auto mounts media sticks and exports them to the Media Player. Both server and player have an integrated custom front end to the omxplayer allowing for media file selection using a database generated via TheMovieDB.org using the new VideoLib application. The default configuration is designed to work optimally with the Favi keyboard including arrow keys and audio. Audio is automatically pushed out the Raspberry Pi's audio port to avoid possible loss of audio on HDMI connections.

Previous functionality has been regression tested and continues to work correctly. The webcam interface can be played at the same time that video is played on the server and the player.

Extensive investigation has been done to identify the most stable hardware for both the server and player. This includes definition of a specific USB network dongle and integration considerations with displays ranging from HDMI monitors and TVs to LCD touchscreens and projectors.

Where this is headed
------------------------------------------
It's become obvious that there are some easy to add extended functionality that can be added to the media components, such as remote control via Android, a more Netflix or Android styled icon desktop (managed through the application manager instead of matchbox's panel) and digital TV support. This will be the focus for the 0.10.0 release.

The long term plans include integration with BLE devices to provide a wider-scale Internet of Things infrastructure, taking PiBox from the trailer into the home. Additional work is planned for WiFi Direct improving boot times and overall performance.

0.9 Development Summary:
------------------------------------------
  • Major platform stabilization and road-tested release.
  • Integrated a front end (videofe) to omxplayer to browse and selected videos.
  • Created a desktop application (videolib) for creating a database on media sticks for use with PiBox.
  • Stabilized the network configuration when the Media Server is configured as a access point.
  • Updated the UI to a much more user friendly environment, integrating FAVI keyboard support and use-case from across a room.
  • Migrated to current repository for omxplayer.
  • Fixed SMB mounting issues, making video sharing on private network more transparent.
  • Implemented an application manager to launch applications and manage performance.
  • Fixed bug in Pibox web server to allow proper use from mobile devices.
  • UI/firmware cleanup that allows clean use on multiple HDMI monitors as well as with AAXA LED projectors.
0.10 Plans
------------------------------------------
  • Migrate to Netflix/Android style desktop from the use of a panel in the UI
  • Investigate integration of Android control of appmgr
  • Integrate use of WinTV HVR 950Q for digital TV
  • Investigate creation of custom 3D printed case for both server and player
Development Status:
------------------------------------------
  • Total issues: 230
  • Closed/Resolved: 173
  • In Progress: 20
  • New since last release: 81
  • Closed/Resolved since last release: 58

-----------------------------------------------------
Repository: appmgr
-----------------------------------------------------
RM #325: Add REUSE socket option so X11 restarts will be able to properly restart the appmgr.
RM #315: Shutdown and cleanup appmgr when the package is removed.
RM #316: Add interface script that handles Matchbox->appmgr messaging. Fix packaging so its appropriate for the appmgr package.
RM #316: Remove extraneous init script.
RM #316: Updated unit tests to validate appmgr is operating as intended.
RM #316: Change default port so it doesn't conflit with piboxd.
RM #316: cleanup of logging output.
RM #316: Stop current process on shutdown. Provide more thorough handling of app killing.
RM #316: Don't output to console if writing to log file.
RM #316: Move lock handling to a separate function so it can be called whether daemonized or not. Move logging init earlier. Clean up lock file on exit.
RM #316: Updated to reflect tests being able to run from top level or tests directory.
RM #316: Add cleanup of test generated files.
RM #316: Initial import.

-----------------------------------------------------
Repository: bui
-----------------------------------------------------
RM #376: Fix default protocol type to be WPA2.
RM #376: Change from TKIP to CCMP for pairwise settings when in hostap mode.
Revert "General: clean up build so it is used the same way the piboxd and related builds are run (starting with autoreconf -i)."
General: clean up build so it is used the same way the piboxd and related builds are run (starting with autoreconf -i).
RM #347: Added wpa_pairwise=TKIP, macaddr_acl=0, ignore_broadcast_ssid=0, hw_mode=g to hostap configuration output.
RM #313: Fix ip address in status bar. Add more spacing on some hbox cells.

-----------------------------------------------------
Repository: mjpg
-----------------------------------------------------
RM #348: Bump version to 0.9.0.

-----------------------------------------------------
Repository: monkey
-----------------------------------------------------
RM #275: Update bashsetup script to match move of repository under the PiBox project.
RM #348: Bump version to 0.9.0.

-----------------------------------------------------
Repository: omx
-----------------------------------------------------
RM #348: Pull from last known working build.
RM #355: Added ld.so.conf file for omxplayer to packaging.
RM #352, RM #355: Migrated to master branch of popcornmix repo. Verified missing library and font files are in the opkg.
General: Change project name from omx to omxplayer.
Initial import of omxplayer metabuild

-----------------------------------------------------
Repository: piboxd
-----------------------------------------------------
RM #382: Added isThisMyIP() to utils that is called from getNMBList() to make sure not to mount the local host's own SMB exports.
RM #348: Bump version number for 0.9 release.
RM #376: If SMBMOUNT is specified in config file, use that. Otherwise use the default mount command.
RM #376: Add support for loading the configuration file at boot time.
RM #376: Add support for SMBMOUNT in configuration file.
Merge branch 'master' of ssh://gitorious.org/pibox/piboxd
RM #353: The two calls to popen() did not have associated calls to pclose(). That has been fixed and the runaway processes problem appear to be fixed.
General: Fix incorrect prog name on help message.
RM #323: Add smb automounting support through timer function.
RM #323: Add support for testing if running as root.
RM #323: Added support for automounting smb shares.
General: Removed extraneous comments.
General: fix case of PiBox Media Server.
General: Added missing cross compile instructions.
General: Add missing cdtools function.

-----------------------------------------------------
Repository: piboxwww
-----------------------------------------------------
RM #276: Updated bashsetup.sh to reflect move of repository under the PiBox project.
RM #348: Bump version to 0.9.0.
RM #354: Add missing [IPADDR] tag to webcam.tmpl.

-----------------------------------------------------
Repository: pmsui
-----------------------------------------------------
RM #375, RM #361: If a FAVI keyboard is found, reconfig mouse acceleration and keymappings.
RM #364: Add new icons for single panel configuration.
RM #358: Add larger mouse icon set to packaging.
RM #363, RM #364: Switch to one panel at the top and one replace the icons with nicer ones.
RM #322: Add videofe to icon callbacks.
RM #350: Call desktop.sh startup from xinitrc so appmgr can get proper access to X environment.
RM #318: Added call to feh to display PiBox background in xinitrc.
General: remove margins from panel.
General: Remove backgrounds from icons.
RM #313: Reduce font size - the "Enable" line on the IPV4 tab wasn't showing and the status bar couldn't display the ip address.
RM #316: Remove bui-network-config from xinitrc. Let user drive navigation.
RM #315: Switch to appmgr usage for panel buttons.
RM #315: Allow desktop.sh script to run run with start/stop options.
General: Remove stamp files which should not be checked in.
RM #281: Add desktop setup script, called by S90UI.
RM #281: Remove chown, which is not needed since the build sets the owner of files, and add mkfontdir for pibox fonts.
RM #281: Fix location of png icons.
RM #281: Switch to Nunito as the desired font for gtk apps.
RM #281: Fix preinst packaging.
RM #281: Fix cdtools script to properly match upstream repo for PMSUI package.
Initial import of the PiBox Media Server UI package

-----------------------------------------------------
Repository: rpi
-----------------------------------------------------
RM #348: Add changelog generator script and supporting data file.
RM #348: Bump version number of 0.9.0.
RM #376: Add a 2 second delay after wpa_supplicant is started to give it a chance to bring up the hardware before bringing up the interface with ifup.
Revert "RM #375, RM #371: Test for FAVI keyboard and adjust mouse movement and key mappings for X.org.". This change belongs in the UI repo only, since it applies to the Media Server/Media Player add on packages.
RM #375, RM #371: Test for FAVI keyboard and adjust mouse movement and key mappings for X.org.
RM #375, RM #371: Save lsusb output to speed other scripts that need that same output.
RM #375: Add xev to find keycodes for FAVI keyboard.
General: Put wpa-supplicant in the background or else ifup doesn't get run.
RM #357: Force audio out of the Pi port instead of the HDMI port (if supported) as the default for PiBox.
RM #370: Updated the overscan settings. Added comments related to addressing audio output (RM #357).
RM #326: switch to using /media/usb as the mount point parent for usb flash sticks.
RM #326: Switch to /media/usb as the share point so only the usb flash sticks are shared.
RM #325: Only run desktop.sh shutdown, and let app-specific xinitrc's handle startup so apps get proper access to X environment.
RM #321: Removed references to nfs from S00dev.
RM #303: Added WinTV HR 950Q firmware.
General: minor mods to help with automated smb config.
RM #303: Add dvd_apps, w_scan, for tv dongle and xrefresh to help recover from omxplayer.
RM #296: Removed commented out call to rc.modules in S00dev. Added calls to init scripts that do initialization in firstboot. Makes for a clean 2nd boot.
RM #316: Add sed, netcat and vim for use with appmgr.
RM #312: Run desktop.sh on stop only if HDMI is connected.
RM #316: Add vimtools patch to get xxd for appmgr.
General: Move debian-binary into CONTROL directory so it gets installed in the proper location.
RM #281: Add mkfontdir to available font directories.
RM #281: Call desktop.sh if it exists.
RM #281: Revert back to Blackbox as the default UI. The Pibox Media Server has its own opkg to set up its UI.
RM #281: Add reference to gtkrc file, if one exists.
RM #281: Add font paths to xorg.conf.
RM #281: Added mkfontdir, mkfontscale and xwd.
RM #306: Enabled matchbox and made it the default environment for the HDMI display.
RM #240: Removed multiple xorg.conf and xinitrc now that we won't be running X on the fbtft device.
RM #240: Removed directfb examples, Removed gqview, Added fbset, Added fbturbo back in (again), Added evtest/evtest capture.
RM #309: Remove extra xorg.conf and xinitrc since X will not be used on the fbtft device.
RM #299: Enable ads7846 in modules.conf.
RM #240: Add a special init script for loading modules with rc.modules. If necessary, switch the console to the fbtft device.
RM #240: uncomment fbtft so it gets loaded with the other drivers now.
RM #240: Remove fbtft integration (it's handled separately now) except for a test for the fbtft stamp file - if its there then don't start the X server.
RM #240: Don't load /etc/modules.conf here so we can properly load fbtft later.
General: Fix cscope target, which was broken.
General: Fixed broken target name expansion for buildroot-verify.
RM #299: Add ads7846 touchscreen input device.
RM #299: Add xinput and tslib.
RM #296: Added fbtft_tools to kernel build.
RM #240: Switch to fbdev from fbturbo because the latter doesn't seem to work well with the fbtft drivers.
RM #240: Disable fbturbo because it doesn't work well with the fbtft device.
RM #240: Changed to checking for stamp file for setting up fbtft configuration.
RM #240: Fix patch by adding missing closing double quote.
RM #240: Fix directory reference (replaced undefined var FBTFT_ARC with FBTFT).
RM #240: Switch to /dev/fb1.
RM #240: Remove incorrect command line option (-display).
RM #240: Load spi-bcm2708 with rc.modules, before we try to load the fbtft drivers.
RM #300: Bump to "master" for the firmware blobs.
RM #300: Bump to "master" for the GLES libraries and tools.
RM #240: Created multiple xorg.conf and xinitrc files based on which displays are connected at boot time. Modified S90UI to test for displays and configure appropriate files, plus handles loading of appropriate drivers since they don't see to work if loaded from rc.modules during early init. Commented out fbtft_device from modules.conf.
RM #240: Updated modules.conf to rotrate display on HY28A. Added a dual-monitor config for X.org (HDMI + HY28A).
RM #240: Add driver config for 3.10.y kernel RM #240: Add fbtft driver targets to download driver from git repo. RM #240: Update kernel config to include fbtft support. Add patches for fbtft support in Kconfig.
RM #240: Add driver configuration file.
RM #240: Add target for downloading 3rd party drivers and integrating into the kernel source.
RM #128: fbturbo seems to work better with the new 3.10.y kernel than it did with 3.2.27 so I've made it the default.
RM #241: removed openssh package from rootfs configuration.

-----------------------------------------------------
Repository: rtmp
-----------------------------------------------------
RM #274: Move repository under PiBox project and update bashsetup.sh to match.
RM #348: Bump version to 0.9.0.

-----------------------------------------------------
Repository: vfe
-----------------------------------------------------
RM #380: Added delays between xrefresh and each vt switch and between last vt switch and a new xrefresh. This seems to be necessary to deal with some HDMI displays that are slow to recover from omxplayer exiting.
RM #366: Add sample config file. Config file is not mandatory for installation.
RM #366: Add support for choosing the vt X.org is running on in the config file.
RM #322: Add vt switching when child exits, which is what it takes to get the display back from omxplayer.
RM #322: Don't call pthread_detach on shutdown unless the thread was still running.
RM #322: Place video player in its own thread so we can catch when it exits and call xrefresh to get the framebuffer display back.
RM #322: Remove unnecessary header references.
RM #322: Busybox find operates slightly differently than GNU find, so use the latter when testing on the desktop and the former when running on PiBox.
General: Add support for a config file to set debug args without using command line args.
RM #322: Ported stream.c from piboxd to player.c so it can launch the video player under an xterm (as required for use with omxplayer under X.org).
RM #322, RM #349: Added scrolling to video list. Fixed poster display code so it doesn't take so long to switch videos. Added double-click event to poster so it can launch the video.
RM #322: updateVideo() now just calls do_drawing() (which is fixed) so there is no delay in showing posters anymore. Added playVideo() as front end to spawning child that will run the video player.
RM #345: Strip video library name from dbpath.
General: Remove debug statements.
RM #345: Added support for reading in VideoLib databases and displaying video names in the list on the left. Video poster is not yet displayed because I need to strip the db name (.videolib.db) from the path before building the poster path.
Initial import

-----------------------------------------------------
Repository: vlib
-----------------------------------------------------
RM #342: Completed option to select from altnerate movie titles.
RM #342: Added dialog for selecting from alternate video entries. Added method in MovieDB to parse alternates into a list of colon delimited strings so they can be parsed by the dialog.
General: Fix parent path to git tree.
RM #335: Added poster menu to choose menu sizes to download. Updated code that saves image to file to append the image size to the filename.
General: Update log level to trace to reduce log floods.
RM #331: Removed video ArrayList and the last few references to it, such as findVideo() method. Prevent redraws from movieList while updating so updates appears instantaneously. Changed scanVideo to take a Video object as an argument instead of a movieName. This allows callers to make updates to that object that scanVideo can use (such as changing the displayName). Set dirName on startup, if one was configured. Save db when a single video is updated via rescan.
RM #331: Remove S_MOVIEDIR from poster path when returning the filename (re: return relative path name).
RM #331: Switched to TreeMap from HashMap to get automatic sorting. Changed a number of log levels to trace to reduce logging output. Dropped find() method - getVideo() does the same thing but correctly. Added updateKey() method to update the db when the displayName changes. Don't add S_MOVIEDIR setting with poster. Let UI take care of that.
RM #331, RM #339, RM #340: Update movie list from DB only using new method. Show display name in TMDB field to allow editing. Load images based on relative paths. Use db entry when doing scan of tmdb. Set default paths when loading a new directory. Don't rebuild db if specified directory doesn't exist.
RM #339, RM #340: Merge usage of filename, listname and displayname. Fix getVideo() to do lookups based on displayname.
RM #339, RM #340: Make video file paths relative to video directory. Drop Video array used by UI and merge usage with LocalDB requirements, which means merging usage of filename, displayname and listname.
RM #339: Convert spaces to underscores in poster file name.
RM #327: Load db file on startup, if available.
General: Allow listName setter.
RM #334, RM #336, RM #338: Add disclaimer and tmbd logo. Move code that fills details frame from video data to its own method so it can be called from multiple places. Move code that scans for a video to its own method so it can be called from multiple places. Add rebuildDB button. Add event handling for clicking on video name in the list. Add URL decoding.
General: Fix loading from the db file. Add find() by display name so clicking on a name in the list can find an db entry.
RM #336: Add tmbd logo as per API license requirements.
RM #331, RM #333: Move scan button to Details frame to rescan individual videos. Add TMDB name to Details frame so it can be manually edited when a search fails.
RM #327, RM #330: Add db format definition class (Video.java). Migrated to using it and dropped inner class VideoFile. Write database to file when a single file is rescanned.
RM #329: Don't delete runtime directory on each run via ant.
RM #329: Load configuration file at startup. Setup log4j earlier so Cli logging works correctly.
RM #337: Restructure columns to add API key field. Display saved api key.
RM #337: Integrate use of saved API key.
RM #329: Add ability to save and load configurations.
General: removed notes.txt after moving content to Redmine issues.
General: Clean up unit tests as ported from Jarvis to make them suited to VideoLib.
General: Remove build artifacts from source tree.
General: Remove unit tests copied originally from Jarvis project.
Initial import

V0.8.0 Release Announcement

Added by Michael J. Hammel 9 months ago

PiBox Development Platform / PiBox Media Server 0.8 Release Notes

Additional Information

General Status
------------------------------------------
The system boots cleanly and will properly mount/unmount SD cards with movies that it exports via Samba. The web interface provides a network configuration utility and a streaming web cam that uses mjpeg to easily pass through firewalls. Audio support is integrated. Most work to this point has focused on stabilizing the platform with respect to a reasonable kernel/rootfs and wifi support.

Where this is headed
------------------------------------------
The PiBox Media Server is now 1.0 is planned to support the TI Sensor Tag displayed in the web interface and on an attached 2.8" touch screen display. It will stream movies over Samba from USB-mounted flash sticks. It may be add analog line support for managing heating/cooling in my travel trailer. I have to find out what replacing the current control will entail. I would like to integrate BLE support of Arduino-based control for the window blinds as well.

Additional work is planned on improving boot times and integrating XBMC (or similar) package for the PiBox Media Player.

0.8 Development Summary:
------------------------------------------
  • Migrated to Crosstool-NG 1.19.0 w/gcc4.7
  • Migrated to Linux Kernel 3.10.y (3.10.31+ github.com/raspberrypi/linux)
  • Migrated to Buildroot 2013.11
  • Dropped WebKit and associated browsers (unstable)
  • Re-enabled Network Settings in web server for external browser access
  • Completed Network Settings Access Point configuration in web server
  • Improved USB device driver loading
  • Added minimal static Busybox rootfs build to test xcc/kernel rev's.
  • Added compiled RaspberryPi Userland tools to rootfs
  • Fixed X restart that was sometimes locking up with newer kernels
  • Rev'd xorg fbdev driver to 0.4.4.
  • Added fbturbo xorg driver (hardware accelerated X for RPi) but have not made it default yet.
  • Added some USB Wifi dongle support, but noted rt2800usb is probably broken
  • Improved and sped up SD card creation process
0.9 Plans
------------------------------------------
  • Implement authentication for web interface
  • Port RTL8188CUS driver to PiBox
  • Add kernel/userspace support for Bluetooth Low Energy (BLE)
  • Clean up default boot processing, including initial network config
  • Integrate 2.8" TFT LCD touchscreen
Development Status:
------------------------------------------
  • Total issues: 148
  • Closed/Resolved: 115
  • In Progress: 9
  • New since last release: 29
  • Closed/Resolved since last release: 30

-----------------------------------------------------
Repository: mjpg
-----------------------------------------------------
RM #293: Bump to 0.8.0
RM #277: Add Changelog removal to clobber target.

-----------------------------------------------------
Repository: monkey
-----------------------------------------------------
RM #293: Bump to 0.8.0.
RM #277: Add Changelog removal to clobber target.

-----------------------------------------------------
Repository: piboxd
-----------------------------------------------------
RM #293: Bump to 0.8.0.

-----------------------------------------------------
Repository: piboxwww
-----------------------------------------------------
RM #266: Move php setMode() call from javascript saveIt() to setNetMode() to fix switching between wifi client and access point configuraiton.
RM #284: Enable Settings page for external browsers.
RM #293: Bump to 0.8.0.
RM #277: Add Changelog removal to clobber target.

-----------------------------------------------------
Repository: psp
-----------------------------------------------------
RM #293: Bump to 0.8.0.
General: Cleanup build to remove unused Make variables and target dependencies.
RM #268: Cleaned up the MIOT logo. Added a specs file describing layout in XCF file. Updated README to reference "miot" prefix instead of "logo" prefix.
RM #267: Commented out creation of debug file.

-----------------------------------------------------
Repository: rpi
-----------------------------------------------------
RM #292: Remove unused sed replacement in busybox build when copying over saved config to build tree. RM #292: Replace hard coded path with tag in default saved configuration for busybox. RM #292: Replace hard coded path with tag in minimal saved configuration for busybox.
General: Bump to 1.19.0.
General: bump version to 0.8.0.
General: Code cleanup - tabs to spaces.
Merge branch 'master' of ssh://gitorious.org/pibox/pibox
RM #288: Rev xorg fbdev driver to 0.4.4.
RM #291: Changed local kernel config name so it doesn't include git id. RM #287: Disabled NFS in the kernel and rootfs. RM #231: Disabled all unused filesystems.
RM #291: Change KERNEL_CFG to KERNEL_SAVECFG so its a little more obvious what the variable is being used for.
RM #291: Make saveconfig use KERNEL_CFG as the saved file name.
RM #291: Remove GIT ID from KERNEL_CFG, which is the name of the config file saved in our tree.
RM #288: Changed S90UI to killall -1 X instead of killall xinit and place a 1 second delay before restarting. This seems to alleviate the problem most of the time.
RM #289: Add notes about 8188CUS-based wifi dongles.
RM #286: Remove web submenu from default blackbox configuration.
RM #278: Note problems in usbhandler.conf with rt2800usb driver in 3.6+ kernels.
General: Fix rpifw to pull from the specified version but then checkout the specified git ID.
RM #172: Make Crosstool-NG v1.19.0 the default.
RM #286: Disabled surf, midori and webkit. RM #287: Disabled portmap.
RM #172: For ctng 1.19.0 - Bump kernel to 3.10.2, Bump GCC to 4.7.3 (non-Linaro).
General: Don't mount /proc/bus/usb with 3.10.y kernel and remove unused X startup in inittab.
General: Update build.help to discuss use of minimal Busybox build.
RM #282: Updated Busybox build to allow building a minimal rootfs that will boot to a shell prompt. This is only useful for testing new toolchains since a full rootfs can take hours to complete while this rootfs takes about 90 seconds. The resulting rootfs.ext3 will replace the one in the package directory when busybox-pkg is run so you need to be careful to save off your previous Buildroot-generated rootfs is you need to save it.
RM #282: Add -ext3 target and ability to make Busybox the rootfs for testing.
RM #282: Allow specifying an alternate configuration other than the default used by Buildroot.
General: Add RealTek rtl8192cu support.
General: Make sure kernel firmware repo gets a pull on each build to pick up new firmware.
General: change unavailable groups (video, rfkill) to root.
RM #279: Switched git archive repo to use KSRC name instead of creating a new archive for each branch.
RM #279: Add KSRC to top level showconfig target.
RM #278: Allow setting kernel branch/commit id on command line with KB.
RM #277: Enable XBMC and tinyxml so crtmpserver will compile.
RM #273: Make default kernel repo branch 3.10.y, using the 3.10.31 revision. This works with changes to the rootfs to load usb drivers.
RM #273: Add init script to load USB drivers on boot. Turn off debugging by default in blockhandler.sh.
Merge branch 'master' of ssh://gitorious.org/pibox/pibox
RM #273: Add missing helper scripts. Only copy over mdev.conf if one doesn't already exist. Added mdevdebug.sh to tree.
RM #176: Rev'ed kernel configuration for latest 3.10.y tree. Fixed bug in kernel-git.cfg to KV works correctly. Merged mdev.conf with nldev.conf.
RM #273: Added nldev to package for Buildroot 2013.11.
RM #214: Added RPi Userland tools to rootfs.
RM #272: Port fbturbo X.org driver to 2013.11 release.
RM #271: Better use of blkid to find file system type. Fixes use with /dev/sda1 (inserted usb stick).
Merge branch 'master' of ssh://gitorious.org/pibox/pibox
RM #235: Add blkid with filesystem type support.
RM #271: Fixed blockhandler to work with Busybox 1.21.1 and Buildroot 2013.11. Change the way blkid is used because it's now Busybox's version instead of Buildroot's (which went away). Add special handling for mmc card when testing for "removable" fails.
Merge branch 'master' of ssh://gitorious.org/pibox/pibox Merging Busybox 1.21.1 bump to Buildroot build.
RM #219: Removed references to uClibc from xcc build.
RM #270: Fixed mke2fs to use -F option to prevent prompting user.
RM #235, RM #269: Bump Busybox to 1.21.1, with mktemp added.
RM #235: Bump Busybox to 1.21.1 in Buildroot 2013.11
RM #235: Bump Buildroot to 2013.11 as the default build.
Merge branch 'master' of ssh://gitorious.org/pibox/pibox
RM #265: Fix make target to generate rootfs.ext3 file instead of ramdisk.ext3 so it matches mkinstall.sh.
Merge branch 'master' of ssh://gitorious.org/pibox/pibox
RM #235: Add support for building Buildroot 2013.11. This is not the default yet, however.
RM #243: Updated S00dev to recreate /var/lib (including missing alsa directory) on firstboot. This gets rid of the missing v4recovery directory message
RM #256: Change regex to for mountable devices to help with mounting system SD card on boot.
RM #242: Add missing group lp to remove extraneous error on boot from dbus.
RM #256: Updated blockhandler.sh to mount 1st sd card partition on boot.
RM #265: Switch to using rootfs.ext3 and dd to write to SD card during install.
Merge branch 'master' of ssh://gitorious.org/pibox/pibox
RM #128: Added hardware accelerated X.org driver to build. Driver is not stable so it's not being used yet.
RM #176: Add support for 3.10.y kernel tree. This is not the default yet, but it does boot. It needs to be tested with the rest of the rootfs and opkgs to make sure it has the right default kernel config.

-----------------------------------------------------
Repository: rtmp
-----------------------------------------------------
RM #293: Bump to 0.8.0.
General: Cleanup Changelogs on clobber.

V0.7.0 Release Announcement

Added by Michael J. Hammel 11 months ago

PiBox V0.7.0 is now available for download, both in source and SD card installation packages. This release has numerous bug fixes along with a new network configuration UI in the web interface.

The 0.7.0 release continues to focus on supporting the release of the PiBox Media Server.

Major changes for 0.7.0
  1. Added support for auto mounting flash-media devices, such as USB flash sticks.
  2. Add support for flipping webcam display (in case webcam is upside down)
  3. Fix webcam streaming to tablets over web interface
  4. Fix media streaming to tablets using SMB
  5. Updated web interface with localhost-only network configuration option
  6. Added boot splash opkg

See attached changelogs for PiBox and associated packages.

Upcoming for 0.8.0
  1. Complete Access Point migration from bui-network-config to web based UI
  2. Add hardware accelerated X.org driver
  3. Verify sound support
Future development plans
  1. Integrate touch screen for use with PiBox Media Server
  2. Add support for BLE (Bluetooth Low Energy) devices, such as weather and geolocation sensors
  3. Review integration process for Wifi Direct support
  4. Complete integration of XBMC opkg for Media Player
Additional Information

Notes on archive locations:
I'm currently using Ubuntu One which is fine for limited storage requirements. However, I find I'd rather have my own dropbox. Turns out there is an open source version that seems to work pretty good: ownCloud

I'm researching its setup and use for PiBox and related projects. More to come on this later.

V0.6.0 Release Announcement

Added by Michael J. Hammel about 1 year ago

PiBox V0.6.0 is now available for download, both in source and SD card installation packages. This release marks the first version containing a collection of add-on packages whose purpose is to support one of the two target products being based on PiBox.

Since the 0.5.0 release, PiBox has been structured into a core release on which select products are being developed.
  1. PiBox Development Platform: A platform for custom development of embedded solutions based on the Raspberry Pi.
  2. PiBox Media Server: A media server that can stream webcams and video files or serve them up as NFS files.
  3. PiBox Media Player: A media player based on XBMC or other media players

PiBox Development Platform is ready. It can easily be modified to provide additional features in the core image at build time but is intended to be extended with opkgs.

PiBox Media Server's prototype is ready. It currently streams from a USB webcam and is initially intended for use in small trailers as a simple rear-view camera that can be monitored from the tow vehicle. Additional work is needed to provide support for streaming video files to tablets via USB mounted SD cards. Future development will include support for USB digital TV sticks that can be streamed to the Media Player. Support for temperature, humidity and air flow should be easy to add in the near term. A small touch screen will be integrated to display current configurations and sensor readings. A prototype touch screen is on order. The media server will utilize an externally powered USB hub. Plans are to integrate (and possibly custom design) a USB hub with external connectors that will allow installation in travel trailers to be more cleanly integrated with cabinetry.

PiBox Media Player is partially done but needs more work. XBMC is not properly tested and sound has not been tested. Additionally, playback with hardware accelerated media players needs to be integrated as opkgs. The media player is intended to work with lightweight DLP projectors via HDMI, with the intent that we display on the side of the trailer for a "personal Drive In Theater" experience (using headphones, to avoid annoying the neighbors). This work is waiting on the Media Server to be completed.

Both the Media Server and Media Player need work on the web server to support configuration of the devices. Currently this is done with bui-network-config, a GTK+ application. What should be done is to port the file configuration support from bui-network-config into piboxd and then use the web server to send commands and data to piboxd to perform the configuration.

The initial target market for these devices are travel trailers, as a replacement for overweight TVs and supporting video players. However, this is just an initial target audience and the applicability of these devices to other audiences needs to be explored.

The web site is fully updated to reflect these design changes and is (hopefully) more helpful to those wishing to try out PiBox.

Changes for 0.6.0
See attached changelogs for PiBox and associated packages.

Also:
Dropped development of DisplayLink support as that device was stolen. It will be replaced by a touch screen display that directly connects to the Raspberry Pi's GPIO pins, which will later serve as a sensor and monitor interface.

Upcoming for 0.7.0
  1. Fix streaming to tablets
  2. Add support for flipping display (in case webcam is upside down)
  3. Clean up web interface
  4. Add boot splash
  5. Add support for auto mounting USB connected media files
Future development plans
  1. Integrate touch screen for use with PiBox Media Server
  2. Port bui-network-config into piboxd and integrate into web interface
Additional Information

Notes on archive locations:
I'm currently using Ubuntu One which is fine for limited storage requirements. However, I find I'd rather have my own dropbox.
Turns out there is an open source version that seems to work pretty good: ownCloud
I'm researching its setup and use for PiBox and related projects. More to come on this later.

PiBox Media Server streams webcam as Flash

Added by Michael J. Hammel about 1 year ago

PiBox Media Server 1.0 (beta 0.6.0) is about to be released. I need to do some packaging first, but that release is tested and working. I can stream from the USB webcam using flash to tablets or my desktop. So now I need a plan for where to take this next.

My goal is to create a kickstarter campaign to fund development of the 2.0 product, which I hope will be a financially self sustaining product, using the 1.0 release as the product for the kickstarter campaign. To do this I need a plan for what I'm creating and what I want to do next. I've created that as an issue (RM #226) to track my planning, but here it is again just to get the word out about what I'm planning.

PiBox is now multiple projects:
  1. PiBox: A platform for custom development
  2. PiBox Media Server: A media server that can stream webcams and video files or serve them up as NFS files.
  3. PiBox Media Player: A media player based on XBMC or other media players

Additionally, PiBox Media Server will include (over time) support for sensor management making it similar to a home monitoring system.

PiBox, the custom development platform, is essentially ready. It can easily be modified to provide additional features in the core but is intended to be extended with opkgs.

PiBox Media Server's prototype is ready. It currently streams from a USB webcam and is initially intended for use in small trailers as a simple rear-view camera that can be monitored from the tow vehicle. Additional work is needed to provide support for streaming video files as Flash to tablets via USB mounted SD cards. Future development will include support for USB digital TV sticks that can be streamed to the Media Player. Support for temperature, humidity and air flow should be easy to add in the near term. A small touch screen will be integrated to display current configurations and sensor readings. A prototype touch screen is on order. The media server will utilize an externally powered 10 port USB hub. Plans are to integrate (and possibly custom design) a 10 port USB hub with external connectors that will allow installation in travel trailers to be more cleanly integrated with cabinetry.

PiBox Media Player is partially done but needs more work. XBMC is not properly tested and sound has not been tested. Additionally, playback with hardware accelerated media players needs to be integrated as opkgs. The media player is intended to work with lightweight DLP projectors via HDMI, with the intent that we display on the side of the trailer for a "personal Drive In Theater" experience (using headphones, to avoid annoying the neighbors). This work is waiting on the Media Server to be completed.

Both the Media Server and Media Player need work on the web server to support configuration of the devices. Currently this is done with bui-network-config, a GTK+ application. What should be done is to port the file configuration support from bui-network-config into piboxd and then use the web server to send commands and data to piboxd to perform the configuration.

The initial target market for these devices are travel trailers, as a replacement for overweight TVs and supporting video players. However, this is just an initial target audience and the applicability of these devices to other audiences needs to be explored.

All of this needs to be pushed to the wiki before plans are written up for a kickstarter project.

Another long break ends and new work begins

Added by Michael J. Hammel over 1 year ago

I've taken a long break from PiBox development to deal with some personal issues. We bought a travel trailer, so it wasn't bad personal stuff - it was fun personal stuff. And it leads me to some new ideas for PiBox.

There are a couple of features I'm going to add to PiBox to support our entertainment and safety needs in our new trailer. In short these are:
  1. A wifi backup camera
  2. Network export of SD card data (for movies over NFS)
  3. Wireless audio
  4. A pico DLP projector.
  5. Make PiBox act as a wireless access point.

The projector shouldn't require much extra. Just plug into the HDMI and its ready to go. But I'll need power to it and I'm not sure how I'll deal with that just yet.

The wireless audio should be supported with a USB stick and external speakers.

The network support of SD card data over NFS means making sure the kernel and user space support is in place.

Also, since I'll need to use USB to add the SD cards (to give a variety of video options) I'll need an external USB hub with a bunch of ports. It will need to be powered, and the Pi will be powered from it, including wireless keyboard/mouse.

The wifi backup camera may prove challenging. I've already experimented with a number of solutions and finally found a mix of ffmpeg, crtmpserver and Jw Player to provide the least amount of lag on Fedora. The question is: can I cross compile crtmpserver and will JWPlayer work correctly if served from PiBox? I think the answer to both is "yes", but I've yet to verify that.

Making the Pi into a wireless access point/router should be fairly painless, especially since my default Wifi adapter already supports that feature.

Another side project has been to build a portable power solution for the Raspberry Pi. I've designed the board and have ordered and received the parts, but I've yet to put the thing together. It should allow for battery power to run the Pi, which would be nice for use with the DPL projector. However, I can also just use 110v power at the campsites since we don't plan (yet) on dry camping.

In the end I hope to allow PiBox to provide the following:
  • Wireless backup camera serving via RTP to a tablet browser so I can see behind the trailer while we're driving.
  • A wireless media server providing AVI videos on SD cards.
  • A second Pi with the media server mounted to play AVI's through a DLP projector and wireless speakers while camping.
  • Self-powered media players using DLP projectors for the bunks in the trailer.

Anyway, some fun stuff to work on. Time to get back at it.

Networking: KISS

Added by Michael J. Hammel almost 2 years ago

After much time wasting with connman, I've made some decisions about networking. Connman is nice for mobile devices, but my little board is not intended to be another cell phone or tablet. It's initial purpose is to support XBMCBox, which will sit unmoving connected to a TV. So that simplifies this problem. Future uses can add customized packages to support more complex and/or user friendly network configuration.

First, I can drop connman. It doesn't work easily out of the box and there is little information that I can google that tells me how to configure it. There are test tools you can use but these don't seem to provide me anything useful. The whole project makes it look like connman is just a library for controlling things, which means you have to write your own app. Since XBMCBox will be stuck writing an XBMC plugin in Python (yet another thing I don't know yet), I'd rather not slide my way down that rabbit hole.

So back to KISS - keep it simple, stupid.

I can use wpa-supplicant to manually configure my wifi connections. This seems complex when you first start reading the wpa-supplicant documentation, but you can handle the two most likely cases very simply: no security and WPA2 security. And that will be the first goal of the XBMCBox configuration utility, and it doesn't require anything in PiBox that isn't already there. And I can remove connman to clean things up.

Next, the wired port takes a long time to time out on boot right now. That's because there is no wired connection at the moment. This delay is caused by the S45network init script that tries to dhcp on the wired and wifi ports no matter what. I can fix this by using /etc/network/interfaces to tell me which ports to configure. If the port is not specified in that file, then don't try to configure it on boot up. The XBMCBox configuration utility will have to make updates to that file.

Summary:
  1. Pull connman, but push patch for tests enabling to buildroot project first
  2. Return to to XBMCBox's issue #160

PiBox 0.4.0 release image has been published

Added by Michael J. Hammel almost 2 years ago

I've pushed the first public release of PiBox to Ubuntu One. It's only about 258.6 MB so should be an easy download. It contains all binaries required to build the SD card and scripts for formatting (mksd.sh) the card and then installing (mkinstall.sh) the software to the card.

Be sure to read the wiki page for information on how to use the format and install scripts.

First stable release: 0.4.0

Added by Michael J. Hammel almost 2 years ago

PiBox V0.1 was the initial stable release. It will generate a working cross toolchain, kernel, gles utilities and root file system onto a bootable SD card. The boot goes into X.org with a single terminal window. This release is suitable for use with XBMCBox when that build is ready, which I think it may be close to.

PiBox v0.2 is also ready. This is a only slightly modified version that was tested to build on Ubuntu 12.10. Now builds on Fedora 16, CentOS 6.3 and Ubuntu 12.10.

In order to correctly map git tags to the preset versions in the issue tracker, PiBox v0.3 and v0.4 are the same as v0.2.

Note: If you intend to build XBMCBox for use with PiBox you must build PiBox on a 32bit host due to problems with Python builds in XBMC.

  • userid: root
  • password: pibox

This announcement just moves the status information from the wiki to the issue tracker. The official announcement of 0.4.0 will come after a release package is finalized and pushed to an offsite publicly available archive.

Also available in: Atom