This commit is contained in:
langolierz
2018-05-11 00:18:34 +00:00
8 changed files with 57 additions and 17 deletions

View File

@@ -3,7 +3,7 @@
![vectorfront][vectorfront]
__r_e_c_u_r__ is an embedded python application on _raspberry pi3_ that uses `input` from the _keypad_ to control omxplayer's `video out` while displaying a simple text user interface on the _rpi lcd screen_
__r_e_c_u_r__ is an embedded python application on _raspberry pi3_ that uses `input` from a _keypad_ to control omxplayer's `video out` while displaying a simple text ui on a _rpi lcd screen_
## features

BIN
documentation/baseplate.stl Normal file

Binary file not shown.

View File

@@ -26,21 +26,21 @@ other bits and pieces:
## print some things
- i 3d printed my enclosure using these files for the top and bottom. if you dont have access to a printer you can upload these files to a popular printing service in you region (eg ...)
- i 3d printed my enclosure using these files for the [top] and [bottom]. if you dont have access to a printer you can upload these files to a popular printing service in you region (eg ...)
- 2d print these [key stickers] if you want to use the default key mapping, or modify the svg file (in inkscape or something) to create your own. you could print them onto vinyl, label paper or just normal paper and attach with with double sided tape...
## put it together
- using [etcher] (or otherwise) flash the micro sd with my modified image of rasbian (or follow these [instructions to install] from scratch.)
- using [etcher] (or otherwise) flash the micro sd with my [modified image] of rasbian (or follow these [instructions to install] from scratch.)
- insert sd card into pi
- attach the lcd screen via the pi header pins so it fits exactly ontop of the pi. (some little spacers could be used to support the top corners of the screen)
- use the 4 small screws to attach pi+screen to the bottom piece of enclosure
- fasten the keypad to the bottom; i used some double sided tap along raised strips
- attach the lcd screen via the pi header pins so it fits exactly ontop of the pi. (some little spacers could be used to support the top corners of the screen)
- put a battery in the keypad , insert its usb dongle into the pi. fasten the keypad to the baseplate; i used some double sided tap along raised strips.
- use the 6 large screws to hold the top panel to the bottom
@@ -54,7 +54,10 @@ you are done ! wasnt that easy ?
[main parts]: build_all.jpg
[raspberry pi screen]:https://www.aliexpress.com/item/3-5-Inch-TFT-LCD-Moudle-For-Raspberry-Pi-2-Model-B-RPI-B-raspberry-pi/32707058182.html?spm=a2g0s.13010208.99999999.262.bV4EPV
[usb keypad]:https://www.aliexpress.com/item/2-4G-Wireless-Keyboard-USB-Numeric-Keypad-19-Keys-Mini-Digital-Keyboard-Ultra-Slim-Number-Pad/32818206308.html?spm=a2g0s.9042311.0.0.FkRWty
[key stickers]: https://docs.google.com/document/d/1vhXv5QTfyUqsZuMdQu1lh2dMfEk5HMNVyp8uhrc-I2w/edit?usp=sharing
[top]: ./topplate.stl
[bottom]: ./baseplate.stl
[key stickers]: ./keystickers.svg
[etcher]: https://etcher.io
[modified image]: https://drive.google.com/file/d/1nUR2u-75oxgvVScTUb_DrJdZZpJJqyKc/view?usp=sharing
[operate docs]: ./operate_docs.md
[instructions to install]: ../dotfiles/README.md
[instructions to install]: ../dotfiles/README.md

View File

@@ -1 +1,36 @@
# hdmi drop out bug
some time between when i did compatablitiy testing , and now - high res videos now often (and conistently cause hdmi drop outs. all 1080 do , and some 720 also) - on my hdmi-to-vga computer display.
also (possiblely related) when trying it on full hdmi projector, it drops out playing all video no matter the resolution ! whats going on ?
some research sugests that not enough power can cause this problem.
possible fixes / things to rule out include :
- trying signal-boost in config
- try overclocking the pi
- try an old version of the code
- try an old version of firmware
- try changing some other config settings (camera mode etc)
- try creating a new img from old img (with bare minimum) and update piece by piece until it doesnt work.
## results:
### vga-hdmi display
- signal boosting didnt help ,
- old version of code didnt help
- old firmware improved a little bit but didnt fix
- changing config etc didnt help
- turning off raspi2fb didnt help
### drastic measures ! :
- flashed a new sd with old raspbian from last year. only installing the minimal to play video.
- while running old code it plays better but not perfect - still drops from time to time but mostly working.
- tried installing some newer dependacies , still running old code :
# solved ?
by chance i tried switching the video output to composite and back - somehow after this the hdmi plays 1080 videos just fine. no idea why or when it was introduced , but i created an action to run this on startup and seems fine now. phew.

