Version 1.3.5

A few enhancements since my last post:

The time of day scheduler is now programmed by the web based editor instead of the schedule.json file.

An I/O plugin for PN532 RFID tag reader.This allows ‘museum in a box’ type functionality which has been featured on the Raspberry Pi blog.

CEC commands to turn TV on/standby

This entry was posted in Uncategorized. Bookmark the permalink.

14 Responses to Version 1.3.5

  1. Andre McKay says:

    Ken,

    Awesome project! I am having some issues running your Serial Command demo file. When I execute it I get the following errors;

    Traceback (most recent call last):
    File “/home/pi/pipresents/pipresents.py”, line 882, in
    pp = PiPresents()
    File “/home/pi/pipresents/pipresents.py”, line 370, in __init__
    reason,message=self.ioplugin_manager.init(self.pp_dir,self.pp_profile,self.root,self.handle_input_event)
    File “/home/pi/pipresents/pp_iopluginmanager.py”, line 26, in init
    status,message=self.init_config(cfgfile,cfgfilepath,widget,callback)
    File “/home/pi/pipresents/pp_iopluginmanager.py”, line 63, in init_config
    reason,message=instance.init(cfgfile,cfgfilepath,widget,callback)
    File “/home/pi/pipresents/pp_io_plugins/pp_serialdriver.py”, line 76, in init
    if entry[pp_serialdriver.DIRECTION] == ‘none’:
    UnboundLocalError: local variable ‘entry’ referenced before assignment

    If I edit pp_serialdriver.cfg and disable the serial it will run. I verified that my USB Serial adapter works and I can send and receive data. I re downloaded your example to make sure it was not corrupt and it gives me the same errors.

    Any help would be appreciated!

    Thank you!

    Andre

    • KenT says:

      Oh dear, I’m not sure how that bug got through testing. Here is an untested solution.

      In /pipresents/pp_io_plugins/pp_serialdriver.py
      Replace lines 76,77:

      if entry[pp_serialdriver.DIRECTION] == ‘none’:
      continue
      with
      if self.config.get(section,’direction’) == ‘none’:
      continue
      keeping the indentation as it was and using spaces for the indent character.

      I corrected the bug in [pipresents-beep] when I converted to python3 but have not had time to backport to gapless. You can see what it should be in that repo. However do not copy the whole file because it is now Python 3

      I will update Github soon.

  2. Kevin says:

    We have ours set up to loop two videos. For some reason after about an hour of playback it goes to a black screen and stops playing the videos. Is the pp_log best place to look?

    • KenT says:

      Maybe this – Have you used the -b command line option to turn off screen blanking.
      Otherwise use the -d command line option and look at pp_log.

      • Kevin says:

        This is the end of the log after it stops working.

        51794.0642729 LiveShow_1955092912: Track to load is: /home/pi/pp_home/pp_live_tracks/Video1.mp4
        51794.0644679 VideoPlayer_1955090928: Load track received from show Id: 0 /home/pi/pp_home/pp_live_tracks/Video1.mp4
        51794.2684288 OMXDriver_1955153616: Send command to omxplayer: /usr/bin/omxplayer –no-keys –no-osd -o hdmi –vol -6000 –dbus_name ‘org.mpris.MediaPlayer2.omxplayer15555021001’ ‘/home/pi/pp_home/pp_live_tracks/Video1.mp4’
        51795.740957 OMXDriver_1955153616: connected to omxplayer dbus after 14 centisecs
        WARNING: OMXDriver_1955153616: Failed get duration – dbus exception: Did not receive a reply. Possible causes include: the remote application did not send a reply, the message bus security policy blocked the reply, the reply timeout expired, or the network connection was broken.
        WARNING: OMXDriver_1955153616: repeat get duration 1
        51826.1731279 OMXDriver_1955153616: pause received after load
        51826.173352 OMXDriver_1955153616: not paused so send pause after load
        WARNING: OMXDriver_1955153616: Failed to send pause – dbus exception: Message did not receive a reply (timeout by message bus)
        WARNING: OMXDriver_1955153616: 15555021001 pause after load fail 26382203
        WARNING: VideoPlayer_1955090928: /home/pi/pp_home/pp_live_tracks/Video1.mp4
        WARNING: VideoPlayer_1955090928: loading – omxplayer ended before starting track with reason: nice_day at 26382203
        ERROR: VideoPlayer_1955090928: omxplayer ended before loading track
        56654.1115389 VideoPlayer_1955090928: Entering state : load-failed from show Id: 0
        56654.1119399 LiveShow_1955092912: Show Id 0 load complete with status: error message: omxplayer ended before loading track
        56654.1143479 VideoPlayer_1955092880: >close received from show Id: 0
        56654.1168039 VideoPlayer_1955092880: quit video – Send stop to omxdriver
        56654.1171579 OMXDriver_1955152752: >stop received and quit sent to omxplayer 4724
        56654.213418 VideoPlayer_1955092880: end play signal received with reason: nice_day at: 682269881
        56654.213675 VideoPlayer_1955092880: Entering state : closing from show Id: 0
        56654.264796 VideoPlayer_1955092880: State machine: closing
        56654.46593 VideoPlayer_1955092880: State machine: closing
        56654.46629 VideoPlayer_1955092880: <omx process is dead
        56654.4664938 VideoPlayer_1955092880: Entering state : closed from show Id: 0
        56654.467953 LiveShow_1955092912: liveshow Show Id: 0: Ending Show
        56654.468179 ShowManager_1955092720: Exited from show: liveshow 0
        56654.4683008 ShowManager_1955092720: Exited with Reason = error
        56654.4687409 PiPresents_1955525360: Pi Presents ending with reason: error
        56654.5109789 PiPresents_1955525360: Tidying Up
        56654.5816798 Animate_1955090576: clear events list
        56654.582067 IOPluginManager_1955090480: I/O plugin Tkinter Keys terminated
        56654.5822599 PiPresents_1955525360: Pi Presents closing because of error, sorry

        • KenT says:

          The log says its a problem with omxplayer or its interface with PP which some people suffer from and many other don’t. I suspect it actually went wrong earlier but that is difficult to detect if you don’t know what you are looking for. I have been unable to find cause for these failures but checking the following is well worthwhile:
          Ensure GPUMEM is at least 256 MB
          Ensure you have a good power supply.
          Home made videos seem to cause more problems than commercial ones. Pass the video through something like Handbrake to re-render it.
          Play the video from the Pi not over a network.

  3. Rikelmi says:

    Hello, thanks for making this amazing software. Ive been playing with the RFID show template thats provided. however, cant add more than two tags at the same time. Created my own show but no luck. any guidance will be appreciated. Thanks.

  4. Josh says:

    Hello KenT,

    Thanks for all of your hard work spent on developing Pipresents. It’s all very appreciated.

    If at all possible, i’m in need of some assistance with an loud intermittent white noise audio glitch that occurs when playing .mp4 files. Here are the details of the issue:
    – Pipresents profile is a radiobutton show where a GPIO push buttons initiates one of two videos, and the “first track” is a silent video that is a photo slideshow.
    – Audio glitch occurs when using example profiles as well.
    – Although audio glitch is intermittent, it occurs at the exact same spot during the playback of the push button videos, But at a different spot for each video.
    – Audio glitch does not occur during the silent video slideshow, however interestingly enough, the glitch is removed from the push button videos when the “first track” is a still image or a message track instead of the silent video slideshow or any other video file.

    I have tried re-rendering all video files to all possible resolutions, frame rates, and H.264 containers to no success. I have also started from scratch a few times with a fresh Raspbian and Pipresents install with the same issues occurring.

    Thank you for any help you can provide and your time spent reading/considering this post.

    Josh

    • KenT says:

      Are you using HDMI audio?. I think this might be the problem.

      There is a limitation of HDMI audio on the Pi that the audio from only one video can be played. To minimise the gap between videos PP starts the second video before ending the first so the audio switches oddly at this time.

      I think you can get rid of this by removing Freeze at End on the video tracks, the other way is to move to analog audio.

      Which example exhibits the problem. It would be useful to know to confirm my diagnosis.

  5. Bruce Huang says:

    Hi, can I use Pipresents with touchscreen so the user can click certain area of the screen and go to the desired page/presentation?

    • KenT says:

      Yes
      The feature you need to read about is click areas. PP assumes that the touch screen driver produces mouse clicks. Look at the pp_clickareas_1p3 example

  6. KenT says:

    Well spotted,it’s fixed now
    Ken

  7. Dave Hays says:

    Hello! Please check the link on your Download page, the embedded URL points to “next” even though the link text is to “gapless” Thanks! Keep up the great work!

Leave a reply to KenT Cancel reply