News

v 1.1.0 Release Announcment

Added by Hammel 22 days ago

PiBox Media Center v1.1.0 Release Notes
2020-06-27

Additional Information

General Status
------------------------------------------
PiBox is now broken into several builds, also known as systems. The base system is called the PiBox Development System. It forms the basis for all other builds which are created by applying a series of opkg installs on top of the base system.

There are three other systems now available: Media System, Kiosk and Auto-Kiosk. Various other systems are in still in development.

PiBox Media System is a consumer oriented distribution for distributed media playback. It supports videos, music, pictures, webcams (both on the console and via the web), and SiriusXM.

PiBox Kiosk is a video/picture browser, like a picture frame, with a touch screen interface supporting fast forward, rewind, skip forward or back and pause/play.

PiBox Auto-Kiosk is a video player that can run unattended. It's useful for playing series of videos that start immediately at boot time, without user intervention.

Most system application development is based on GTK+ and Cairo, with limited web interfaces for networking configuration and REST APIs. All systems current run hardware optimized on Raspberry Pis.

PiBox Development System is a generic build system that also allows creating custom software platforms from scratch for any hardware, not just the Raspberry Pi. It has been used on ARM, MIPS, and X86 projects.

Highlights for this release include
  • There was no publicly announced 1.0 release (I just forgot to do it) so this announcment is for the full 0.11 to 1.1 cycle. This is about 3 1/2 years of work so there are a lot of updates. Future releases should come more often, I hope.
  • Everything is now licensed with the 0BSD license, making it very open source friendly.
  • Binary releases to make it easier for end user installation.
  • Support for Raspberry Pi Model B/B+, 2, 3 and Zero, including 3 and Zero WiFi.
  • Switched to a squashfs/overlay boot system in preparation for in-field upgrades. This is now handled by an initramfs.
  • Added a MusicFE player (Music Front End, using omxplayer on the backend) app with carousel-type display.
  • Added a PiPics player app to view static images.
  • Added a PiXM player app for use with XMPCR device.
  • Added license generation from Buildroot.
  • Added graphical WiFi scanner to PiBox Network Config.
  • PiBox Media System and Kiosk's now support better dbus interaction allowing for cleaner interaction with touchscreens.
  • Oh: and touchscreen support was integrated! This is specifically for the kiosk system but works if you install the Media System on the official 7" Raspberry Pi touchscreen.
  • System boots are quieted with only the MIOT (My IoT) logo showing with a boot progress bar.
  • Boot times are down to <20 seconds for RPi 2 and 3 systems.
  • Improved thread handling with semaphores in multiple apps.
  • Improved webcam app: faster startup, less lagtime, hi- and low-res options.
  • Improved PiBox Network Config unit tests help to stabilize network management.
  • Improved Cairo/GdkPixbus image scaling in all apps, such as the analog clock in PiClock and the Launcher UI in the Media System.
  • Metabuild has improved support of system app builds.
  • Core system bumps:
    • Crosstoon-NG: 1.24.0
    • Buildroot: 2019.05.1
    • Busybox: busybox-1.30.1
    • Linux: 4.19.106
Where this is headed
------------------------------------------
There are a variety of new systems in development for the next releae cycle.
  • Ironman is a home automation system with custom protocols for communicating with Android-based sensors.
  • Xeon is a custom phone probject being built on custom hardware based on the PiBox Development System.
  • PiSentry is a motion activated camera that will integrate with both Ironman and the Media System.
  • PiDock is Docker platform for the Raspberry Pi.
  • PiDock86 is a port of PiDock to X86_64 showing the ease of transition from one hardware platform to another.
  • PiFile is a headless file server for the Raspberry Pi.
  • In-field upgrades of any system build is planned for the next major release.

Getting involved
------------------------------------------
PiBox is currently a one man project. I'd like to have more users of the systems and definitely would welcome new developers.

There are two ways to get started using the system.
1. Download the binary tarballs. Each tarball is for a specific hardware platform and a specific system. Inside each tarball are installation instructions.
2. Download the developer tarball, unpack it and use the mksd.sh script to format your SD card. Then use the mkinstall.sh script to install the distribution to the SD card. Use "-?" to get help with either script.

To get started with development, please read the developer wiki on how to build the PiBox Development System.
http://www.graphics-muse.org/wiki/pmwiki.php/RaspberryPi/Software

Contact me at if you're interested in helping out, have ideas for improvement, need help using any PiBox system or just want more information.

-----------------------------------------------------
Changelogs
-----------------------------------------------------

-----------------------------------------------------
Repository: appmgr
-----------------------------------------------------
Bump to version 1.1.0
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
RM #447: Make xterm privileged by default because it's almost always needed that way for now.
RM #712: Switch from condition variables to semaphores for inbound network messages to avoid losing messages on race conditions.
RM #712: Use pthread_cond_wait/signal to avoid spinning thread functions.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
RM #572: Fix pkg-config to properly use staging tree as sysroot when running configure. Add paths to glibconfig.h and gtkconfig.h to CFLAGS because Buildroot's 2017.02.4 .pc files improperly say these are under a lib64 tree instead of a lib tree.
RM #513: Ported appmgr to use libpibox.
RM #471: Send SIGUSR1 to launcher when apps exit.
-----------------------------------------------------
Repository: launcher
-----------------------------------------------------
Bump to version 1.1.0
RM #695: Updates colors of splash images.
RM #746: Add f to reboot so that we don't get hung up waiting on daemons or I/O (which should mostly just be read-only anyway).
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
RM #716: Allow building the launcher for kiosks with -k, which hides the default terminal, restart and netconfig apps.
RM #712: Make use of updated touchProcessor support for better pthread synchronization.
RM #693: Add launcher.cfg for xeon to support rotation of the display.
RM #693: Add CCW rotation support.
RM #694: Don't enable key and button presses if using a touch screen.
RM #694: Clean up display type reporting and testing for touch screen.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
RM #572: Fix pkg-config to properly use staging tree as sysroot when running configure. Add paths to glibconfig.h and gtkconfig.h to CFLAGS because Buildroot's 2017.02.4 .pc files improperly say these are under a lib64 tree instead of a lib tree.
RM #514: Finish porting to libpibox.
RM #471: Disable key and button press event handlers if on a touchscreen. This prevents a button press from being processed before the touch event is handled.
RM #471: Resize icon to be larger so scaling will always be down, not up.
RM #471: Fix scaling keeping aspect ratio to use gfloats instead of ints.
RM #471: Make icons scaled to fit screens. Change rows/cols counts based on the number of apps found by the launcher.
RM #471: Add touchscreen support to launcher.
----------------------------------------------------

Repository: libpibox
-----------------------------------------------------
Bump to version 1.1.0
RM #549: Make sure MT_STREAM actions require a payload.
RM #549: Add missing tag send to piboxMsg.
RM #549: Don't try to write to a NULL pointer.
RM #549: Migrate piboxMsg to a more complete API so multiple apps can use it.
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
RM #712: Fix touchProcessor to use pthread conditional variables for better synchronization.
RM #472: Add pbsetentropy utility, to allow bumping available entropy after seeding /dev/urandom.
RM #694: Switch back to exact match when looking for supported touchscreen because some touchscreens can have multiple devices with the same prefix with at least one having no additional text (so you can't identify it with a substring since all devices could match).
General: Version bump to 1.0 - this should have been done long ago.
RM #694: Add PIBOX_DISPLAY_NORMAL as display size if not BIG or SMALL. Support substring name comparison for supported touchscreens.
RM #694: Make tool build use shared library so it works in Buildroot.
RM #694: Add piboxGetDisplayTouch() so apps can test if we have a touch screen.
General: Remove extra punctuation to make it easier for firstboot to match strings.
RM #694: Add pbtouchstate tool.
RM #694: Add test that displays the active touch screen device, if any.
RM #299: Add touchscreen library support to ptests. Fix cross.sh to properly build ptests and package with the library.
RM #299: Added ILITEK ILITEK-TP to devices the touchscreen library can look for. Fixed cross.sh to build with properly paths to glib/gtk components.
General: Remove extraneous printf arg in debug statement that was uninitialized.
RM #471: Fix submission of absolute coordinates even if we don't match a range properly.
RM #471: Return absolute coordinates in REGION_T structure instead of the 9x9 cell location.
RM #471: Skip local and parent dirents while looking for an event file for the touchscreen. Fails ts_setup() if no matching touchscreen is found.
RM #567: Fix unit tests to use new API names. Clean up header usage. Build with Wall to catch all possible dirty build issues.
RM #567: Fix naming scheme - replace pnc with pibox to differentiate from libpnc.
RM #471: Extend ability to send either a region or absolute coordinates to a registered callback.
RM #471: Add loadConfig to touchProcessor so it can properly set display resolution.
RM #471: Fix touch lib header.
RM #471: Add generalized support for touchscreens.
General: Add getopt to cross.sh.
----------------------------------------------------

Repository: metabuild
-----------------------------------------------------
RM #691: Clean up builds for all possible repos prior to v1.1 tagging.
General: help text update for tags.
RM #764: Add desktop mode to generate desktop (currently just VideoLib) tools that accompany target platform builds.
Merge branch 'master' of gitlab.com:pibox/metabuild
RM #691: Fix repolist processing to match exact project names. Fix misnamed libpibox.sh. Moved pnc to pibox-network-config.
Bump to version 1.1.0
RM #691: Update list of repos for versioning and tagging. Update help text on build.sh to remind me of what v and -t are for.
RM #719: Update README documentation.
RM #739: Added license file based on 0BSD license.
RM #700: Add pidialer to Xeon builds.
RM #716: Build launcher with -k option to hide default apps in kiosk mode.
RM #706: Add xeoncfg package to Xeon packaging.
RM #706: Use -x option to disable smb/stream support in piboxd for Xeon.
RM #707: Add -x to build of launcher, to disable the splash image area.
RM #707: Created metabuild for Xeon projects.
General: Drop hawkeye - it was an experiement before getting console-based webcam working with latest kernels.
RM #396: Fix mjpeg-stream build to use specific git commit. Add musicfe app to builds. Add new build mode: autokiosk.
RM #628: Re-enabled picam - I figured out how to get it working again.
RM #628: Remove PiCam for now because the console camera just isn't working well enough to demo. We'll use web based cameras instead, which work fine.
RM #651: Add -k option when building videofe in kiosk mode.
RM #651: Add kiosk mode (-m kiosk) to metabuild.
RM #657: Add hawkeye to Media Server package list.
Bump to version 1.0
General: Switch build command for pipics from make to cross.sh.
General: added pipics, pixm to build. Fix up libpibox and libpnc cdtools scripts.
General: Fix getopt in build.sh that was broken when adding -o option.
General: Added clone only option to MakeChangelog.sh.
General: Add missing -o argumen to getopt in build.sh.
----------------------------------------------------

