brook has quit [Read error: Connection reset by peer]
brook_ has joined #beagle
<set_> @zmatt: Do you still goof around w/ librobotcontrol?
vagrantc has quit [Ping timeout: 248 seconds]
<set_> The reason I ask...https://pastebin.com/s5zSJv1H does no do anything. I am trying to configure something in C/C++ w/ LibRobotControl...
<set_> This is for someone on the forums but my C skills are minimal and I am not receiving too many replies just yet.
<set_> Silly? Yes. I understand. I am new to this outdated lib.
<set_> I figured I would try to help as usual. Oops!
<set_> I can try to type in C but I am not sure what exactly to enable w/ the PRU and the PWM channels on the BBBlue...
<set_> or...should I use config-pin?
<set_> I will check back later...
Shadyman has joined #beagle
vagrantc has joined #beagle
vagrantc has quit [Quit: leaving]
aussetg has quit [Remote host closed the connection]
aussetg has joined #beagle
buzzmarshall has quit [Remote host closed the connection]
aussetg has quit [Remote host closed the connection]
aussetg has joined #beagle
Posterdati has quit [Ping timeout: 240 seconds]
ikarso has joined #beagle
Posterdati has joined #beagle
xet7 has joined #beagle
otisolsen70 has joined #beagle
xet7 has quit [Quit: Leaving]
ikarso has quit [Quit: Connection closed for inactivity]
Shadyman has quit [Quit: Leaving.]
<zmatt> set_: I have never used librobotcontrol
ikarso has joined #beagle
Bruno75 has joined #beagle
<Bruno75> Hello,
<Bruno75> Sorry to bother.
<Bruno75> I have bought a Beagle Bone Black and I wasn't able to setup a desktop environment, as I need graphics for my application.
<Bruno75> I have a 32GB sd card, but I didn't find any image with a pre installed desktop environment for the beagle black, is there one available ?
<Bruno75> I've installed the latest debian one without lxqt but ran into a "no space left available on device" when I tried to install it.
<Bruno75> At this point I'm kind of lost. Any suggestion ?
<Bruno75> Thanks.
brook_ has quit [Remote host closed the connection]
brook has joined #beagle
brook has quit [Remote host closed the connection]
brook has joined #beagle
lucascastro has joined #beagle
brook has quit [Ping timeout: 268 seconds]
brook has joined #beagle
ft has quit [Remote host closed the connection]
Stat_headcrabed has joined #beagle
Stat_headcrabed has quit [Client Quit]
ft has joined #beagle
Posterdati has quit [Read error: Connection reset by peer]
<zmatt> Bruno75: yeah modern desktop environments are kinda too bloated to fit on eMMC, certainly together with the other stuff on the IoT image, so you'd either need to just run from sd card (at a substantial performance cost) or install a minimal image and then manually install a desktop environment on top of that with apt (and pray you can keep it minimalistic enough to not run out of space)
<Bruno75> thanks ! Do you recommend an image to run from a sd card ?
<zmatt> they're also not going to run particularly well, the AM335x is an industrial processor, its very limited graphics capabilities are meant for simple touchscreen interfaces, not for using it as a desktop computer
<Bruno75> Yeah I think I'm going switch back to Raspberry Pi for this application, I need quite good graphics.
<zmatt> you say you need "graphics" for your application but that doesn't sound like you actually need a desktop environment
<Bruno75> No, running a full screen app in Full HD, 30fps is fine
<zmatt> well you definitely don't need a desktop environment for running a single fullscreen app, you may not even need X11 at all depending on what graphics sdk/toolkit you want to use, e.g. qt5 applications can run fullscreen directly on the framebuffer
<zmatt> (and if you don't need X11 you may even be able to use the 3d gpu for opengl es/es2, though it's a bit of a hassle to get it working)
<zmatt> (at least I'm assuming it still is, haven't really done anything with graphics on a beaglebone for a long time)
<zmatt> but yeah, depending on what exactly your graphics needs are and how they compare against your app's other needs it's possible a board from the rpi family may be better suited, as it uses a media SoC
<ds2> or look at the BBC's
<ds2> They use a media processor
Posterdati has joined #beagle
<zmatt> Bruno75: oh and I just noticed the "full hd" ... 1920x1080 is definitely outside the beaglebone's comfort zone... iirc it does technically support it, but updating a gui at 30fps at that resolution would probably require some skillful optimization
<Bruno75> Thanks a lot.
<zmatt> Bruno75: the beaglebone does have bigger siblings with more powerful SoCs, but whether one of those or an rpi would be a better fit for your needs is of course hard to say considering without having some idea of what your needs are ;)
<Bruno75> To host this app, basically ;) https://www.youtube.com/watch?v=A3H04yo7U7Y
<zmatt> that looks very non-intensive, especially only tiny parts of the screen are being updated... though what's with that orange flashing? :P
Stat_headcrabed has joined #beagle
<zmatt> and is it also doing the audio processing or is it just an interface that controls an external device e.g. via MIDI ?
<Bruno75> no audio processing, just midi
<Bruno75> the orange flashing is when the knobs are updated... or instable :D
<Bruno75> unstable*
<zmatt> yeah I figured it was to highlight changing parameters, but it seems a bit... excessive? it kinda looks more like a rendering bug because of how severely it flickers :D
<zmatt> at least it's hard to miss I guess
<Bruno75> yay it's a prototype... in the newer version there is only a border around the squares, less flashy
<zmatt> but yeah if it's this + MIDI (which just needs an uart that supports 31250 baud + a small bit of external logic) then using a more graphics-oriented board would probably be a more efficient use of your time than getting it optimized to run on a beaglebone
<zmatt> like, I'd be the kind of person who'd go for the latter option but that's because I'm very familar with beaglebones and would prefer to use one (plus I'm not a fan of the rpi's closedness)
<zmatt> this gui does looks like it would be relatively simple to optimize since it's fully custom (no graphics toolkit) and has very limited variety in graphical elements
Stat_headcrabed has quit [Quit: Stat_headcrabed]
<zmatt> oh ew, it doesn't seem like linux even checks the "use VCP driver" bits in eeprom to determine if it should use ftdi_sio, it just uses a hardcoded vid/pid table and some custom probing rules for some of them
Stat_headcrabed has joined #beagle
Stat_headcrabed has quit [Client Quit]
Stat_headcrabed has joined #beagle
Stat_headcrabed has quit [Client Quit]
Stat_headcrabed has joined #beagle
Stat_headcrabed has quit [Quit: Stat_headcrabed]
Stat_headcrabed has joined #beagle
Pete has joined #beagle
Stat_headcrabed has quit [Quit: Stat_headcrabed]
Pete has quit [Client Quit]
Silverside_Pete has joined #beagle
<zmatt> whoops wrong window
<Silverside_Pete> Using a RotatingFileHandler for logging on our BBB Industrials is problematic: the first file logs correctly until maxBytes is reached. Then that file and all rotated log files contain exactly one line of logged output. This doesn't happen using the same code on other platforms. Is it a known issue and is there a fix aside from rolling our own log
<Silverside_Pete> file handler?
<zmatt> that sounds very odd
<zmatt> nothing about file handling is beaglebone-specific obviously, that's just the linux kernel
<Silverside_Pete> Agree that it's very odd. File handling works correctly on linux laptop, RPi, MacOS. Same code doesn't work correctly on BBB.
<zmatt> "and all rotated log files" .. like huh, existing logfiles are corrupted?
<zmatt> or maybe I'm misunderstanding what you meant
<zmatt> do you have a simple test-case?
<Silverside_Pete> No. if you catch it quick, first file gets rotated into blah.log.1. then blah.log contains exactly one line before it gets rotated into blah.log.1 and so on. No, sorry don't have a simple test case.
<Silverside_Pete> But since each rotated file rotates after logging one line, the original file quickly gets rotated into oblivion.
<zmatt> so you mean it rotates prematurely?
<Silverside_Pete> WAY prematurely.
<zmatt> so the problem is in RotatingFileHandler's decision-making on when to rotate?
<Silverside_Pete> Right. Works on most platforms, doesn't work on BBB.
<zmatt> so then the next question would be, how does it decide when to rotate?
<Silverside_Pete> That's undoubtedly buried in the guts of RotatingFileHandler. MY next question is, why does it decide to rotate differently on BBB than on other platforms.
xet7 has joined #beagle
<zmatt> well the former may shed light on the latter, since it's not going to be hardware-dependent so there will be _something_ different about the system's state or configuration
<zmatt> is the beaglebone's system clock set though ntp?
<zmatt> if your service starts before the beaglebone's system time has been synchronized, how does RotatingFileHandler react to the system time suddenly making a huge jump forwards?
<Silverside_Pete> How can it NOT be hardware dependent? Same code produces different output on different hardware. Good question about the system clock. The BBB is not connected to the outside world. Can the system clock access a time server?
<Silverside_Pete> All the systems on which the files rotate correctly have internet connectivity. The BBBs do not. Perhaps this is somehow related to the issue.
<zmatt> if the BBB has no network connectivity then it has no way to set the system date/time, nor does it have a way to preserve it across power cycles since there's no battery in the bbb
<Silverside_Pete> The timestamps in the single-line rotated log files appear to be correct.
<zmatt> well then it evidently does have access to an ntp server
<Silverside_Pete> The BBB is connected to the outside world by a USB connection to a laptop. Perhaps it syncs the time with the laptop. I don't think ntp access is the issue, although I will look carefully at it.
<zmatt> well it can't know the system date/time by magic
<zmatt> if the system date/time is set correctly, either the beaglebone can reach an ntp server or you've implemented something custom
<Silverside_Pete> I will talk to our hardware guys about that. Maybe they've done something tricky. I agree that the BBB must be getting its time from someplace.
<zmatt> anyway, the hypothesis that perhaps RotatingFileHandler is getting confused by a time-jump is easily testable: if you restart your service (the one that's using RotatingFileHandler) after the system has fully booted and the system date/time is correctly set (check using "date")
<zmatt> does it still happen then?
<zmatt> just for clarity, are you using RotatingFileHandler or TimedRotatingFileHandler ?
<Silverside_Pete> 'date' gives me UTC date/time that's completely incorrect - set to last year sometime. I tried both RFH and TRFH - same results.
<zmatt> okay so the bbb has no system time set... that doesn't completely rule out the hypothesis since the system clock will still jump forward during boot (from 1970 to a semi-recent one based on a saved timestamp)
<Silverside_Pete> I'll bet a dollar you're onto something. This looks promising.
<zmatt> are you using TimedRotatingFileHandler? because if you're actually using RotatingFileHandler which only rotates based on file size then that would be much much stranger
<zmatt> Silverside_Pete?
<Silverside_Pete> I tried both handlers. They both behaved in identical fashion. I set the TRFH to rotate at one minute intervals. The first minute, the log file filled up with data. The file rolled over - rotated file now has first batch of data. File rolls over again - first batch of data is in limbo, both log files now contain a single line of output.
<Silverside_Pete> But same thing happens using file-size-based RotatingFileHandler. Set it to log file size 10K, reaches its limit, rotates the old data into a saved file, logs a single line of data, rotates that into the saved file, overwriting the log data.
<zmatt> well that excludes any hypothesis based on system time
<Silverside_Pete> =(
<Silverside_Pete> Nevertheless, the fact that all the systems on which the files rotate correctly have had access to the internet is a major difference with the BBB.
<zmatt> system time is the only mechanism which would have explained why internet access might matter
<zmatt> so, I just tried this: https://pastebin.com/aZvvPPfi
<zmatt> and it rotates just fine for me, as I'd expect
<zmatt> writes 5 lines into each file (which is correct for the maxsize I gave) and then rotates
<zmatt> does this simple test fail to rotate properly for you?
<Silverside_Pete> Thanks! Rotates properly. Puzzling.
<zmatt> random thought: are you maybe setting the max log size based on total disk space or free disk space?
<zmatt> with the bbb having much less thereof than your other systems
<zmatt> also, just for reference, what system- and python-version are you using? ( cat /etc/debian_version /etc/dogtag; python3 --version )
<Silverside_Pete> That's why we're rotating the log files. The systems live several years unattended in the field and we don't want the file size to eat up the ~1GB of free space. python is 3.9.2, sside@BeagleBone:~$ cat /etc/debian_version /etc/dogtag
<Silverside_Pete> 11.3
<Silverside_Pete> BeagleBoard.org Debian Bullseye IoT Image 2022-05-10
<Silverside_Pete> Interesting that 2022-05-10 is the date shown in the log files
<Silverside_Pete> I've gotta break now. Many thanks for your help. I will be back on this on Wednesday.
<zmatt> that's not that interesting: I already mentioned that when the system date is completely uninitialized (1970) it gets fast-forwarded at least to some recent file timestamp
<zmatt> Silverside_Pete: maybe inspect what handler.maxBytes is actually configured to be
<zmatt> as an aside, you could also consider logging to journal, which is the main logging facility on modern systemd-based linux systems
<zmatt> (journal can be configured to be persistent (on disk) or volatile (in ram) with configurable limits)
vagrantc has joined #beagle
jfsimon1981 has joined #beagle
Bruno75 has quit [Quit: Client closed]
nslu2-log_ has joined #beagle
nslu2-log has quit [Read error: Connection reset by peer]
nslu2-log_ is now known as nslu2-log
otisolsen70 has quit [Quit: Leaving]
Guest18 has joined #beagle
jfsimon1981 has quit [Remote host closed the connection]
jfsimon1981 has joined #beagle
Guest18 has quit [Quit: Client closed]
ikarso has quit [Quit: Connection closed for inactivity]
brook has quit [Ping timeout: 250 seconds]