View File

@@ -10,7 +10,7 @@
## controls
(put picture with controls here...)
![keys][keys]
the controls on r_e_c_u_r work by mapping `keys` to `actions`. this map can be fully customised by editing the respective json file.
@@ -78,7 +78,7 @@ the bottom line shows the `control_mode` by default, but is also for messages:
- shows a blue bar for `INFO` messages
- shows a red bar for `ERROR` messages - full message and trace for these can be found in the log files
(put image and info here)
![message_example][message_example]
[3.5mm trrs]: https://www.adafruit.com/product/2881
[display_image]: display_parts.jpg
@@ -86,3 +86,5 @@ the bottom line shows the `control_mode` by default, but is also for messages:
[browser_example]: browser_example.jpg
[sampler_example]: sampler_example.jpg
[settings_example]: settings_example.jpg
[keys]: ./vectorfront_keys.png
[message_example]: ./message_example.jpg

BIN
documentation/topplate.stl Normal file

Binary file not shown.

View File

@@ -54,7 +54,7 @@ these are suppose to stop screensaver / hide cursor / remove on screen power war
- i then went into pi item -> Preferences and set a black background , small task bar , no screensaver and went into the file explorer -> Edit -> Preferences -> Volume Managment -> unchecked 'show available options for removable media ...' and made taskbar auto hide...
- created internal storage folder in ~/
- created internal storage folder in ~/Videos
- set a custom splash screen by replacing splash.png an image at `/usr/share/plymouth/themes/pix/splash.png`with my original. i made a copy of the original, and then copied my own from a flash stick...
@@ -99,7 +99,7 @@ start_x=1
audio_pwm_mode=0
## persisting composite settings
sdtv_mode=0
sdtv_mode=00
sdtv_aspect=1
## switch for enabling lcd screen (the next line is being used even if its commented out)
@@ -120,7 +120,7 @@ you can find the current keymappings using `xmodmap -pke` and for the specifical
xmodmap -pke | grep Nu >> defaultKeymap
which prints only the default numpad keys to a file for reference later.
keys can be manually remapped using `xmodmap -e "keycode 82=a" for testing.
keys can be manually remapped using `xmodmap -e "keycode 82=a"` for testing.
In order to have the custom keymap work on startup we have added the line `xmodmap ~/r_e_c_u_r/dotfiles/.remap` to the launcher script where the file `.remap` has a list of the keycodes that you want to include.
@@ -134,10 +134,10 @@ i had some success using [pishrink], following the instructions on readme exactl
- the flow is using dd to copy the image from the pi to an external drive `sudo dd bs=4M if=/dev/mmcblk0 of=/media/pi/FLASH DRIVE/recur.img`
- then use pishrink to reduce this image `sudo pishrink.sh recur.img` <- try without auto disk expand ?
- then use pishrink to reduce this image `sudo pishrink.sh -s recur.img` it fails the first time but works straight after - not sure why !
- then gzip to zip this : `sudo gzip recur.img`
[pishrink]:https://github.com/Drewsif/PiShrink
[pishrink]: https://github.com/Drewsif/PiShrink
[LCD-show-170703]: www.waveshare.com/w/uplosd/0/00/LCD-show-170703.tar.gz
[raspi2fb]: https://github.com/AndrewFromMelbourne/raspi2fb

View File

@@ -81,9 +81,9 @@
"value": "disabled"
},
"STATUS": {
"action": null,
"action": "get_midi_status",
"options": [],
"value": "disconnected"
"value": null
}
},
"other": {