Posts by LuRu
-
-
-
1. Can you please tell me if version 104 (for CM4) works without problems?
2. Of course, LibreELEC has a folder with fonts. The path to them is /usr/share/fonts/liberation
3. If version 104 works and the font selection also works, you can normally (using the configuration dialog) also select a font from the above folder (via the Root filesystem)
4. Obviously, not every font that looks good on a monitor or TV screen looks equally good on an OLED display. That's why I think that the option to add more fonts to the menu will be useful (for example, I personally liked the Ubuntu font the most so far).
-
I did change the font with arial bold, it is better now.
On the one hand, this is very subjective, and on the other hand, there are copyrights. I hope you understand that I cannot (as part of my product) distribute the fonts covered by these rights.
However, your initiative led me to one idea - to make the font not fixed, but user selectable. This means that each user can copy any number of fonts to the appropriate folder and then choose which font to use in the configuration dialog. I don't care where the user gets these fonts from.
It is really easy:
1) Create a fonts folder in the /storage/.kodi/userdata folder
2) In the /storage/.kodi/userdata/fonts folder, create two subfolders regular and mono
3) In the /storage/.kodi/userdata/fonts/regular folder, copy the regular fonts you want to try
4) In the /storage/.kodi/userdata/fonts/mono folder, copy the fixed-width fonts you want to try
5) In the configuration dialog of the add-on, select the fonts you want to use
6) The change on the display will take place immediately (the add-on will automatically restart)
Note:
I tried it on an Orange Pi PC board (I have it with me on vacation). I don't have an RPi with me, so I couldn't try the CM4 version. There were quite a lot of changes, so it's quite likely that I forgot about some change in the CM4 version.
-
Yes, display content is configured using LCD.xml. So it should be possible to add some information and thereby expand the text.
The second option is to reduce the number of emulated lines in the addon configuration. This will make the font bigger.
-
As everything is concentrate on left side of the display, maybe some changes are required to extend the texts to all the space available.
I was worried that it might happen. Although during development I tried to do it independently of the specific resolution of the display, I probably still made a mistake, and somewhere the fixed width of 128 pixels is still calculated. I'll look into it, it shouldn't be hard to find.
Edit:
Now I looked at the picture from you more carefully and it's probably not like that. According to the time, the movie is about one quarter and the progressbar also occupies about one quarter of the display.
Can you confirm that when there is some longer text than half of the display, it behaves normally and the text occupies the other half of the display as well?
Scrolling should only occur if the text is longer than the full width of the display.
There isn't much you can do with the font. It would look very unnatural if the width of the letter was the same as its height.
-
-
Congratulations - good job!
I would probably figure it out in time too - I was actually getting close to it. Obviously, if I had a grayscale display available, it would be much faster.
I still have a question for clarification - if you change the relevant line like this:
self.device = driver(serial, width, height, rotate, mode = '1')
then there is no need to comment the lines that are used to display the LE logo (as I wrote in the last post) and the LE logo is also displayed when the add-on is started?
-
It looks like there is some problem with the luma.oled library, specifically with greyscale devices (SSD13xx). It's probably a glitch when we want to display the LE logo, which is only black and white. You can try commenting the lines in the service.py file according to the following code snippet.
CodeThread(target = self.runserver).start() Thread(target = self.runqueue).start() #logopath = join(images_dir, 'Logo%i.png' % self.h) #logo = Image.open(logopath).convert("1") #posn = ((self.device.width - logo.width) // 2, 0) #self.image.paste(logo, posn) #self.device.display(self.image)
Or you can try the following modification (I can't test it, I don't own a greyscale device):
Codelogopath = join(images_dir, 'Logo%i.png' % self.h) logo = Image.open(logopath) logo = ImageOps.grayscale(logo) posn = ((self.device.width - logo.width) // 2, 0) self.image.paste(logo, posn) self.device.display(self.image)
In case it works, I would also be interested in this modification:
-
Can you try the corrected version?
This is the version for non-CM4 boards.
You can install normally, without uninstalling the original version. But check that the setting is valid.
-
Uninstall the old version of the add-on and install the new one.
It is very likely that there will be bugs. I'm on vacation and don't have an RPi4 available, so I don't have a chance to try it.
-
Ah, so that's a surprise for me. And I also understood why you used BCM numbering (it's impractical for me - BOARD numbering still applies not only across versions, but even for Orange Pi). I have never seen CM and had no idea about this limitation. But never mind, we'll deal with it somehow. I'll probably have to make a special version for CM. Sorry, but this will take some time...
First I'll just do a test version where the DC and RES pins will be hardwired by software (other pins are HW controlled so it's always hardwired). Later I will add the option to choose DC and RES in the configuration dialog. Do you have any preferences as to which GPIO the DC and RES pins should be connected to in the first stage?
-
My settings.xml is attached at post #21.
Sorry, I missed that.
Attached is the service.txt file. Please replace txt extension with py and replace the original service.py file with this file.
-
I can't see your device so I don't know what's going on. I would like to try your setup. Please write which driver chip your display uses.
Please attach the /.kodi/userdata/addon_data/http://service.oled/settings.xml file here. You can change the xml extension to txt (xml extension is not allowed in attachment).
-
I'm not sure, but it looks like you previously had an older version installed that was still without SPI support. I forgot to write that in that case the old version must be uninstalled (including settings). Maybe it wasn't, but in any case I recommend doing a clean install. This means uninstalling the add-on (including settings) and only then installing the new version. And I would even recommend restarting Kodi after uninstalling the addon.
After a new installation of the add-on, the configuration dialog opens automatically. Make the necessary settings and confirm by pressing OK.
It's also a good idea to use the Dependencies button to check that all necessary plugins are installed.
If the installation succeeds and no error is reported, it should start working. The first sign that everything is fine is the LE logo on the display. If it appears, the data configured in the LCD.xml file should be visible in a moment. If it takes a while, it can be speeded up by disabling and re-enabling the XBMC LCDproc add-on.
-
@livs: Has there been any progress? I would also like to read some positive feedback...
If it works for you, can you write some experiences?
Was the effort worth it?
-
The corrected version is available for download (download links are in the original post).
I am also attaching a wiring diagrams:
-
In connection tab DC selection appears twice, is this correct?
This is my mistake, caused by copying. Thank you for the notice. Second DC should of course be RES or RST, which is connected to pin 22 by default.