Repository: mjpg-streamer
-----------------------------------------------------
Bump to version 1.1.0
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
RM #687: Add support for building either from master.zip or a specific git commit. This became necessary when use of V4L2_EVENT_SOURCE_CHANGE was added to the master branch. I suspect support for this #define will show up with a kernel bump, but until then we can build using USEGIT=1 to use the last known commit that builds.
RM #644: Generate TD from SD if it's not set on the command line. This lets the meta build work with this repo once again.
Merge branch 'master' of gitlab.com:pibox/mjpg-streamer
RM #644: mjpg-streamer closed down it's sourceforge site and moved completely over to the github site. These fixes remove the old site references and now default to the github site build.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
-----------------------------------------------------
Repository: monkey
-----------------------------------------------------
Bump to version 1.1.0
RM #749: Switch from tarball release from monkey-project.com to git clone from GitHub because the former seems to have disappeared. Clone and checkout to v1.2.2 which is the version that's been used up till now.
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
-----------------------------------------------------
Repository: musicfe
-----------------------------------------------------
Bump to version 1.1.0
RM #719: Update README documentation.
RM #739: Added license file based on 0BSD license.
RM #396: Add support for both GDK_KEY_<arrow> and GDK_KEY_KP_<arrow>. Fix off-by-one malloc that locked up on Pi but not on Intel desktops. Fix use of default image path for album.png if not using T option.
RM #396: Properly handle setting the dbTop and support multiple musiclib directories.
RM #396: Copy the correct app icon to the opkg.
RM #396: Ignore data/musicfe.cfg so we can use it for testing without actually checking it in.
RM #396: Fix call to player to pass correct index.
RM #396: Add example config that runs vlc instead of omxplayer, which can be used for testing on build host.
RM #396: Add player controls and fix player start to work properly.
RM #396: Add getopt to db generator script. Add sections (functions, initialization, main, etc.). Add option to support setting directory to scan.
RM #396: Disable dbtop setting in default configuration file. Fallback to defaults in code.
RM #396: Sort album tracks and display them in a monospace font so that the track numbers and titles are properly aligned.
RM #396: Add support for displaying and highlighting/navigating album tracks.
RM #396: Add default album image to build.
RM #396: Resize all coverart to be uniform.
RM #396: Add full navigation support for artists and albums with a stub for listing album track titles.
RM #396: Add script that generates the db from existing mp3 files.
RM #396: Initial import of early-stage music player app (or it's early stage framework at least).
----------------------------------------------------

Repository: omxplayer
-----------------------------------------------------
Bump to version 1.1.0
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
RM #687: Bump back up to master branch to pick up fixes for use with glibc > 2.7 (PiBox is bumped to 2.9).
RM #687: Add missing include dir for dbus/dbus.h to makefile config.
General: Temporary fix to get around broken build in master for OMX_DISPLAY_ALPHA_FLAGS_DISCARD_LOWER_LAYERS.
RM #656: Bump build to master commit.
RM #644: Remove man page from build because it breaks every now and then and we don't really need it.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
-----------------------------------------------------
Repository: pibox
-----------------------------------------------------
RM #761: Fall back to kernel 4.19.106 (and matching fw) because 4.19.122 broke touchscreens and 106 is the last known working version before PiBox release 1.1.0.
RM #691: Bump bind to latest as per Buildroot latest.
RM #691: Allow rebuild of pibox src and xcc rpm files without creating duplicates.
RM #691: Fix icu patch to not include the version in the url.
RM #691: Bump icu to 60-3 and change format of URL to match upstream.
Bump to version 1.1.0
RM #564: Don't change location of resolv.conf to be in volatile storage or else pnc won't work across reboots.
RM #705: Disable Samba logging to syslog.
Merge branch 'master' of gitlab.com:pibox/pibox
RM #632: Enable wifi devices even if they aren't configured so wifi scanning can work out-of-the-box.
RM #736: Make "Load shadow" the default for all platforms when using fbturbo.
RM #736: Don't copy in busybox skeleton directory (during build of initramfs.gz) because there isn't one.
Merge branch 'master' of gitlab.com:pibox/pibox
RM #742: Make boot verbose (no quiet in cmdline.txt) by default. Fix mkinstall to use sudo when updating config.txt to use the initramfs in overlay mode. Setup init scripts to deal with being quiet if quiet is specified on the kernel command line.
Merge branch 'master' of gitlab.com:pibox/pibox
RM #736: Fix mtd and evtest builds in Buildroot. Fix generation license files as well.
RM #736: Add missing firmware for RPi 3, Model B+ wifi.
RM #719: General clean up of the README.md.
RM #719: Move README to README.md so it shows up in GitLab.
RM #719: Update README documentation.
RM #739: Added license file based on 0BSD license.
RM #696: Properly configure opkg.conf so package info is retained between boots. Package info is stored in overlay.
General: Generate and install legalize files from Buildroot to rootfs.
General: Add prerequisites note to build.help.
General: Make rpi2 the default for running qemu (because it seems to be the only one that works at all).
RM #698: Run shellcheck processing on all install scripts.
RM #698: Run shellcheck processing on all skeleton scripts.
General: Set a kernelname.txt in the boot partition with the name of the kernel being used. This can be used for kexec's since the kernel name is different depending on hardware type.
General: Fix specification of kernel filename when generating mkinstall.sh to match requirements for different HW types.
RM #447: Add pdebug, pstep to allow console output and stepping in init script. Add missing migration from initramfs to rootfs of /dev, /proc, /sys.
RM #447: Run mdev in firstboot so that pibox-config can be properly configured for the display device.
RM #447: Allow stopping at the end of firstboot instead of rebooting by adding firstboot=noreboot to kernel command line.
RM #447: Extend install scripts (and qemu test tool) to support installing to file or SD card and either traditional rootfs or overlay structured.
RM #447: Separate busybox configs for dev platform vs initramfs.
RM #447: Quiet blockhandler output to console (still goes to logs).
RM #447: Update initramfs to properly mount the squashfs into an overlay. Removed skeleton since it isn't necessary (we don't use it for Buildroot anymore).
RM #447: Build busybox to be static so it can be used in initramfs. Update qemu.sh to use initrd. Integrate initial pass at init script for overlay setup.
RM #447: Minor updates to qemu script. This just doesn't work with PiBox yet for unknown reasons.
General: Fix JOBS to use max number of cores (it can be overridden on the command line).
RM #447: Add squashfs to generated rootfs image types. Add o option to generate overlay structured rootfs on image device or file. Add qemu.sh script for testing images under QEMU.
RM #447: Add qemu startup script. It's just a work in progress, since QEMU doesn't seem to work right with RPi2.
RM #447: Fix mksd and mkinstall to properly create an image file that can be used with QEMU.
RM #689: Move console output to tty3 and disable blinking cursor with kernel parameters.
RM #687: Add upstream patch to handle changes to dhcpd shared libs installation.
Merge branch 'master' of gitlab.com:pibox/pibox
RM #687: Add upstream patch to handle changes to dhcpd installation.
RM#687: Remove xf86DisableRandR() from fbturbo which Xorg drivers should not be using anymore. Rename shadowUpdateRotatePackedWeak/shadowUpdatePackedWeak to shadowUpdateRotatePacked/shadowUpdatePacked for Xorg 1.20. The latter also requires adding "Load shadow" to xorg.conf, which is handled on a per system (such as Xeon) basis.
RM #687: xeon needs to use the same kernel name as rpi1 in mkinstall.sh.
RM #712: Add "rpi1" as a HW type to mkinstall.sh so the kernel gets copied to the /boot directory with the proper filename.
Merge branch 'master' of gitlab.com:pibox/pibox
RM #687: Refresh PiBox core development components: xcc 1.24.0, Buildroot 2019.05.01. Drop xcc 1.15.2 and 1.18.0, and custom kernel 4.19.y config (use defconfig instead).
Merge branch 'master' of gitlab.com:pibox/pibox
RM #708: Fix install scripts to format and install to an image file. This is so I can work on getting QEMU to boot PiBox and allow me to test apps without having to use the Pis directly (which can be hard if I have to tear apart a Xeon phone, for example).
General: Okay, actually add the missing libmad patch. Sheesh.
General: Add missing libmad patch (moved or removed from upstream but Buildroot still depends on it). Increase ext3 image size to 3M for busybox.
General: Fix xcc build packaging to work on Ubuntu 18.04.
RM #698: Shellcheck updates. Removed duplicate bashsetup.sh.
RM #698: Added target for running shellcheck against shell scripts used in both build and runtime. Fixed problems in mksd and mkinstall found by shellcheck.
General: Fix buildroot packaging to use a local mount point instead of the system mount point.
RM #472: Remove fbtft driver support. PiBox devices support HDMI only currently.
RM #472: Only run depmod in firstboot. Place smb/nmb into the background - nothing depends on them so it lets other stuff startup in parallel.
RM #472: Add RNG setup that not just seeds urandom but bumps the available entropy at boot time based on that seed.
RM #472: Switch to LZ4 kernel compression, which is not enabled by default by the defconfig for RPi.
RM #472: Speed up the method used to load modules from modules.conf, and remove extraneous modules that are already handled (re: loaded) by mdev.
RM #704: Switch to using PLATFORM in VERSION_CODENAME in os-release file.
RM #704: Add /proc/device-tree/model information to pibox-version file in firstboot.
RM #472: Switch to just using mdev (and not nldev) because it's working better now to load needed drivers.
General: Add status to dd command when writing to SD card.
RM #472: Speed up module identification and loading, shaving about 7 seconds off the boot time. Fix RPi spi module name.
RM #556: Pull brcmfmac43430-sdio.txt from RAW github url so we get the proper configuration text instead of a GitHub HTML response. This is what was keeping the Pi Zero W from making the wifi interface available.
RM #694: Fix typo when referencing rpi-ft5406 driver in firstboot.
RM #694: Fix up firstboot and associated files so firstboot properly identifies touchscreens.
General: Clean up script so it passes ShellCheck correctly.
RM #688: Add PLATFORM to os-release so we can more easily identify rpi, rpi2 and now xeon releases.
RM #694: Add config.txt options to disable rainbow box and warning icons from firmware for Xeon.
RM #694: Merge in change for testing if touchscreen is the official RPi touchscreen to firstboot.
RM #694: Add missing evdev module for touch screens.
RM #694: Added pbtouchstate tool to libpibox build and install.
RM #689: Remove rainbox box, RPi cpu icons and undervolt lightning bolt on boot.
RM #472: And lpj, calculated by firstboot, to kernel boot args to speed boot process.
RM #687: Fix some boot time errors with Alsa and bluetooth.
General: Be quieter when generating the rootfs ext3 image for buildroot-pkg target.
RM #690: Bump to 4.19.y because the upstream Raspberry Pi firmware (userland repo) only has a master tag (no others) and master only works with the latest kernel release (tvservice fails otherwise).
RM #687: Remove ipv6 controls since we don't use ipv6 in PiBox.
RM #688: Add os-release to distribution.
General: Minor documentation cleanup.
RM #447: Bump Busybox as part of initramfs generation in preparation for upgrade management changes.
RM #687: Remove outdated Busybox configurations.
RM #687: Remove devmem2 from buildroot. It's not being used and the upstream is not reachable.
RM #299: Add Xeon as a HW option, which maps to HW=rpi but adds additional files to the image for the touchscreen.
RM #299: Add hid_multitouch driver to support Xeon project.
RM #299: Add support to the installation script to update the config.txt for Xeon, the PiBox phone.
RM #669: Add missing cron directory creation to postbuild.sh. This was done a long time ago but was not committed or pushed.
RM #687: Build refresh: Add ubsan.c patch to allow gcc 7.x or higher to build linaro toolchain for rpi1 build.
RM #687: Build refresh: fix broken urls in Buildroot packages.
RM #685: Add ubsan.c patch to allow gcc 7.x or higher to build linaro toolchain.
Merge branch 'master' of gitlab.com:pibox/pibox
RM #669: Add init script for starting cron daemon.
RM #660: Add missing hashlib to python build so mk_passwd works properly.
RM #628: Add V4l2 libs to build for webcam use.
RM #628: Fix cmdline.txt to allow reusing USB port for web cam.
RM #652: Fix broken SMB init script to create missing directory. Change security setting in smb.conf from "share" to "user", as the former has been retired.
General: Add build date stamp to pibox-version.
Merge branch 'master' of gitlab.com:pibox/pibox
RM #644: Add patch for updated download site for patchelf.
RM #644: Proper /etc/shells is now required for ssh logins with Buildroot 2018.05.
RM #644: Add missing php cli to Buildroot config for 2018.05. Remove S40xorg, which was added with Buildroot 2018.05, using postinstall.sh.
RM #644: Enable xcc-debug to be built before packaging along with the toolchain packaging.
Merge branch 'master' of gitlab.com:pibox/pibox
RM #644: Removed telent from core, along with a few other extras. Bump Buildroot to 2018.05. Bump Busybox to 1.29.1.
RM #614: Added brcmfmac driver to modules.conf, but it's disabled by default because it isn't working in PiBox yet.
RM #556: Add brcmfmac firmware to build. Make it possible to specify install directories for both kernel firmware and downloaded firmware objects like brcmfmac's txt file.
RM #627: Parse display type from first word in pibox-config since tvservice can generate more than just one word between the []'s.
Merge branch 'master' of gitlab.com:pibox/pibox
General: Add buildroot patches to update libpng.
General: Find better way of parsing monitor type via tvservice. Add evdev so touch screen works.
General: Add comments to Wifi dongles for support of combined AP/client.
General (for Ironman): Add php cli and NodeJS to core.
General: Add Pi 3 to Pi 2 reference, since their equivalent in the build.
General: Bring Buildroot 2017.02 build up to date with upstream libpng patches and a custom patch to pull nettle from gnu.org because it's old home seems to be broken.
General: Fix Packager contact in xcc.spec.
General: Add second xterm with larger font. Because I'm tired of trying to use a tiny keyboard to force the "Huge" font from the right click menu.
RM #527: Add missing openbox config files to git repo (they were hidden by a bad gitignore setup).
RM #572: Update build for RPI 1 (B+) boards.
RM #572: Bump the default version of Crosstool-NG to 1.23.0, Kernel to 4.9.y and Buildroot to 2017.02.4 for rpi2.
Merge branch 'master' into br-2017-07
Bump to version 1.0
RM #572: Add support for Buildroot 2017.02.4 release, which required switch to OpenBox WM.
RM #572: Fix problems introduced by support for Raspberry Pi Touchscreen to core platfrom UI boot.
RM #572: Add missing colon suffix to ftp entry in skeleton group file.
RM #572: updated build help reference to KB env var. It's used to reference a GIT tag.
RM #572: Switch to proper compiler options for gles compiles on RPi2 hardwawre.
RM #572: Add dummy config for 4.9.y.
RM #572: Bump version to 1.0. Add toolchain config for Crosstool-NG 1.23.0.
RM #471: Change /dev/input files to 644 so non-root apps can read the touchscreen devices.
RM #471: Change initial xterm under blackbox to be fullscreen so it always fits on whatever display we're using.
RM #471: Mount mmc as RW so we can auto-update config.txt on firstboot.
RM #471: More cleanup for a clean firstboot with a Raspberry Pi 7" display.
RM #471: Overscan really isn't needed on HDMI screens, so I'm disabling it in config.txt.
RM #471: Add touchscreen drivers if on an LCD screen.
RM #471: Add RPi touch specific xorg.conf.
RM #471: Fix X startup to handle either HDMI or RPi touchscreen (LCD).
RM #471: If on RPi touchscreen, extend config.txt on firstboot to support it.
RM #471: Generate a display config file at boot time.
RM #471: Add overlays directory to installation to SD card.
RM #557: Allow ttyusb ports to be grouped by "nobody" so unprivileged apps can access those ports.
RM #550: Fix BASE default path to remove the trailing slash. That fixes umounts when the stick is pulled.
RM #538: Fix URL for pibox source when packaging source.
----------------------------------------------------

