Previous day | Jump to hour: 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 | Next day

Seconds: Show Hide | Joins: Show Hide | View raw
Font: Serif Sans-Serif Monospace | Size: Small Medium Large

Click in the nick column to highlight everything a person has said.
The Logo icon identifies that the person is a core developer (has commit access).

#rockbox log for 2023-04-17

00:05:29rb-bluebotBuild Server message: Build round completed after 903 seconds.
00:05:32rb-bluebotBuild Server message: Revision dfe12252bb result: 451 errors 66 warnings
00:08:11 Join jacobk [0] (~quassel@
00:14:31 Quit _bilgus_ (Ping timeout: 252 seconds)
00:15:38 Join _bilgus [0] (~bilgus@
00:37:16 Quit m01 (Quit: Konversation terminated.)
00:37:56rb-bluebotBuild Server message: New build round started. Revision 100e9ac137, 303 builds, 8 clients.
00:37:56rb-bluebotFix Red lastfm_scrobbler_viewer.c by William Wilgus
00:39:38 Join m01 [0] (
00:54:16rb-bluebotBuild Server message: Build round completed after 980 seconds.
00:54:18rb-bluebotBuild Server message: Revision 100e9ac137 result: All green
01:28:46***Saving seen data "./dancer.seen"
01:50:24 Quit advcomp2019_ (Read error: Connection reset by peer)
01:50:47 Join advcomp2019_ [0] (~advcomp20@user/advcomp2019)
03:28:47***Saving seen data "./dancer.seen"
03:29:04 Quit jacobk (Ping timeout: 248 seconds)
05:16:23 Quit Bobathan_ (Ping timeout: 264 seconds)
05:22:22 Join Bobathan_ [0] (
05:28:50***Saving seen data "./dancer.seen"
05:36:31 Quit Bobathan_ (Ping timeout: 240 seconds)
05:39:32 Join Bobathan [0] (
05:47:13 Quit Bobathan (Ping timeout: 276 seconds)
05:52:22 Join Bobathan_ [0] (
06:07:04 Quit Bobathan_ (Ping timeout: 252 seconds)
06:10:36 Join Bobathan_ [0] (
06:14:45 Quit Bobathan_ (Ping timeout: 240 seconds)
06:25:36 Join Bobathan_ [0] (
06:38:20 Quit Bobathan_ (Ping timeout: 246 seconds)
06:39:34 Join Bobathan_ [0] (
07:28:52***Saving seen data "./dancer.seen"
07:55:02 Join evan_ [0] (
07:55:23 Nick evan_ is now known as Dook (
09:02:33 Quit _bilgus (Quit: Leaving)
09:28:54***Saving seen data "./dancer.seen"
09:55:22speachyNyaa: No in herent reason why not; if I'm reading the specs on that thing properly there are _Three_ separate cores; the highest power one is a 64-bit native one that's probably going to be a bit of a headache, but the middle one looks about perfect. The tiny one should still be useful too.
09:57:09speachynot immediately obvious if there's an onboard audio codec and what board pinout supports (eg we'd want 4-bit MMC/SD, 3-bit I2S, external SPI flash and some sort of display hookup, etc..)
10:13:15 Quit Dook (Ping timeout: 255 seconds)
11:28:56***Saving seen data "./dancer.seen"
11:29:56 Join jacobk [0] (~quassel@
11:51:26Nyaaspeachy, there is onboard audio and display
11:51:36Nyaathough accessible in somewhat odd ways
11:52:13Nyaamaybe the reference manual would be a better resource one sec
11:52:19speachyprobably don't need external flash, as long as there's enough onboard for a bootloader capable of hitting the SD card.
11:52:46Nyaahere's the reference manual
11:54:16Nyaaspeachy, additionally i'm pretty sure the middle core is the core that boots the device, the other two you have to set up yourself after
11:57:51Nyaathe flash is "external" flash already, though the ox64 boards come in two variants, one with 2MiB of external [soldered winbond chip] and without an sdcard slot, and one with 16MiB [also asoldered winbond chip] and with an sdcard slot
11:58:07Nyaaiirc it's also possible to solder a 32MiB SPI chip too
12:02:43Nyaaoh, also due to a bootrom bug, it'd be semi-necessary to include a USB programming mode in anything you flash to the SPI memory, since programming it otherwise is pretty annoying, i've been stuck trying to figure that one out lol
12:06:41Nyaathe datasheet has more info about the hardware specifications too,
12:07:29Nyaathe on-board audio only does one channel, so supporting an external audio codec might be a good idea if someone did want to port it lol
12:12:32jssfr• Integrated with two 20-bit DACs that support two analog LINEOUT differential outputs with ramp power-on function
12:12:35jssfrthat sounds like two-channel?
12:12:46jssfror is that one channel with differential output?
12:13:16Nyaaoh i was looking at the audio codec
12:13:29Nyaait also has a general purpose dac [or maybe two?]
12:13:39jssfrI was looking at the AUDIO thing, too
12:13:49Nyaadatasheet says "DAC*1"
12:13:52jssfr(page 527 in the reference manual)
12:15:48jssfr> AUDIO has two DACs.
12:15:52jssfrthis is explicit, seems sensible
12:16:10jssfrfor a reference manual, that document has shockingly little information on how to access the DAC
12:16:15Nyaayeah hold on i'm asking the pine64 dev team which one is correct
12:16:35Nyaainitial response is that they don't know either and to check the SDK
12:16:54Nyaahere's the SDK
12:18:59Nyaaok i see two channels init'd in the SDK demo
12:19:10jssfrwas just looking at, too
12:19:31jssfrwith a SoC-DAC, I'd really like to hear how it sounds before investing any effort in porting to it though.
12:20:03Nyaalol yeah idk how good it'll be since the onboard audio is mostly an afterthought afaict
12:20:17Nyaabut there's plenty of gpio to support an external codec
12:20:56jssfr(including I2S)
12:21:18jssfrthough the question is if I2S is exposed on the Ox64 pinout.
12:22:10jssfrwhenever I look at processor/microcontroller vendors which are not STM or Atmel, I'm massively disappointed by documentatio.n
12:22:11Nyaait does
12:22:26jssfrahhh, up there
12:23:15Nyaathey also said a lot of stuff goes through pinmux so most of the pins are re-assignable
12:32:47Nyaaguess first question would be, can the rockbox bootloader be compiled to RV32IMAFCP or a subset of it
12:33:16Nyaagonna have a hard time going anywhere if it won't even compile to the architecture lol
12:33:19jssfrI would be surprised if not, possibly with minor modifications
12:33:30jssfrif GCC has support for that, at least :-)
12:33:38Nyaait does
12:33:53Nyaauhh, what version of gcc gets used
12:34:00Nyaaif it's an ancient version like 4.3 than no lol
12:34:09*jssfr is still disappointed that his toy FPGA is too weak to synthesize any 32-bit RISC-V he found in :<
12:34:23gevaerts4.3 is *new*!
12:34:25Nyaajssfr, well you could grab one of these ox64 boards, they're pretty cheap lol
12:34:28jssfrI do seem to recall rockbox being rather opinionated about gcc versions, but I don't recall whether that was specific to a target ... :-)
12:34:42*gevaerts still feels that gcc 2.7 is normal :)
12:34:49jssfrNyaa, thanks, I've got a bunch of ESP32-C3 on my desk :-).
12:34:55Nyaaah i have one of those too
12:35:22speachymy "new" vs "old" is the EGCS fork. :D
12:35:56gevaertsAh yes!
12:36:59Nyaalooks like the oldest version of gcc recommended for compiling code for the 64 bit core is gcc-git lol
12:37:09Nyaabecause they're still not done fully adding support in
12:37:31Nyaa[mostly the vector extensions]
12:38:59Nyaalooks like the official risc-v toolchain uses gcc-12.2 though
12:39:55speachyjssfr: Rockbox doesn't actually care about which gcc version you use (in a general sense) but as we do a ton of low-level stuff newer versions of the compiler (and linker, etc) might trip over latent bugs or grey areas in our codebase.
12:40:19Nyaatime to just rewrite all of rockbox /s
12:41:02speachyfor example, a lot of the build farm runs gcc 12 or 13 for the sim builds.
12:41:36Nyaaah, if the gcc-12 series works at least for part of it than it should hopefully not be too hard lol
12:41:57speachybut for the targets, we're currently on 4.9.4 across the board. I have a bump to 8.5 sitting in gerrit but I haven't found enough volunteers to try builds on platforms I don't have.
12:41:58gevaertsIf you're doing the first port for a new CPU architecture, you pick the version you want
12:42:10speachyexactly ^^^
12:42:22gevaertsIf it's another arm, things are a bit more subtle
12:42:44Nyaaunless it's arm64 since it looks like no 64 bit targets are supported currently
12:43:07speachyyeah, we might need to rebuild our arm toolchains so they have native v6m/v7m libc stuff.
12:43:40speachyHmm, I should add that into the gcc8.5 patchset.
12:44:11gevaertsI shoud consider sending some of my players to people who actually still do stuff...
12:44:20speachyI'd strongly caution against native 64-bit rockbox builds.
12:44:28Nyaato be fair it does look like there is a fork/patchset for gcc 4.9.x to add risc-v but idk how much of a good idea that is given risc-v is still an emerging architecture
12:45:06gevaertsIf you're doing a risc-v port, I see no reason to go for older compilers. You have no regressions to worry about
12:45:39Nyaaah, makes sense
12:46:31*Nyaa wonders if rockbox is compilable with LLVM/Clang
12:47:28gevaertsFor the existing ones the worry is that suddenly it crashes on boot for regular users after a regular upgrade and similar things. For new ports, that's just not an actual scenario
12:48:08speachyNyaa: it's probably safer to say that rockbox requirs GNU LD, rather than GCC per se.
12:48:55Nyaadoes rockbox have like, a generic target, for doing toolchain related stuff
12:50:59Nyaai want to see how badly it explodes if i do try to use clang lol
12:52:22speachya good start would be to build a hosted or simulator target using clang
12:52:34speachyor the generic SDL target
12:52:54Nyaamakes sense
12:53:15Nyaahow much storage space do i need for a rockbox dev environment lol
12:53:42*Nyaa is moving stuff off her SSD and onto her HDD to free up space since she only has like 10GB left
12:53:46jssfrmy ~/Builds/rockbox, i.e. including a build and all kinds of stuff in there, is less than a GB
12:53:57Nyaaok i should be fine then lol
12:54:05Nyaai'm used to projects that require a lot more space
12:54:07jssfrit's a media player firmware, not chromium.
12:54:21*Nyaa ports chromium to it
12:54:22Nyaajk lol
12:55:08speachytoolchains for all targets (other than android) take about 1.7GB.
12:55:26speachyall combined, that is
12:55:37gevaertsSimilar numbers here
12:55:49gevaertsandroid doesn't really count I'd say
12:55:56Nyaaandroid is android lol
12:55:59speachyabout .5GB for a git checkout and a single target build.
12:56:08gevaertsI mean, the android port is basically dead
12:56:20speachythe android ndk+sdk take over 5GB. :D
12:56:44Nyaai wonder if it would be possible to port to the iphone 1/2 or ipod touch 1, bare metal lol
12:57:07Nyaa[they have practically no bootloader locking and are easy to get bare metal stuff to boot untethered on]
12:57:25gevaertsFeel free to have a go :)
12:57:27speachythe first couple of generations are an arm1100ejs IIRC
12:57:53speachywe have the core support and toolchains for that already, so all that's left is the port to the actual hardware.
12:58:27speachyno silver bullets here, just a lot of lead.
12:58:58Nyaamight try once i'm not using the iphone 2 as my main phone lol
12:59:10Nyaathat'll either happen when i fix my usual main device or 2g gets shut down
12:59:13Nyaawhatever happens first
13:00:15gevaertsIs there any hardware documentation available for those? As in, has anyone reverse engineered things?
13:00:19Nyaathe iphone 1, 2, and ipod 1g all have near identical hardware
13:00:37Nyaayeah, the openiboot team did a while back, they got linux booting on it iirc
13:00:53speachyipod touch 1g, that is
13:01:05Nyaathe iphone 1, 2, and ipod touch 1 are all identical hardware-wise iirc
13:01:13Nyaadifferences being cellular/gps modems
13:03:38gevaertsThen with sufficient motivation it should be possible
13:04:17Nyaathe ipod touch 2g introduced new hardware though
13:04:26 Quit jacobk (Ping timeout: 250 seconds)
13:05:04Nyaai think the ipod touch 2g and iphone 3gs [third gen iphone] are identical though, minus the modem... including the "MC" hardware revision where they actually locked the bootloader
13:06:30Nyaathe non-MC models should be supportable but after that it's much harder
13:07:53Nyaaiirc, everything from the ipt2g/ip3gs mc model through the iphone x / ipod touch 7g all require a tethered bootloader exploit to boot into unsigned code
13:08:07Nyaanewer iphones have no such exploit and apple hasn't made a newer ipod touch
13:23:10 Join jacobk [0] (
13:27:09Nyaajssfr, oh also the ox64 has zigbee and full bluetooth while iirc the esp32-c3 only has ble, no regular bluetooth [and no zigbee either]
13:27:44Nyaai remember wanting to make a bluetooth audio thing for the esp32 i had only to learn it has no bluetooth classic support
13:28:28Nyaanow it runs the lighting in my room lol
13:28:57***Saving seen data "./dancer.seen"
13:34:01jssfrI certainly don't want bluetooth anywhere near my audio
13:38:14 Join lebellium [0] (
15:07:09Nyaadoes rockbox not factor in a generic lithium-ion discharge curve when calculating battery percentage, at least not on cowon d2?
15:07:24Nyaathe discharge curve looks near identical to how my pinetime acted before infinitime factored that in
15:07:42Nyaaquickly dropping from 95-100% down to 78-85%, then much slower down to ~50-60%, then way faster again
15:09:25 Join Dook [0] (
15:10:11jssfrI thought there was calibration stuff per target?
15:10:30Nyaai mean, there probably is, but all lithium-ion batteries follow a pretty similar pattern
15:10:48Nyaaa generic default could be included for stuff that hasn't had a calibration created yet
15:14:05Nyaaplus, given a lot of rockbox devices are aging now and many people would have replaced the included batteries, a generic discharge curve might be more accurate than the included one
15:14:26Nyaa[provided the device gives an accurate voltage readout, anyway]
15:16:27 Quit tjaden (Quit: leaving)
15:23:54Nyaanickel-metal hydride and nickel-cadmium batteries have a similar discharge curves to li-ion too, although vastly different peak/cutoff voltages
15:24:18Nyaathey should all be interpolatable with bézier curves, though there's probably simpler maths for doing the same thing too
15:25:14Nyaayou basically need: peak voltage, first inflection, second inflection, cutoff voltage
15:25:29Nyaaand the whole curve is interpolatable from that
15:26:37Nyaa[oh, first/second inflection would be a percentage/voltage pair, not one value]
15:29:00***Saving seen data "./dancer.seen"
15:48:07 Join tjaden [0] (~tjaden@user/tjaden)
16:44:09 Quit lebellium (Quit: Leaving)
16:48:55 Quit jacobk (Ping timeout: 252 seconds)
16:50:07 Quit Dook (Quit: Dook)
17:06:16 Join munkis [0] (~mendel_mu@2600:4041:5ad1:6800:b225:aaff:fe48:a92c)
17:29:02***Saving seen data "./dancer.seen"
17:45:55speachyokargh. make 4.4 triggers a build failure in our hosted toolchains.
18:03:24atsDoes 4.4.1 work OK? 4.4 had a nasty bug where it spawned child processes with SIGPIPE blocked...
18:05:55speachyit's a bug in the glibc makefiles, I just backported the fix and I'm seeing if that solves things.
18:45:23 Join massiveH [0] (~massiveH@2600:4040:a99f:1f00:78e1:7a67:8605:5788)
19:17:58 Quit Ckat (Ping timeout: 252 seconds)
19:29:03***Saving seen data "./dancer.seen"
19:37:19 Join Retr0id7 [0] (~Retr0id@user/retr0id)
19:37:49 Quit Retr0id (Read error: Connection reset by peer)
19:37:49 Nick Retr0id7 is now known as Retr0id (~Retr0id@user/retr0id)
19:51:20 Join Ckat [0] (~Ckat@xn--z7x.xn--6frz82g)
21:03:54Nyaais there a list of which fonts have multilingual [particularly CJK] support anywhere?
21:05:41NyaaI can read cryllic, kana, a bit of hangul, and a bit of hanzi; so i often leave my music filenames as-is... but most of the rockbox fonts can't render them
21:08:02Nyaacurrently using 12pt sazanami mincho but that's missing accented latin characters
21:13:18Nyaa14pt rockbox mix appears to have everything, as does 16pt unifont, but those are too big
21:15:45Nyaaah, 11pt sazanami mincho appears to have everything but it's slightly too small lol
21:21:59 Join jacobk [0] (
21:29:05***Saving seen data "./dancer.seen"
21:39:38 Quit massiveH (Quit: Leaving)
21:47:44 Quit jacobk (Ping timeout: 248 seconds)
21:56:41 Join _bilgus [0] (
23:09:39 Join amiconn_ [0] (
23:09:39 Nick amiconn is now known as Guest5278 (
23:09:39 Quit Guest5278 (Killed ( (Nickname regained by services)))
23:09:39 Nick amiconn_ is now known as amiconn (
23:10:04 Join pixelma_ [0] (
23:10:04 Nick pixelma is now known as Guest8527 (
23:10:04 Quit Guest8527 (Killed ( (Nickname regained by services)))
23:10:04 Nick pixelma_ is now known as pixelma (
23:29:09***Saving seen data "./dancer.seen"

Previous day | Next day