*** tpb has joined #tomu | 00:00 | |
*** Kitlith has joined #tomu | 04:17 | |
*** rqou has quit IRC | 09:35 | |
*** rqou has joined #tomu | 09:36 | |
xobs | If anyone feels like debugging Ubuntu 18.04, it looks like their ARM implementation of memcpy() is completely broken. | 09:55 |
---|---|---|
xobs | See https://github.com/im-tomu/tomu-quickstart/issues/13#issuecomment-414617868 for evidence. The good news is you don't need a debugger to verify the problem. | 09:56 |
*** im-tomu has left #tomu | 09:56 | |
tpb | Title: Nothing builds with Ubuntu 18.04 · Issue #13 · im-tomu/tomu-quickstart · GitHub (at github.com) | 09:56 |
*** im-tomu has joined #tomu | 09:56 | |
im-tomu | [sameroom-bot] **[@xobs:matrix.org, irc.freenode.net]** If anyone feels like debugging Ubuntu 18.04, it looks like their ARM implementation of memcpy() is completely broken. | 09:57 |
MadHacker | That seems a little too fundamental somehow. Isn't there an ARM build of ubuntu? Presumably that'll fall over too. | 10:11 |
xobs | Oh, no, I see what's going on. It's linking the ARMv7 version of the library. Which happens to disassemble into almost-reasonable-looking Thumb2 code. | 10:13 |
MadHacker | That feels more like a sane-ish screwup; I presume the CPU on the tomu is a thumb-only job, yeah? | 10:15 |
xobs | Yeah, all Cortex M0 parts are Thumb2 only. | 10:15 |
xobs | I believe this is the bug. Seems like Ubuntu 18.04 can't generate code for M0 parts: https://bugs.launchpad.net/ubuntu/+source/gcc-arm-none-eabi/+bug/1767223 | 10:16 |
tpb | Title: Bug #1767223 “multilib selects wrong start files” : Bugs : gcc-arm-none-eabi package : Ubuntu (at bugs.launchpad.net) | 10:16 |
MadHacker | https://bugs.launchpad.net/ubuntu/+source/gcc-arm-none-eabi/+bug/1767223/comments/10 I see there's an actual fix there. | 10:18 |
tpb | Title: Comment #10 : Bug #1767223 : Bugs : gcc-arm-none-eabi package : Ubuntu (at bugs.launchpad.net) | 10:18 |
MadHacker | https://github.com/bbcmicrobit/micropython/issues/514#issuecomment-404759614 or rather, the direct link. | 10:18 |
tpb | Title: fails to link with arm-none-eabi/lib/crt0.o: Conflicting CPU architectures 12/1 · Issue #514 · bbcmicrobit/micropython · GitHub (at github.com) | 10:18 |
xobs | It's funny how it links without errors. | 10:21 |
MadHacker | You'd think it would know it's linking an incompatible binary. | 10:21 |
xobs | Thank you for the links, MadHacker | 10:21 |
MadHacker | Perhaps it's because ARM and Thumb2 are considered compatible, because the fat CPUs can run both. | 10:21 |
xobs | True, although others are reporting errors. Maybe that isn't reported when linking against a .a file. | 10:28 |
xobs | Oh well, I can confirm the workaround fixes things. | 10:28 |
MadHacker | Good stuff. At least it's not too much of a chore. | 10:28 |
MadHacker | Little annoying to have to do it tho. | 10:29 |
MadHacker | Worth bundling the right .a's in the quickstart and ignoring the system ones? | 10:29 |
xobs | The workaround seems usable, and it looks like it should get fixed eventually. 18.04 broke a lot of stuff, it seems. | 10:29 |
xobs | That is a tempting proposition. Makes it an even quicker start. | 10:30 |
xobs | It was a pain to find the cause, though. When it hits that function the link register is clobbered, so you don't know how you got there. I guess this is the sort of thing ETM is good for figuring out. | 10:31 |
MadHacker | I recall you had some nice web-based infrastructure for building for the chibichip. Same for the tomu? | 10:31 |
xobs | Nothing for Tomu. The web stuff was useful because the Chibi Chip is programmed via audio. Tomu would really only be useful on Chrome, since it is programmed via DFU. | 10:32 |
MadHacker | "Only useful on chrome" covers a lot of people, though. | 10:32 |
xobs | Having said that, if you want to upload code to Tomu via Chrome, you can do that at http://dfu.tomu.im/ | 10:32 |
tpb | Title: WebUSB DFU (at dfu.tomu.im) | 10:32 |
xobs | Or https://dfu.tomu.im/ I suppose. TLS is important. | 10:32 |
tpb | Title: WebUSB DFU (at dfu.tomu.im) | 10:32 |
MadHacker | Mm, I saw that when I did the first firmware update. It's somewhat what brought the thought to mind. | 10:33 |
MadHacker | Adding the compiler on to that would give you a fairly close to chibichip experience on chrome. | 10:33 |
MadHacker | I'm busy trying to think of generic ways for a browser to talk to it now. I guess we could make it emulate a USB sound-card and use the chibichip code :D | 10:34 |
MadHacker | (not literally, probably; that'd be inefficient when we have a cleaner stream like that) | 10:35 |
xobs | That's a clever idea. If anyone wants to tackle that, you can start with the quickstart repo at https://github.com/im-tomu/tomu-quickstart/tree/master/usb-audiostream | 10:36 |
tpb | Title: tomu-quickstart/usb-audiostream at master · im-tomu/tomu-quickstart · GitHub (at github.com) | 10:36 |
xobs | Game controllers were another idea I had. Once vibration support is finalized. | 10:37 |
xobs | Weirdly, Firefox and Edge support haptics but not Chrome. | 10:39 |
MadHacker | https://github.com/chibitronics/ltc-npm-modulate for the encode, I see, but where's the decode stuff? | 10:41 |
tpb | Title: GitHub - chibitronics/ltc-npm-modulate: Node package for modulating audio signals for LtC (at github.com) | 10:41 |
MadHacker | I assumed in https://github.com/chibitronics/ltc-os but I don't see it. | 10:41 |
tpb | Title: GitHub - chibitronics/ltc-os: ChibiOS-based operating system for the Love-to-Code project (at github.com) | 10:41 |
MadHacker | Game controller vibration support is a good idea, yep - that'd be a sensible way to talk to it, plus it's not a bad initial mode for the thing to boot in anyway, as a generic HID. | 10:42 |
xobs | It's spread across https://github.com/chibitronics/ltc-os/blob/master/orchard/esplanade_analog.c https://github.com/chibitronics/ltc-os/blob/master/orchard/esplanade_mac.c and https://github.com/chibitronics/ltc-os/blob/master/orchard/esplanade_demod.c | 10:42 |
tpb | Title: ltc-os/esplanade_analog.c at master · chibitronics/ltc-os · GitHub (at github.com) | 10:42 |
MadHacker | Thanks. | 10:42 |
MadHacker | Obviously using it as-is is fairly nonsensical, but it's still maybe useful as I doubt the OS will reliably give you the same bit values out as you put in, given OS-level audio mixing etc. | 10:43 |
MadHacker | So a certain degree of actual modem-y behaviour is probably still required. | 10:43 |
xobs | It got cleaned up a lot when I tried to make an updater. https://github.com/xobs/ltc-fw-updater/tree/master/src | 10:43 |
tpb | Title: ltc-fw-updater/src at master · xobs/ltc-fw-updater · GitHub (at github.com) | 10:43 |
*** huene has quit IRC | 11:55 | |
*** huene has joined #tomu | 12:03 | |
*** im-tomu has quit IRC | 15:38 | |
*** im-tomu has joined #tomu | 15:39 | |
*** Kitlith- has joined #tomu | 15:49 | |
*** Kitlith has quit IRC | 15:50 | |
*** im-tomu has quit IRC | 15:50 | |
*** im-tomu has joined #tomu | 15:51 | |
*** im-tomu has left #tomu | 16:00 | |
*** im-tomu has joined #tomu | 16:01 | |
*** _florent_ has quit IRC | 18:42 | |
*** part has quit IRC | 18:42 | |
*** matt_c has quit IRC | 18:42 | |
*** samueldr has quit IRC | 18:47 | |
*** samueldr has joined #tomu | 18:49 | |
*** duncan^ has quit IRC | 19:04 | |
*** duncan^ has joined #tomu | 19:05 | |
*** kuldeep has quit IRC | 19:44 | |
*** CRImier- has quit IRC | 19:44 | |
*** hop has quit IRC | 19:44 | |
*** hop has joined #tomu | 19:52 | |
*** kuldeep has joined #tomu | 19:53 | |
*** rqou_ has joined #tomu | 19:53 | |
*** rqou has quit IRC | 19:53 | |
*** rqou_ is now known as rqou | 19:53 | |
*** czer00 has joined #tomu | 20:32 | |
*** joehut has quit IRC | 21:07 | |
*** joehut has joined #tomu | 21:39 |
Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!