Repository: pibox-network-config
-----------------------------------------------------
Bump to version 1.1.0
RM #564: Fix loading of DNS entries to not fail if entries are not NULL.
RM #566: Fix base address to be grabbed from configured interfaces address for interface defined in hostapd.conf, or wlan0 if interface is not configured in hostapd.conf. Add test data to verify this should be working.
General: More updates to bump to version 1.0.
General: Forgot to bump version to 1.0 with everything else.
RM #632: Fix background of scanner now that it's in a tab to black, and adjust the colors of fonts accordingly. Change the way we find wireless devices that doesn't rely on the devices being up and configured. Change updateScan() to update required lists of data even if we don't actually update the display.
RM #740: Reduce font sizes and contrast text color to background for scanner.
RM #686: Moved wifi scanner into a tab to reduce space requirements and made scanner responsive to window resizing.
General: Fix SSID display buffer size.
RM #613: Typo fix: change strup to strdup.
RM #613: When there is no interface for host ap (as there isn't when setting up AP in Ironman monitor node) then create one first before trying to save it's configuration.
General: Adding debug statements.
General: Added some logging when saving hostap configuration.
RM #613: Fix identification of requested interface. Fix building IP address for from base address.
General: Add missing net directory for use in test (T) mode.
RM #580: Set "WPA RSN" as proto field in wpa_supplicant (since that's all we support). Remove extraneous printf() arguments when writing key mgmt field.
RM #580: pncSaveHostAP - used configured PNC_ID_HAP_INTERFACE or a default if none is specified.
RM #580: PNC_ID_RESOLV - filename in path cause duplication of filename when used. PNC_ID_NETIFACES - add configurable path for finding network interface directories under /sys (or test directory).
RM #580: pncLoadInterfaces - dup name when parsed so it can live past next strtok() call. pncLoadNet - use configurable path to find network devices so we can test in-tree.
General: Minor comment fix.
General: Minor fixes to logging message to change them from ERROR to INFO.
General: If inbound value is NULL (should not happen) then dup an empty string.
RM #572: Fix pkg-config to properly use staging tree as sysroot when running configure. Add paths to glibconfig.h and gtkconfig.h to CFLAGS because Buildroot's 2017.02.4 .pc files improperly say these are under a lib64 tree instead of a lib tree.
RM #572: Fix UI to run in windowed (with menu) mode if -e is not used.
RM #567: Port to new libpibox API prefixes.
General: Fix compile warning.
Merge branch 'wifi-scanner' of gitlab.com:pibox/pibox-network-config into wifi-scanner
RM #558: Add all 14 channels for access point channel selection. Move IP address to a text entry field because scanner doesn't leave room for it on PiBox. Added notes.txt as a reminder of how the channel frequencies map to the structure in wifiscanwidget.c.
RM #558: Fix segfault exposed when run on ARM.
General: Add getopt to cross.sh.
RM #558: Fix graph offset so channels are more easily identified.
RM #558: Completed first working version of graphing of channel signal strength.
RM #558: Basic eliptical graph of signal strength. Needs lots of work.
RM #448: Add axis for graph of BSS data.
RM #558: Assign colors to SSIDs based on BSS entries.
RM #558: Add BSS processing, just to see the BSS entries in the area, their strength and channel. This is in prep for graphing them.
RM #558: Switch to static link of .a so gdb works from source (not-installed) build.
RM #558: Switch to using a custom GTK widget, which allows handling async operations much better.
RM #558: Add thread to handle automatic updates to the wifi scan window.
RM #558: Initial support for a wireless scan component. It's klunky but it will be sufficient for the PiBox platform.
General: Fix repo location in cdtools script.
----------------------------------------------------

Repository: piboxd
-----------------------------------------------------
Bump to version 1.1.0
RM #504: Update piboxd unit tests to work correctly. Fix setWireless() to validate inputs correctly. Fix timerProcessor() to ignore errors from select().
RM #748: Fixed size of ipaddr field to be large enough for a tag, which is being used for an ipaddr but could be as large as a uuid.
General: Update comments about message types - they need to be migrated to piboxlib.
RM #719: Update README documentation.
RM #741: Increase frame rate by 1/sec for slightly better images. Apparently the phone can handle this.
RM #741: Disable externally configured webcam command in favor of internal command usage, which will allow for using either hi- or low-res options.
RM #741: Make every request for the webcam kill any existing webcam process first. Allow request for either hi-res or low-res webcam.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
RM #712: Switch from condition variables to semaphores for inbound network messages to avoid losing messages on race conditions.
RM #712: Fix pthread use to include conditional variables to avoid spinning in thread functions and have better synchronization.
RM #705: Also disable IoT processing on demand.
RM #705: Add vers=1.0 to default smb mount command. Add support for disabling smb and streaming threads for devices that won't need them (like Xeon).
RM #663: Extend multicast server to add available interfaces that are IPv4, not loopback and configured instead of just IPADDR_ANY which only grabs the first one it finds (or maybe a random one, who knows).
RM #628: Set the proper command to use for mjpeg-streamer so it works right with recent versions of omxplayer on the console.
RM #610: Cleaned up IoT code to reflect moving all handling to the imrest server, leaving only bare minimal mulitcast discovery responses.
RM #582: As part of IoT support, extend multicast processing to work properly with messages from Jarvis (specifically with Jarvis registration with the monitor), to allow inbound commands to be forwarded to IoT devices.
General: Disable profiling by default in the build.
RM #580: Add support for a new message type, MT_SYS with a single action, MA_REBOOT. This allows the web UI to request a system reboot via piboxd.
RM #580: Fix setWireless to write out the correct fields instead of just iterating over them and assuming inbound data was in the specified order.
General: Add gitignore for this project.
RM #580: Load the network device names and the network interfaces file before continuing in saveAP().
RM #580: Added uap0 to network/interfaces test file.
RM#580: Fix setAP() so it properly unpacks and saves the inbound message, including base address.
General: Initialize more pointers that newer gcc complains are not initialized.
Merge branch 'master' of gitlab.com:pibox/piboxd
General: Initialize pointers that newer gcc complains are not initialized.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
RM #572: Fix pkg-config to properly use staging tree as sysroot when running configure. Add paths to glibconfig.h and gtkconfig.h to CFLAGS because Buildroot's 2017.02.4 .pc files improperly say these are under a lib64 tree instead of a lib tree.
RM #567: Migrate to new libpibox API names.
-----------------------------------------------------
Repository: piboxwww
-----------------------------------------------------
Bump to version 1.1.0
RM #719: Update README documentation.
RM #741: Support low-res and hi-res modes for webcam. Fix quit to properly exit the webcam on the server. Fix dialog call when improperly seting pw for users.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
RM #580: Fix log class to properly use a static class variable (logFile).
RM #580: Fix getMAC and getIP to return an empty string if no interface is passed in. Remove extranous code copied from imwww for handling return codes when socket calls fail. Add base address field to Access Point tab in UI.
RM #580: Add support for base address in JS AP configuration save function.
RM #580: Add shell script to run builtin PHP web server for testing web services.
RM #580: Add init class to handle setup of directories, used to allow testing directly from source tree.
General: Add .gitignore for this project.
RM #580: Port log class to use init class to find directories for log files.
RM #580: Integrate init class so we can start to migrate to being able to run from source tree for testing purposes.
RM #580: Add support for base address to saveAccessPoint().
Merge branch 'master' of gitlab.com:pibox/piboxwww
RM #580: Check socket return code and exit gracefully on error.
RM #580: Change "errMsg" to "$errMsg" so error message is properly printed in javascript dialog.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
-----------------------------------------------------
Repository: picam
-----------------------------------------------------
Bump to version 1.1.0
RM #695: Update color of splash image.
RM #549: Remove deprecated piboxMsgSend from utils header.
RM #549: Migrate picam to libpibox's version of piboxMsg(), which is now more full featured than the old local version, which is being removed.
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
RM #717: Make picam a privileged app on installation and remove it from privileged list on package removal.
RM #677: Fix picam postinst to properly set perms/ownership of files.
RM #679: Add touchscreen support. Touching anywhere on the screen causes picam to exit.
Merge branch 'master' of gitlab.com:pibox/picam
RM #628: Update omxplayer command for use with recent version of omxplayer (so it plays better on the console).
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
RM #572: Fix pkg-config to properly use staging tree as sysroot when running configure. Add paths to glibconfig.h and gtkconfig.h to CFLAGS because Buildroot's 2017.02.4 .pc files improperly say these are under a lib64 tree instead of a lib tree.
RM #471: Resize icon to be larger so scaling will always be down, not up.
RM #567: Migrate to new libpibox API prefixes. Clean up from building with Wall.
----------------------------------------------------

Repository: piclock
-----------------------------------------------------
Bump to version 1.1.0
RM #695: Update splash image colors.
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
RM #569: Switch to using GdkPixbuf for scaling images so analog clock will properly fit in to any display. Reduce font size in test theme to match size of system theme so calendar fits better on small (RPi 7" touch) screens.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
RM #572: Fix pkg-config to properly use staging tree as sysroot when running configure. Add paths to glibconfig.h and gtkconfig.h to CFLAGS because Buildroot's 2017.02.4 .pc files improperly say these are under a lib64 tree instead of a lib tree.
RM #471: Resize icon to be larger so scaling will always be down, not up.
RM #567: Migrate piclock to new libpibox API prefixes.
RM #560: Clean out some unused code.
RM #560: Fix packaging to include themes.
RM #560: Added roman theme.
RM #560: Comment updates explaining the theme configuration file format.
RM #560: Add support for using an overlay image to place over the face and hands.
RM #560: Add clock overlay (like a glass or plastic top) support.
RM #560: Abstract the hand drawing function so it works for any hand. Add in the minute and second hands.
RM #560: Clean up the test theme hands to fit better over the clock face.
RM #560: Fix test theme hour hand to properly fit over its clock face.
RM #560: Fix the hour hand rotation to match the current hour.
General: Ignore the "compile" file generated by autoconf.
RM #560: Added hour hand overlay to clock face.
RM #560: Get original clock working on F22 before continuing on to theme support.
RM #560: Initial test of themeing for piclock.
General: Add gitignore file so I can have temporary files in a subdir.
-----------------------------------------------------
Repository: pipics
-----------------------------------------------------
Bump to version 1.1.0
RM #695: Update splash image to bright green.
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
Merge branch 'master' of gitlab.com:pibox/pipics
RM #739: Added license file based on 0BSD license.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
RM #572: Fix pkg-config to properly use staging tree as sysroot when running configure. Add paths to glibconfig.h and gtkconfig.h to CFLAGS because Buildroot's 2017.02.4 .pc files improperly say these are under a lib64 tree instead of a lib tree.
RM #471: Change default dbtop to /media/usb.
RM #570: Use gdk_pixbuf to automatically rotate images based on exif or tiff metadata.
RM #570: Center images on display.
RM #471: Handle removing timeout handlers better when touch events override them.
General: Make icon larger so it can be scaled down by the launcher based on screen sizes.
RM #471: More cleanup to remove old player-processing.
RM #471: Cleanup code - remove deprecated bits.
RM #471: Remove player module - it's not needed with Cairo implementation.
RM #471: Switched from using feh to using Cairo to show images. Works better with touchscreen handling.
General: Fix cdtools script.
RM #471: Initial import of pipics app for playing image slideshows.
-----------------------------------------------------
Repository: pitemplate
-----------------------------------------------------
RM #549: Update to latest version of picam in autoconf template.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
General: Add cdtools script.
General: Initial import of sample build systems for apps and 3rd party project packaging.
-----------------------------------------------------
Repository: pixm
-----------------------------------------------------
Bump to version 1.1.0
RM #695: Update colors of splash image.
RM #557: Code cleanup - remove extraneous code.
RM #557: Change channelMgr thread to complete setup, then spin repeatedly through the list of requests to the device. Fix UI to be more responsive, primarily by fixing thread accesses and, more importantly, fixing how get_packet() operates. Make all commands open and setup the port, issue the command and get response, then close the port instead of leaving the port open all the time (which causes data corruption). Add pixm to appmgr.priv on installation to guarantee port access.
RM #549: Remove piboxMsgSend from utils. It's not used and if it is needed later there is a better version in libpibox.
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
Merge branch 'master' of gitlab.com:pibox/pixm
RM #739: Added license file based on 0BSD license.
Bump to version 1.0
RM #572: Fix pkg-config to properly use staging tree as sysroot when running configure. Add paths to glibconfig.h and gtkconfig.h to CFLAGS because Buildroot's 2017.02.4 .pc files improperly say these are under a lib64 tree instead of a lib tree.
General: Resize icon so it can be scaled down with new launcher scaling support.
RM #567: Migrate to new libpibox API prefixes. Clean up after building with Wall.
General: Replace template cdtools function with pixm-specific version.
RM #557: Set a maximum retry on getting a response before timing out and returning a failure. This allows the caller to retry or fail gracefully.
RM #557: Re-enable channel scans after a period of time. This updates the entire category/channel listsing periodically.
RM #557: Major cleanup to deal with dropped bytes.
RM #557: Cleanup icon handling so UI displays correctly on Pi.
RM #557: Cleanup packaging.
RM #557: Initial import of pixm, the PiBox XMPCR app.
----------------------------------------------------

Repository: pmsui
-----------------------------------------------------
Bump to version 1.1.0
RM #742: On installation, if quiet is not set in cmdline.txt then set it so boot up hides all boot messages.
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
Merge branch 'master' of gitlab.com:pibox/pmsui
General: Reduce size of default fonts. Helps fit piclock calendar on smaller screens.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
-----------------------------------------------------
Repository: psplash
-----------------------------------------------------
Bump to version 1.1.0
RM #742: Make psplash init script work with core init script quiet/verbose settings.
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
RM #712: Add missing graphics for updated logo and progress bar.
RM #712: Reduce the size of the psplash image so it fits on all supported screens. Remove white pixels on corners of progress bar.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
RM #572: psplash failed to compiled with updated Linaro compiler toolchain because of the use of an inline specification to a function in psplash-fb.c. Removing that inline specification fixes the compile time problem and, I think, should not hurt the splash display since it won't be used for fast screen updates.
-----------------------------------------------------
Repository: test-project
-----------------------------------------------------
Bump to version 1.1.0
Bump to version 1.0
-----------------------------------------------------
Repository: videofe
-----------------------------------------------------
Bump to version 1.1.0
RM #695: Update colors of splash image.
RM #454: Don't update lists until a TAB is used (avoids possible async references). Fix poster display to be appropriate for which db type is being displayed, including showing no poster if there are no entries for a given db. Fix buffer overrun when reading config file.
RM #454: Add watcher thread that uses inotify to look for db changes and updates the display immediately.
RM #719: Update README documentation.
RM #709: Update control file with gitlab url.
RM #739: Added license file based on 0BSD license.
RM #682: Fix kiosk modes so they keep omxplayer running and get a smooth switch between playlist items. Also fix FF to not kill the player if it tries to go past the end of the video in kiosk mode.
RM #682: Add status and openuri commands to dbuscontrol.sh to allow kiosks to manage playlists without restarting omxplayer.
RM #712: Add updated videofe.cfg and dbuscontrol.sh to autokiosk build.
RM #714: Add missing dbuscontrol.sh script that didn't get added to last commit.
RM #714: Switch from FIFO to dbus control of omxplayer under touchscreen. Add missing SIGINT before shutting down touchscreen library otherwise the library doesn't shutdown until the timeout.
RM #712: Use custom cfg for kiosk=1 mode to disable use of o both, which is causing studder on the kiosk display.
RM #713: Skip paths without "/videolib" in them. This can happen if the parent path includes "movies" or "tv". Fix build warning for missing prototype found in dbkiosk.h because it hadn't been added to videofe.h.
RM #681: Update videofe build to support -k2 for autokiosk mode (adding appmgr.cfg to launch video instead of launcher).
RM #651: Add kiosk build mode to cross.sh. This just adds -k to the start command file, if specified.
RM #653: Add -D_FILE_OFFSET_BITS=64 so that stat() doesn't fail when trying to retrieve JSON data for video files. Check return code of stat() when slurping JSON data files and don't continue if there is a problem. Add more trace logs to better catch similar problems in the future.
Merge branch 'master' of gitlab.com:pibox/videofe
RM #572: Change default omxplayer command to call the bin instead of the shell script because the shell script requires bash.
Bump to version 1.0
RM #572: Tie the package version to the version.txt file to make it easier to update the version string automatically with the metabuild.
RM #572: Fix pkg-config to properly use staging tree as sysroot when running configure. Add paths to glibconfig.h and gtkconfig.h to CFLAGS because Buildroot's 2017.02.4 .pc files improperly say these are under a lib64 tree instead of a lib tree.
General: Add missing k to help message command options.
RM #471: Resize icon to be larger so scaling will always be down, not up.
RM #471: Add black top level window in kiosk mode to avoid ugly flashing to launcher on touchscreen display.
General: Removed old test image no longer needed.
RM #471: Added kiosk mode to videofe to play a series of videos sequentially, using the touchscreen to move to next/prev videos or ff/rewind.
General: typo in debug.
RM #471: Remove xterm launcher from default player command for PiBox Media Center.
RM #471: Fix up player to work on HDMI as well as LCD after adding support for touchscreens.
RM #471, RM #567: Migrated touchscreen support to libpibox. Updated libpibox API usage to remove pnc prefixes.
----------------------------------------------------

Repository: videolib
-----------------------------------------------------
Bump to version 1.1.0
RM #467: Added support for changing the real title name by editing the field and hitting enter.
RM #719: Update README documentation.
RM #739: Added license file based on 0BSD license.
General: Fix TV episode processing to properly show episode image.
RM #661: Switch to using https when downloading images from TheMovieDB.org and TheTVDB.com, even if their metadata still uses http.
General: Remove directory that is generated using the makelist.sh script.
General: Fix Packager contact in spec.
RM #527: Fix integration of version.txt into packaging so it actually works.
RM #572: Add tgz package for videolib (along with RPM).
RM #572: Add missing fixup.sh to packaging build.
Bump to version 1.0

v 0.11.0 Release Announcment

Added by Hammel almost 4 years ago

PiBox Media Center v0.11.0 Release Notes
2016-10-11

Additional Information

General Status
------------------------------------------
PiBox Media Center is a consumer oriented distributions for distributed media playback in travel trailers without Internet connectivity. The UI is based on GTK+ with Cairo and the system runs on the Raspberry Pi optimized PiBox Developement Platform distribution.

Highlights for this release include
  • Support for Raspberry Pi Model 2
  • A new app: picam (webcam on the connected monitor)
  • Switched VideoLib database to JSON and added support for TV series
  • Video selection now includes poster and series artwork plus summaries
  • Video playback now supports both HDMI and analog audio
  • Major performance improvements in the video front end app and webcam playback
  • Made fbturbo the default X server
  • New functionality and JSON support to libpibox
  • Minor UI cleanup including dropping the X cursor
  • Added support for multicast registration of IoT devices along with REST interface definition
  • Major code cleanup of Pibox Network Config and associated libpnc.
  • Upgrades to latest upstream firmware
  • Verified compatibility with available upstream rootfs packages
  • Bump cross toolchain gcc to 4.8.5
  • Improved metabuild for opkgs
  • Improved cross-toolchain builds for all opkgs
  • Updates to piboxd server unit tests

PiBox Media Player's can now perform better in video selections as long as the VideoLib app was used to reduce the
size of poster art.

Where this is headed
------------------------------------------
Near term plans include support for a PC-based XM Satellite Receiver and improving the Video Front End UI to be more Plex-like.

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, additional media player apps and voice and smartphone control.

0.12 Plans
------------------------------------------
  • Android app remote control over wifi
  • Hardware related projects
    • Custom cases
    • Rechargable LiPo battery supply w/ power on/off
    • Integrate multiport USB "shield" with Media Server
  • Possible BLE (Bluetooth Low Energy) dongle integration
  • TV app using USB adpater
  • Music player app

Getting involved
------------------------------------------
PiBox is currently a one man project. I'd like to have more users of the system and welcome new developers.

To get started using the system please download the tarball, unpack it and use the mksd card to format your SD card. Then use the mkinstall script to install the distribution to the SD card.

To get started with development, please read the developer wiki on how to build the PiBox Development Platform.
http://www.graphics-muse.org/wiki/pmwiki.php/RaspberryPi/Software

Contact me at or if you're interested in helping out, have ideas for improvement or just want to know how to use the system.

-----------------------------------------------------
Changelogs
-----------------------------------------------------

-----------------------------------------------------
Repository: appmgr
-----------------------------------------------------
Bump to version 0.11
RM #511: Minor tweek to getops to add usage statement.
RM #511: Allow setting toolchain, staging and opkg directories on the command line.
General: Migrated priv setting to renamed pibox-network-config.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: bluez
-----------------------------------------------------
Bump to version 0.11
RM #547: Switch to version.txt.
RM #252: Integrate build of BlueZ 5 version. The default is the 4.x version. Setting B5=1 bulds the 5 version. PiBox defaults to the 4.x version for now.
RM #252: Switch repos for bluez-tools to github. Change package name to bluez-tools.
General: Fix clone command format in help text.
General: Fix REPO env var to point to GitLab.
RM #252: Initial import of BlueZ Tools packaging metabuild.
-----------------------------------------------------
Repository: crtmpserver
-----------------------------------------------------
Bump to version 0.11
RM #547: Switch to version.txt.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: launcher
-----------------------------------------------------
Bump to version 0.11
RM #511: Allow setting toolchain, staging and opkg directories on the command line.
General: Migrated netconfig.xml to renamed pibox-network-config.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: libpbox
-----------------------------------------------------
Bump to version 0.11
RM #525: Don't remove m4 directory on distclean.
RM #525: Remove unused AM_PROG_AR from configure.ac that was causing problems on CentOS 6.x. Fix cross.sh to work correctly with sysroot. Add m4 directory because build fails without it on CentOS 6.x.
RM #502: Added client call to piboxd to send device protocol messages and get responses. Added unit tests for this new function.
RM #510: Added unit test for log format given new configuration timestamps and headers.
RM #510: Added configurable timestamps.
RM #510: Added configurable timestamps and header to log messages.
RM #509: Added parson library to libpibox.
RM #510: Add function, file and line to logs automatically by wrapping pncLogger() with a macro.
RM #464: Added unit tests for utility functions of the library.
RM #464: Integrate logger unit tests and stubs for utils tests.
RM #464: Replace exit() with return() in rpi.c unit tests.
RM #464: Replaced logger functions with fprintf().
RM #464: Reset verbose to

-1
on pncLoggerInit().
RM #464: Update variation usage for test that don't use that value to use V_ANY.
RM #464: Add V_ANY to reflect functions that might test both normal and negative tests.
RM #464: Fix comment for rpiSave tests to reflect variation argument is unused.
RM #464: Add ability to run individual or sets of tests, defaulting to all tests. This required a change to make all tests have the same prototype structure of accepting an int argument and returning an int value.
RM #492, RM #493: Remove use of gettext for multi-language support. It breaks on CentOS under Buildroot and we don't use it anyway.
RM #485: Switch to GSList for config file processing to ensure FIFO processing of existing file content.
General: code cleanup - tabs to spaces.
RM #485: Remove test-generated data file. General cleanup on ptests/rpi.c.
RM #485: Test that value is an integer before further testing in validate_set. Fix log messages to include function name and remove extraneous memory free in validate_display_rotate. Make sure inputs are valid before saving them in rpiSetValue. Make sure required fields are added, if needed in rpiInit.
RM #485: Completed rpi API for config.txt handling. Extended unit tests to cover basics of that API. Fixed bugs exposed in logging API while testing rpi API.
RM #485: Added stubs of rpi API for managing the config.txt file. Added stubs of unit test framework.
RM #457: Prevent segfaults if pncLogger is called with null format string.
RM #457: Add missing prototype for pncStripNewline to utils.h. Add missing header reference for ctype.h to utilc.c.
RM #457: Add pncToLower() function.
RM #457: Add debug symbols to library to make it easier to debug with gdb.
RM #457: Change from gchar to char in prototype for pncLoggerInit to match function.
RM #457: Fix prototype for pncLoggerInit() to include gchar pointer parameter.
RM #457: Corrected call to get verbosity API function in DBG macros.
RM #457: Add setter/getter for log verbosity level.
RM #457: Fix deprecated reference to loggerLocal to use new library naming prefix.
RM #457: Convert to a properly built library package, with proper library API structure. This is an initial migration from app-specific functions such as logging and utilities to a common library.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: metabuild
-----------------------------------------------------
Bump to version 0.11
RM #538: Switch to version 5 as the default build because the old build used code.google.com which isn't available anymore.
RM #548: Add metabuild cdtools script so this repo can be managed by the scripts too.
RM #548: Add version bump function.
RM #548: Add metabuild, libpibox and pibox-network-config to config files.
RM #547: Add version.txt file.
RM #539: Added picam cdtools env script.
General: code cleanup - tabs to spaces in videofe.sh.
RM #539: Add picam to repo configuration files.
RM #539: Catch when cdx doesn't move to a src directory.
RM #539: Updated README to match GitHub template (which are good enough for here).
RM #539: Added help text to remind how to use MakeChangelong. Added output of error file is one is generated.
General: Added README so gitlab will be happy.
RM #539: Added option to tag repos. Added test-project repo for testing changes like this in the metadata repo.
RM #511: Set toolchain, staging and opkg directory configurations for all apps.
RM #511: Add options for specifying toolchain and staging trees, defaulting to XID and STAGING if set. Added options to aide in debugging individual app builds.
General: Restructure to move deprecated/unused repos into a single block.
General: Restructure to move deprecated/unused repos into a single block.
General: Minor comment addition
General: Updated all repos to gitlab. Added pibox-network-config and bluez. Disabled crtmpserver since it's not used anymore and the upstream repo is down.
RM #437: Migrate to gitlab.com.
RM #437: Migrate omxplayer to gitlab.
-----------------------------------------------------
Repository: mjpg-streamer
-----------------------------------------------------
Bump to version 0.11
RM #547: Switch to version.txt file.
RM #535: Added support for building either mainline or raspicam port of mjpeg-streamer. The latter is built with HW=rpi.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: monkey
-----------------------------------------------------
Bump to version 0.11
RM #547: Switch to version.txt
General: migrate to gitlab.
-----------------------------------------------------
Repository: omxplayer
-----------------------------------------------------
Bump to version 0.11
RM #547: Switch to version.txt.
RM #511: Fix omx to support multiple toolchain/staging tree builds.
RM #448: Make STAGING configurable in the omxplayer's Makefile.include.
RM #437: Correct URL for gitlab repo.
RM #437: Migrated to gitlab from gitorious.
General: Upstream master is not building for me. Backtracked to commit c5ab808, which precedes a bump in ffmpeg version. This seems to fix the problem.
-----------------------------------------------------
Repository: pibox
-----------------------------------------------------
RM #538: Fix URL for pibox source when packaging source.
Bump to version 0.11
RM #463: Add wifi tuning parameters to bootup, some of which are disabled since they may not really be needed.
RM #463: Add network performance measurement tools.
Merge branch 'master' of gitlab.com:pibox/pibox
RM #463: Updates for new wifi adapters and general cleanup.
RM #538: Force snd driver to create required sound devices by using proper bootloader config.
RM #538: Load uvcvideo by default instead of via usbhandler.conf.
RM #535: Added support for raspicam but keep it commented out because the camera didn't really work.
RM #538: Adding perl for future development (OpenXM app).
RM #544: Bump libpng to 1.6.25.
RM #544: Disable webp, as its not being used and the upstream wasn't responding.
RM #544: Bump libpng to 1.6.25.
RM #544: Bump strace.
Merge branch 'mjhammel/rpi2'
RM #547: Switched to a version.txt file for pibox core platform.
General: Disable cursor if /etc/X11/nocursor exists. Useful for non-desktop uses of PiBox.
RM #543: Add HW to pibox-version file.
RM #535: Migrate to jpeg-turbo.
RM #511: Fix initialization of doFile to be 0, not 1.
RM #511: Copy all firmware to boot partition. Only copy
-s/-t
files if specified. Fix up kernel files based on HW.
RM #511: Bump rpi1 kernel to 4.4.y.
RM #511: Fix gles build on rpi1 after integration with rpi2 build.
RM #511: Copy dhcpd.conf to /etc/dhcp directory so it works in either location.
RM #511: Enable new framebuffer configs now that fbturbo is the default.
RM #511: Enable fbturbo as the default X server driver.
RM #530: Added extended color depth configuration that can be used with fbturbo once that is the default X server driver.
RM #511: Support alternative kernel name (kernel7.img) for rpi2 hardware.
RM #511: Fix gles to build for either rpi or rpi2 hardware.
RM #511: Support rpi2's use of mainline upstream kernel.
RM #511: Fix gles to build for either rpi or rpi2 hardware.
RM #511: Bump vim to move to github from googlecode.
Merge branch 'mjhammel/rpi2' of gitlab.com:pibox/pibox into mjhammel/rpi2
RM #511: Remove mysql from dev platform. It isn't used in media server and doesn't build anymore.
RM #511: Add removal of second patch from libpng for bump to 1.6.22.
RM #511: Patches to bump libpng to 1.6.22.
General: Upstream changed archives to not include version number in extracted directory. This fixes that so we can have multiple versions of Crosstool-NG.
Merge branch 'master' into mjhammel/rpi2
RM #511: Don't create m4 directory as it is now included in the upstream repo for libpibox.
RM #511: Add reference for rpi2 to HW env var.
RM #511: Copy firmware subdirectories, which are recent additions upstream.
Merge branch 'master' of gitlab.com:pibox/pibox
General: Added support for generating release image file instead of installing directly to device.
Merge branch 'master' into mjhammel/rpi2
RM #511: Copy in all the firmware files instead of just the ones we need for the original Pi boards.
RM #511: New xcc config files for the RPI2. These are used by setting HW=rpi2 on the GNU Make command line, as in "make HW=rpi2 rpifw-pkg kernel-pkg gles buildroot-pkg pkg-scripts"
Batch buildroot to build ncurses on gcc > 5.0
change from sh to bash when calling buildme.pibox so that pushd is available
added gitignore to ignore dot-files
Merge branch 'master' of gitlab.com:pibox/pibox
RM #492, RM #493: Update to support cmake 2.8 or later, which should be in use on recent CentOS and Fedora releases.
General: Add missing cleanup of a stamp file.
RM #492, RM #493: Update Crosstool-NG to 1.22.0 and bump to gcc 4.8.5.
RM #492, RM #493: Bring buildroot build up to date using 2015.02 release.
RM #492, RM #493: Bring buildroot up to date using 2015.02 release.
RM #441: Added display_rotate default to config.txt, so it can be properly handled by user-space tools and libpibox.
RM #457: Migrate from archive download to git download for pibox-network-config repo.
RM #457: Added libpibox to development platform build.
RM #457: Migrate to pibox-network-config from bui-network-config.
RM #457: Updated bui-network-config package to build with library from cleaned up upstream repo.
RM #451: Fixed mount of USB sticks that don't have a partition table. These are usually vfat partitions written directly to the device, sans partition table.
RM #461: Minor optimization for SMB configuration.
RM #462: Remove pidofproc and killproc references.
RM #252: Added bluetooth and alsa init scripts. Default configurations will need to be created manually by apps.
RM #426: Add mkdir's to pre-volatile processing during firstboot to remove missing directory messages.
General: Fix name to match published named (PiBox Development Platform). Clean up /etc/issue formatting.
General: Updated to reflect changed repository (from gitorious to gitlab).
RM #458: Switched to command line specification of the device so that the
-n
option could be used to skip creating a data partition.
RM #456: Fix mount point for mmc devices to be under /media and not be under /media/usb.
RM #449: Add support for 3rd partition when making the SD card. This means the default requirement for an SD card should now be 4GB (in anticipation of remote upgrade capabilities).
RM #436: Added double
-F
option to mkfs commands to force file system creation even if there is already a filesystem. Cleaned up parted usage.
RM #442: Fixed package makefile for bui-network-config to work correctly with GitLab.
General: Migrated cloning of bui-network-config from gitorious to gitlab.
General: Late bump to 0.10.0 for dev platform.
General: Bump to 1.23.2 to support Buildroot 2013.02.
General: Add version to output string.
RM #438: Bump Busybox to latest release.
RM #438: Add support for Buildroot 2015.02.
RM #438: Switch git id for kernel to head of rpi-3.14.y branch.
RM #438: Remove LD_LIBRARY_PATH from make env when building Buildroot. Add freetype dir to rpi-tools target build. Both in support of bump to Buildroot 2015.02.
RM #438: Bumped to 2015.02.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: piboxd
-----------------------------------------------------
Bump to version 0.11
General: add
-pg
to gcc options.
RM #538: Update default config to show sample use of raspi cam config.
RM #535: Modified default dimensions of mjpeg_streamer image to best-result with new webcam on both web UI and console UI.
RM #537: Add WEBCAM configuration option to config file to allow dynamic configuration of webcam command.
RM #503: Changed "echo" to "fail" in various places. Added additional/missing headers to some tests.
RM #535: Add
-y
option to mjpg_streamer command since my only webcams require it.
RM #535: Add reuseaddr on messaging socket.
RM #511: Allow setting toolchain, staging and opkg directories on the command line.
RM #503: Verified and updated unit tests giflist through sipv4.
RM #502: Add
-k
option to keep the daemon running which is useful for seeding the daemon with data for testing with other tools, like the pibox library. Added
-K
option to kill any running piboxd daemons.
RM #509: Moved parson library to libpibox.
General: Run as sudo if using verbose above 3 to avoid broken pipe error on exit of test script. RM #503: Updating unit tests. Clean up unit tests so they are less verbose by default and specify PASS or FAIL after the test name. Added validation tests for everything up to heartbeate and made sure they properly clean up so they can all be run in sequence from a single test run. Allow generation of a unique UUID for some tests. Capture connection reset by peer message from nc but don't assume failure because of it. Run piboxd with
-t12
to limit stream timeouts to something useful within the unit tests. Check for core files ater each test run and notify user.
RM #503: Don't abort a failed stream as that leaves a core file. Use exit() instead.
RM #503: Test for invalid action type before testing for invalid timestamp to avoid incorrect error message in the former case.
RM #503: Added logging messages and test for null queue when testing expiration of a stream.
General: Remove instance of egyption brackets.
RM #508: Completed support for IoT messaging between devices and piboxd and between piboxd and apps. Updated unit tests script and cleaned it up a little.
RM #501: Implemented multicast server to handle IoT device registration.
RM #501: Add missing "$" to PIBOX_PORT when referenced in nc calls.
RM #501: Implemented multicast server for accepting device node registration requests. Added unit test to verify inbound message handling.
General: Code cleanup : tabs to spaces.
RM #457: Completed port for libpiboxnet by applying fixes (mostly in the new libraries: libpiboxnet and libpixbox) and removing old code that is now in the libraries. All functionality passes the server tests.
RM #457: Extend test to support running with valgrind, split out SIPV4 subtests to be callable individually and report pass/fail, launch piboxd and kill it automatically when running the tests. All of this is part of the port of piboxd to libpiboxnet.
RM #457: Extend suppression file to ignore gobject, libpixman and a few others that are not part of the code under test.
RM #457: Remove extraneous file.
RM #457: Initial porting to libpibox and libpiboxnet. Still much work to be done in the port to libpiboxnet.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: piboxwww
-----------------------------------------------------
Bump to version 0.11
RM #547: Switch to version.txt.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: picam
-----------------------------------------------------
Bump to version 0.11
RM #547: Add version.txt to configure.ac.
RM #541: Added generic piboxd message function. This is temporary, it should move into libpibox for general app use.
RM #541: Send messages to piboxd to start and stop webcam.
RM #541: Don't stat() the "filename" since that's actually a URL.
RM #541: Allow setting URL to connect to in the config file. Makes it easier to test.
RM #541: Add libuuid to build, required for webcam message to piboxd.
RM #541: Switch from
-r to -b
for omxplayer arg because the latter seems to muck up the HDMI display when the app exits.
RM #541: Initial import of picam application.
-----------------------------------------------------
Repository: piclock
-----------------------------------------------------
Bump to version 0.11
RM #511: Allow setting toolchain, staging and opkg directories on the command line.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: pmsui
-----------------------------------------------------
Bump to version 0.11
RM #547: Switch to version.txt.
General: Formatting update.
General: Updated readme's.
General: Disable screensaver, blanking and DPMS. Don't show the cursor either.
RM #511: Switch to running X.org from inittab for media server/player for both rpi1 and rpi2.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: pnc
-----------------------------------------------------
Bump to version 0.11
RM #547: Switch to version.txt.
RM #525: Another cross fix: Fedora doesn't support
--sysroot
correctly for linking, apparently, but CentOS does.
RM #525: Fix cross compilation for both Fedora and CentOS 6.7.
RM #517: Updated README so I don't forget what this repo really is.
RM #492, RM #493: Remove use of gettext for multi-language support. It breaks on CentOS under Buildroot and we don't use it anyway.
RM #457: Fix potential segfaults by testing input arguments to callbacks for list handlers.
RM #457: Add check for null argument to pncNetInterfaceValid().
RM #457: Cleanup compile time warnings and errors introduced when upgrading to gcc 5.1.
RM #457: Revert to shared library use for pibox-network-config from static library used in previous debugging.
RM #457: There were many mistakes in the port to the pnc library. These updates fix all known errors and allow pibox-network-config to properly generate data files under test mode. Removed glade files: this is no longer managed by glade. If you want UI updates, you gotta do it by hand now.
RM #457: Fixed leaks exposed by Valgrind. Fixed errors in startup not exposed before switch to library that have to do with using uninitialized variables in UI. Switched to use static library for pibox-network-config, possibly only for initial testing.
RM #457: Pass log file name (if any) to pncLoggerInit().
RM #457: Remove return value from pncSetInterfaceField. Check for invalid idx in get/setHostAPField().
RM #457: Add missing reference to glib.h in pnc.h so library users don't need to.
RM #457: Add missing clear and remove functions to API needed by piboxd.
RM #457: Added pncSetInterfaceField() to libpiboxnet API.
RM #457: Remove gdk dependency from network library.
RM #457: Remove UI callbacks and update API to support passing in required character strings for address type.
RM #457: Remove UI callbacks and update API to support passing in required character strings for address type.
RM #457: Remove all references to local utils/log modules in favor of libpibox versions. Changed pncUpdateInterface() to take addr, netmask and gateway arguments instead of calling back to the UI to get them. Caller now makes that UI call before calling pncUpdateInterface. Removed UI callbacks from network library. Callers now handle UI callbacks before calling library API functions.
RM #457: Mirgrate stripNewline() calls to use libpibox pncStripNewline().
RM #457: Switched to using g_strdup from strdup.
RM #457: Switched to using g_strdup from strdup. Moved showIPInStatusBar to callbacks.c and out of network library.
RM #457: Switched to using g_strdup from strdup. Moved showIPInStatusBar to callbacks.c and out of network library.
RM #457: Ported to use libpibox's logger service.
RM #457: Renamed upstream project to pibox/pibox-network-config and adjusted cdtools accordingly.
RM #457: More migration to a proper library API: merged save.h and load.h to pnc.h (public API) and pncPrivate.h (internal API) and migrated all data structure access in those modules to get/set functions. Use libtools features to export only regex specified functions.
RM #457: Fix header directory name for library in packaging.
RM #457: Change all references to bui-network-config to pibox-network-config.
RM #457: Add
--version-info
to library naming.
RM #457: Converted from bui to pibox and changed the library prefix to pnc.
RM #457: Change package name to buinet so headers get put into a decent directory.
RM #457: Set include install directory to buinet. Make sure cross tools are available to install processing.
RM #457: Make sure all installed files are properly owned.
RM #457: Integrate libtool use to generate shared library for load/save functions.
RM #457: Integrate libtool use.
RM #457: Quiet complaints from autoconf on build. Cleanup generated files on distclean.
RM #457: First step in creating a library for bui-network-config: clean up the build so it's generated the same as all other PiBox packages and create an opkg for it (so it's easier to update).
RM #455: Added base network address to hostap configuration.
RM #439: Fix load of hostap config to default to TKIP to match clients expectations.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: psplash
-----------------------------------------------------
Bump to version 0.11
RM #547: Switch to version.txt.
RM #437: Migrate to GitLab.
-----------------------------------------------------
Repository: videofe
-----------------------------------------------------
Bump to version 0.11
RM #538: Fix off-by-one memory allocations and properly test for failed retrieval of JSON values.
RM #538: Set omxplayer to play out both hdmi and analog outputs by default.
RM #542: Fix buffer overruns in genVideo. Change program flow to make free'ing buffers cleaner.
RM #542: Add valgrind support for checking for memory leaks. Use gtk suppression file to skip gtk-and-friends when looking for leaks.
General: Minor logging updates.
RM #542: Add valid field to movie and episode structs.
RM #542: Fix bug when calculating size of buffer for image paths. Test required fields and mark entries valid or invalid. Skip adding entries to display list if they are marked invalid.
RM #542, RM #414: Added Pango-rendered overview to display with a semi-transparent overlay between the text and poster. Added series poster above episode poster, overlaying the latter with the overview. Fixed problem with resizing and repositioning of windows on startup.
RM #542, RM #515: Port to libpibox (pncLogger). Ported db handling to new JSON-based formats generated by VideoLib. Add TV Episodes option via TAB key in main interface. Show episode poster.
RM #542, RM #515: Port to libpibox (pncLogger). Fix bug where %s is not a standalone argument but part of a larger argument (as in file://dvd/%s) in spawnPlayer.
RM #515: Migrate to libpibox version of logging library.
RM #542: Add menu bar that works with TAB to switch between Movies and TV Episodes. It's just the menu, but it's Cairo based so the same events work on it as the rest of the interface. This was required prior to designing a way for working with either types of db formats.
RM #511: Set new default for vtsrc and vttmp to 3 and 4, respectively, to support changes in kernel and inittab for upcoming 0.11.0 release.
RM #511: Return index from parse(). Added logging in spawnPlayer() to figure that out.
RM #529: Fixed handling of filenames with spaces in the name.
RM #528: Fix focus into view widget at startup so keyboard arrow keys work as expected.
RM #527: Add mkv m4v avi to default player configuration.
RM #527: Add mkv m4v avi to default player configuration.
RM #511: Allow setting toolchain, staging and opkg directories on the command line.
RM #520: Fixed reversed processing of global home key configuration so ESC exits the program.
RM #519, RM #520: Added PiBox specific configuration to opkg. Migrated to libpibox for utils functions. Added some test files.
RM #469: Prevent segfault when moving from video with a poster to one without a poster.
RM #469: Display text if no poster is available.
RM #445, RM #450: Fix incorrect handling of home key configuration.
RM #445, RM #450: Add parse function for converting command string to args for execve.
RM #445, RM #450: Add parse function for converting a command string into args for execve.
RM #445, RM #450: Add embedded option to allow using on the desktop too. Add support for multiple players.
RM #445, RM #450: Add embedded option to allow using on the desktop too. Add support for multiple players.
RM #445, RM #450: Fix segfaults in config file parsing. Add embedded option to allow using on the desktop too. Add support for multiple players.
RM #445, RM #450: Add support for file type specific players, and thus configurable players.
RM #437: Migrate to GitLib.
-----------------------------------------------------
Repository: videolib
-----------------------------------------------------
Bump to version 0.11
RM #554: Added support for compressing poster images.
RM #554: Add support for running a custom script for compressing poster images. Provide default script and allow editing and saving changes.
RM #547: Switch to version.txt.
RM #470: Add overview to top level JSON output so front ends can get to it easily.
RM #470: Clean up old db files before saving. Add some missing fields that make it easier for the front end to know what to display. Clean up properly when rescanning all video entries.
RM #470: Added simple about dialog.
RM #470: Add title bar text to shell.
RM #470: Implemented load/save for tv episodes.
RM #470: Fix setting alternative to actually update the entry to the alternative series and matching season/episode numbers.
RM #470: Provide separate fields for file title and real title for use with TV episodes. Scan the correct DB type when clicking on alternatives.
RM #470: Moved common code to updateEntry and let queryDB and setID call it as appropriate.
RM #470: Add TVDB.com logo at the bottom of the details frame. If the episode name is provided in the JSON, use it as the "TMDB name". Change "TMDB Name" label to "Video Title" Use the episode overview if available, otherwise use the series overview.
RM #470: Added TVDB class and extended UI class to support TV episode data from TVDB.com. This basically works but load/save and alternatives are not yet implemented.
RM #524, RM #486, RM #468, RM #344, RM #343: Refactored code to be much simpler, putting more of the load in MovieDB from UI. Also allows saving and better use of JSON data from upstream db. Changed from flat file db to saving all JSON data for all movies. Added VideoLib specific fields to json to make it easier to edit which alternative to use. Fixed scanning to only scan new videos unless specifically requested to rebuild database. Dropped multiple poster sizes to simplify code.
General: Added test files.
RM #444: When pulling a TV episode from JSON, save it's ID to the object ID.
RM #444: Fix use of Alternates dialog with TV series. Cleaned up MovieDB structure and fixed findEpisode to strip special characters to better match local filenames to upstream episode names.
RM #444: Add tool for copying a directory listing for the purposes of testing the app without touching an existing tree.
RM #444: Add support for scanning for TV episodes separately from videos.
General: Fix copyrights in source files.
General: Code cleanup.
RM #443: Add support for scans using user-defined extensions that are saved in session data.
RM #437: Migrate to GitLab.
RM #425: Fix rpm build and add launcher script.

V0.10.0 Release Announcement

Added by Hammel over 5 years ago

PiBox Media Server / PiBox Media Player v0.10.0 Release Notes
2015-01-15

Additional Information

General Status
------------------------------------------
PiBox Media Server and PiBox Media Player are consumer oriented distributions for distributed media playback in travel trailers without Internet connectivity. The UI is based on GTK+ with Cairo and the system runs on the Raspberry Pi optimized PiBox Developement Platform distribution.

This release marks a fully functional software implementation for both the Media Server and Media Player with a true consumer-oriented UI. All known UI issues are addressed so the user experience should be clean and comfortable.

The Media Server auto mounts media sticks and can play them with the custom front end to the hardware accelerated omxplayer. The front end allows selection of videos and displays poster art based on a database generated on the media stick using the desktop and Java-based VideoLib application. Audio always plays through the Raspberry Pi audio port with video always played through the HDMI port.

The Media Server also exports video directories to the Media Player which automatically mounts them. It plays videos with the same omxplayer front end used by the Media Server.

The default configuration, which is designed to work optimally with the Favi keyboard, provides a simple interface using just the arrow, enter and escape keys, with full keyboard use provided in the network configuration application.

A webcam interface can be played at the same time that video is played on the server and the player. Webcam access is through the web interface, available on both the Server and Player. The web interface uses Basic Authentication and allows for multiple users. Network configuration can also be updated through the web interface.

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
------------------------------------------
Near term plans include development of some simple hardware components to support battery power, simple cases for use with handheld pico projectors and integration of a multiport USB shield for the Media Server.

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 and additional media player apps.

Getting involved
------------------------------------------
PiBox is currently a one man project. I'd like to have more users of the system and welcome new developers.

To get started using the system please download the tarball, unpack it and use the mksd card to format your SD card. Then use the mkinstall script to install the distribution to the SD card.

To get started with development, please read the developer wiki on how to build the PiBox Development Platform.
http://www.graphics-muse.org/wiki/pmwiki.php/RaspberryPi/Software

Contact me at or if you're interested in helping out, have ideas for improvement or just want to know how to use the system.

0.10 Development Summary:
------------------------------------------
  • Customizable launcher app provides new UI
  • Added privileged and unprivileged app configuration
  • Cleaned up web UI to have consistent appearance
  • Changed coloring of server/player UI icons to match web UI icons.
  • Add user authentication to web interface and user management component.
  • Added MAC ACL to hostap configuration in Web UI.
  • Moved to omxplayer master branch
  • Moved to Linux kernel 3.14 branch from Rasperry Pi github repository.
  • Quieted the startup messages
  • Completely fixed keyboard access on first boot
  • Made all apps use consistent keyboard navigation
  • Fixed poster scaling in videofe
  • Added PiClock app
0.11 Plans
------------------------------------------
  • Android app remote control over wifi
0.12 Plans
------------------------------------------
  • Hardware related projects
    • Custom cases
    • Rechargable LiPo battery supply w/ power on/off
    • Integrate multiport USB "shield" with Media Server
  • Possible BLE (Bluetooth Low Energy) dongle integration
0.13 Plans
------------------------------------------
  • TV app using USB adpater
  • Music player app

-----------------------------------------------------
Changelogs
-----------------------------------------------------

-----------------------------------------------------
Repository: appmgr
-----------------------------------------------------
RM #425: Make videofe privileged for now to allow for vt changes in an root-run X session.
RM #424: Bump to version 0.10.0 (opkg)
RM #424: Bump to version 0.10.0.
RM #384: Added disabled stubs for later use with PiBoid.
RM #420: Added piclock to priviliged apps.
RM #415: Make reboot a privileged app.
RM #388, RM #410: Fixed config file format to use name:value pairs. Added support for privileged apps.
RM #401: Fixed location of lock file to /var/lock instead of /tmp.
RM #392: Clear the current settings if the current app exits on its own. This allows the app to be restarted without having to change to a different app first.
RM #360: Integrate use of launcher app as the default application.
RM #351: Make sure inbound args are passed through completely.
-----------------------------------------------------
Repository: crtmpserver
-----------------------------------------------------
RM #424: Bump to version 0.10.0 (opkg)
RM #424: Bump to version 0.10.0.
RM #285: Move init script out of the way of the 2nd stage X.org init to avoid problems with keyboards.
RM #402: Moved init script to before the 2nd stage X.org init script to avoid problems with keyboard input.
-----------------------------------------------------
Repository: launcher
-----------------------------------------------------
RM #424: Bump to version 0.10.0 (opkg)
RM #424: Bump to version 0.10.0.
RM #423: Updated splash image color to match web interface colors.
RM #413: Removed a bunch of unused and unnecessary code. The unnecessary code was essentially duplicate signal callbacks that are not needed under PiBox.
RM #413: Add timestamps to log output to aid in performance testing.
RM #415: Use fully qualified path to reboot.
RM #412: Moved Mask.png to /etc/launcher in packaging - this is why highlight went missing. Also update the ownership and permissions now that launcher is run as user nobody.
RM #285: Added user and camera icons for use with the web interface.
Allow left mouse button to accept currently selected app
RM #398: Run bui-network-config in embedded mode.
RM #394: Update all icons to flat style with common coloring/decorations.
RM #377: Fix sizing of new power icons so they display correctly on ARM.
Merge branch 'master' of ssh://gitorious.org/pibox/launcher
RM #377: Cleanup to create the default launcher configuration, including restart/netconfig/terminal apps.
RM #360: Added log message for unknown keys.
Merge branch 'master' of ssh://gitorious.org/pibox/launcher
RM #383: Removed extra test data, keeping just enough for current config example.
RM #383: Fix problems with data types related to width/height of icons. Clean up usage of cairo_t in do_drawing so it only needs to be created and destroyed once. Adjust offsets for highlight so it looks better behind selected icon. Add maxApps to keep track of number of available app descriptions found.
RM #383: Resize icons to be square because it appears that non-square PNGs on ARM fail to load in Cairo (but work fine on Intel).
RM #383: Create required directories after installation.
RM #383: Add notify() function and APPMGR_PORT to send commands to appMgr Add support for keypad arrow keys Add support for RETURN key and keypad ENTER Add function called on window expose to set the first app as the selected app so the white highlight is properly displayed.
RM #383: Changed test description files to use current production commands, as taken from pmsui's panel configuration.
RM #383: Update test data to use new splash images. Remove old test image.
RM #383: Increase splash widget size and decrease size of description widget.
RM #383: Add highlight to app icons. Clean up and center display of splash image. Clean up and center app descriptive text. Add support for arrow keys to select app icon. Fix gpointer compile warnings. Load gtkrc from data dir or install dir.
RM #383: More integration of splash and description and cleaning up icon displays. Merged handlers for cairo paint operations.
Initial import
-----------------------------------------------------
Repository: mjpg-streamer
-----------------------------------------------------
General: Remove stamp files that were accidently committed.
RM #424: Bump to version 0.10.0 (opkg)
RM #424: Bump to version 0.10.0.
-----------------------------------------------------
Repository: monkey
-----------------------------------------------------
RM #424: Bump to version 0.10.0 (opkg)
RM #424: Bump to version 0.10.0.
RM #422: Install users.mk as pibox.mk.pkg and then move it to pibox.mk only if that file doesn't already exist.
RM #421: Added default configuration file that moves the pid to /var/run.
RM #285: Remove creation of DEFAULT file. This is superceded by piboxd handling.
General: The init script needs to be moved before the 2nd stage UI init script to avoid problems with keyboard input.
RM #285: Add AUTH support to monkey using a default user.
-----------------------------------------------------
Repository: omxplayer
-----------------------------------------------------
RM #424: Bump to version 0.10.0 (opkg)
RM #424: Bump to version 0.10.0.
RM #417: Fix ownership of /dev/vchiq so omxplayer can access when it's run as the user nobody.
RM #400: Moved to master branch of github repo. Updated this metabuild's Makefile for omxplayer to properly build help files so master branch builds correctly.
-----------------------------------------------------
Repository: pibox
-----------------------------------------------------
RM #303: Bumped kernel to 3.14.y to try and get TV working better. Kernel seems to work fine with the rest of the system so I'm keeping it on this rev.
General: Add smbclient library to core.
RM #$13: Copy the saved fontconfig directory to the cache directory before starting any apps.
RM #413: Create the fontcache on first boot and save a copy of it so it doesn't have to be rebuilt each time.
RM #417: Fix group on vchiq so non-root video players can access it.
RM #360: Quiet X startup.
RM #360: Move UI init script to accommodate cleaner boots and assist in fix of keyboard input on boot.
General: Quiet the boot messages.
RM #308: Remove old package and patches for xcc.
RM #308: Remove old packages and patches from buildroot configuration.
RM #348: Updated MakeChangelog to allow choosing dates instead of tags in case start tags don't exist in some projects (like new apps).
-----------------------------------------------------
Repository: piboxd
-----------------------------------------------------
RM #424: Bump to version 0.10.0 (opkg)
RM #424: Bump version to 0.10.0.
General: Updated tests that stopped working after Fedora update.
General: add sample piboxd.cfg.
General: Add support for unmounting smb mounts.
RM #374: Added support for retrieving the MAC ACL list for the caller.
RM #374: Changed MA_MFLIST to support a new subAction field for get/set options.
RM #409: Added support for missing hostapd.conf lines to loadHostAP(). This causes the lines in question to show up anytime updates are applied to that file. Removed support for deprecated message action MA_MFENABLE. Enabling MAC ACL is now port of the original setAP() processing.
RM #409: The MAC ACL setting is now passed with the normal setAP request so no longer needs a separate defined action in the messaging protocol.
RM #374: Added support for MA_MFENABLE, MA_MFLIST and MA_RESTART actions for MT_NET.
RM #374: Added MA_MFENABLE, MA_MFLIST and MA_RESTART actions for MT_NET.
RM #285: Added support for MT_PW/MA_DEL to delete a user.
RM #285: Move check for payload to MA_SAVE only (MA_GET doesn't need it) in handlePW. Also, make sure cleanup is properly handled for the socket descriptor in handlePW.
RM #285: add support for MA_GET to MT_PW.
RM #285: comment update to reflect actual code for MT_PW, MA_GET.
RM #285: Added support for MT_PW and associated actions for changing a user password in the web service.
RM #285: Added MT_PW and associated actions to diagram.
RM #399: Added support for MA_GETIP message action.
RM #399: Updated message format diagram to include MA_GETMAC and MA_GETIP.
RM #398: Add support for inbound MA_GETMAC request, which returns the MAC address of the specified interface or a single space character if the interface does not exist.
-----------------------------------------------------
Repository: piboxwww
-----------------------------------------------------
RM #424: Bump to version 0.10.0 (opkg)
RM #424: Bump to version 0.10.0.
RM #384: Switch to default msgProcessor port number.
RM #384: Update message protocol for MT_KEY.
RM #384: Add support for PiBoid passthrough to AppMgr.
RM #407: Cleaned up webcam UI to match the settings and users UI.
RM #406: Added dialog notice about the password being updated prior to being redirected.
RM #404: Added init script to make sure a log file exists and is writable by the web server on every restart.
RM #374: Added support for setting MAC ACLs.
RM #409: Pass MAC ACL setting with the rest of the MA_SETAP configuration and drop separate MA_MFENABLE processing.
RM #374: Add support for mac filtering in hostapd.
RM #285: Add support for creating a log file on installation and disable logging by default.
RM #285: Add missing "!" when checking for delete parameter.
RM #285: Add support for deleting a user.
RM #285: Add usersPW.js script to support saving changes.
RM #285: Retrieving from a text input field with jquery requires use of val().
RM #285: Integrated a user selection page that allows creating, updating and deleting users.
RM #285: Don't include the xcf files in the images directory of the packaging.
RM #385: Added XCF images used to create icons.
RM #285: Cleaned up icons to more closely match the ones used on the attached display (under launcher) and added users icon to front page.
RM #285: Extend the artificial delay after updating a password before reloading the front page.
RM #285: Set the action bit for MA_SAVE.
RM #285: Fix POST var name for pw.
RM #285: Implemented test for admin password change, including a new password set page and the ability to send a new MT_PW message to piboxd to handle the password update.
RM #399: Added IP address below MAC address and integrated new MA_GETIP messaging with piboxd.
RM #398: Add mac address field to ipv4 settings tab of web interface.
-----------------------------------------------------
Repository: piclock
-----------------------------------------------------
RM #424: Bump to version 0.10.0 (opkg)
RM #424: Bump to version 0.10.0.
RM #425: Add missing pthread.h include to piclock.c.
RM #423: Update splash image color to match web UI colors.
RM #411: Fixed screen flicker by switching cairo operations to a pixmap and copying from that pixmap during expose events for the widget. Also fixed ownership of piclock binary on install to be root.root.
RM #391: Added support for UI keysyms file.
RM #297: Fixed problem with piclock exits causing a restart immediately by having the ENTER key queued and passed to the launcher. The way around this was to use a different key to activate the Home button in piclock - in this case the space bar - so that the queued key doesn't active the launcher on piclock's exit.
RM #297: Moved system clock setting to right before exit, to remove time changes from UI code. Fixed bug where changing the day of the month was not updating the system clock.
RM #297: Renamed remaining "clock" functions to "piclock" for consistency.
RM #297: Switch top level layout to a table to help in centering time setting UI components on the right.
RM #297: Potential fix for setting time. A struct is updated by a callback but the actual time change is haned in a g_timer to avoid problems with setting the time inside the gtk callback.
RM #297: Switched to settimeofday() to see if that works better than stime().
RM #297: Adjusted layout of settings column UI components. Added sample gtkrc to be able to test appearance similar to what the default PiBox Media Server UI looks like.
RM #297: Add icon and splash image. Updated template.
RM #297: Fix initalization of hour spinner. Update system time with every user update.
RM #297: Fix typos in opkg'ing Makefile.
RM #297: Fix keyboard navigation to use Ctrl-<arrow keys> for month and year. That's more consistant with the arrow key usage of moving around the days of the month.
RM #297: Removed unused code brought from videofe template. Merged callbacks when changing hour/minute/pm. Fixed hour hand bug in gtk_piclock_set_time().
RM #297: Add keyboard navigation to calendar widget. Add callbacks for spinners to set clock. Add apply and home buttons.
RM #297: Moved labels after spinners to match checkbox behaviour. Updated comments.
RM #297: Added a real custom widget that draws the analog clock. This is a merger of the ZetCode custom widget example and the clockwidget example I found on github (appropriate credit provided).
RM #297: Initial import of PiClock.
-----------------------------------------------------
Repository: pmsui
-----------------------------------------------------
RM #424: Bump to version 0.10.0 (opkg)
RM #424: Bump to version 0.10.0.
RM #413: Copy the saved fontconfig directory to /var/cache.
RM #413: Remove murrine engine from gtkrc. It isn't installed and removing the reference doesn't change the UI but does speed up boot time a bit.
RM #391: Add a keysyms file for the UI.
RM #360: Quiet X startup.
RM #360: Add Xearly start/stop scripts. These start X early and then stop it again before it is restarted by the PiBox core. This works around the problem with having to restart X manually from the PiBox core X start in order to get keyboard input working.
RM #360: Remove background image (displayed by Xearly and/or psplash). Don't start matchbox panel anymore (now handled by launcher instead).
RM #379: Created default background image (Media Server image) and updated xinitrc to use it.
-----------------------------------------------------
Repository: psplash
-----------------------------------------------------
RM #424: Bump to 0.10.0.
General: bump to verison 0.9 (forgot to do this with the real 0.9 release).
RM #377: Renamed S80stopsplash to S97stopsplash.
RM #360: Move psplash stop to right before X(late) is started.
-----------------------------------------------------
Repository: videofe
-----------------------------------------------------
RM #425: Fix broken log messages.
RM #425: Fixed minor bugs with logging during initialization.
RM #425: Change default vt to 2 and tmp vt to 3.
RM #424: Bump to 0.10.0.
General: commented out unused signal handler.
General: Code cleanup - tabs to spaces.
RM #346: Added player field to cliOptions and added support for it to the config file only.
RM #423: Update splash image color to match web UI colors.
RM #417: Fix permissions and ownership of installed files to match launcher requirements.
RM #417: Fix owner/group of videofe after installation.
RM #391: Added support for UI keysyms file.
RM #394: Update launcher icon and splash image to be consistent with stock styles.
RM #393: Added support for setting the to and back VTs in config file.
RM #386: Fix key_press to return false if no matching key found so default handler is run or true if we intercept the keypress.
RM #390: Remove extraneous header for videos.
RM #360: Add launcher config and icon files to packaging.
RM #386: Add Ctrl-Q and HOME button to quit the app.
RM #387: Changed from positioning to scaling the image to fit the window.
-----------------------------------------------------
Repository: videolib
-----------------------------------------------------
RM #332: Cleaned up poster buttons and added ability to view in actual or fitted size.
General: Merge branch 'master' of gitorious.org:pibox/videolib

V0.9.0 Release Announcement

Added by Hammel almost 6 years 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 Hammel over 6 years 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 Hammel over 6 years 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 Hammel almost 7 years 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 Hammel almost 7 years 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 Hammel about 7 years 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 Hammel over 7 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

1 2 Next ยป

Also available in: Atom