*** tpb has joined #tomu | 00:00 | |
futarisIRCcloud | https://twitter.com/antmicro/status/1205248711422558209 - it's xobs on the far right | 00:20 |
---|---|---|
*** rohitksingh has quit IRC | 00:30 | |
*** rohitksingh has joined #tomu | 00:47 | |
*** rohitksingh has quit IRC | 00:57 | |
*** Dan_au has quit IRC | 01:00 | |
CarlFK | yay xobs! | 01:15 |
TomKeddie | Sheesh the solder is probably not yet cooled on those fomus, nice work! | 01:55 |
xobs | Yeah, I just visited the factory last week. | 01:56 |
xobs | The good news is that there is now a box on its way to crowd supply! | 01:56 |
CarlFK | xobs: what are the challenges? getting circuitpython to run on boot? | 02:02 |
xobs | CarlFK: challenges? | 02:07 |
CarlFK | xobs: it seems like an odd thing that is open to suggestions | 02:08 |
CarlFK | but I don't know what the 'boot' process is.. if this level is even booting yet | 02:09 |
CarlFK | I understand how a CPU gets started and runs code in rom. I don't get what happens when there is no cpu | 02:10 |
xobs | CarlFK: the lack of a button is a big one. If someone loads a program that crashes immediately, and it's set to auto boot, how do they get back into foboot? | 02:16 |
xobs | Or, for example, the current circuitpython has an issue where sometimes it won't enumerate. That'd be an issue. | 02:18 |
CarlFK | hmm.. how about shorting the 2 usb data pins? | 02:19 |
*** Dan_au has joined #tomu | 02:33 | |
xobs | How would that work? | 02:39 |
CarlFK | I'm hoping that ...foboot? could figure out they were shorted and do some fail safe thing | 02:41 |
*** futarisIRCcloud has quit IRC | 02:41 | |
CarlFK | oh, the cpx button is not a gpio kinda thing, its .. um.. out of band to all that? | 02:41 |
CarlFK | or hey, if someone bricks a fomu, they are engaged enough that they probably have 2, or will buy another, or make a jig | 02:43 |
CarlFK | or hey, how about shorting some of the pads? | 02:43 |
*** rohitksingh has joined #tomu | 04:01 | |
*** rohitksingh has quit IRC | 04:20 | |
*** rohitksingh has joined #tomu | 04:20 | |
*** xkapastel has joined #tomu | 04:28 | |
TomKeddie | foboot used to allow boot override by shorting the two pads, I'm guessing it was removed for a reason. | 04:37 |
xobs | Foboot still ought to have a nerve pinch type thing. | 04:38 |
TomKeddie | mithro: Hey Tim, I heard you mention you were running low on hacker boards at supercon, are you intending another run? | 04:38 |
xobs | But I had enough trouble activating it that I haven't used it. | 04:38 |
xobs | Maybe that was a different problem, though. | 04:38 |
TomKeddie | I think I saw it was removed from the code, perhaps I was skimming too fast. | 04:39 |
mithro | TomKeddie: not planning to, why? Production boards are the future now the spice is flowing | 04:39 |
TomKeddie | mithro: cool, if you were doing a run I was going to put in for a small batch to run workshops myself. It's no biggie, I have 8 x evt1 working as a class set anyway. | 04:41 |
mithro | Hacker or evt boards? | 04:41 |
mithro | I plan to give out the production boards as freely as the Hacker boards | 04:42 |
CarlFK | TomKeddie: why the hacker ver for the class? | 04:42 |
TomKeddie | brb | 04:42 |
xobs | I believe they're EVT1 boards left over from teardown. | 04:43 |
TomKeddie | CarlFK: I'd prefer to spend a few $ per person and have boards for people to keep. prod is too expensive though. No biggie, yes I've recovered the evt1 boards from teardown. | 04:53 |
CarlFK | why were hacker cheaper? | 04:54 |
*** futarisIRCcloud has joined #tomu | 05:21 | |
TomKeddie | CarlFK: some info at https://github.com/im-tomu/fomu-hardware/tree/master/hacker | 05:25 |
tpb | Title: fomu-hardware/hacker at master · im-tomu/fomu-hardware · GitHub (at github.com) | 05:25 |
TomKeddie | xobs: do you publish the build script you use to release foboot? I'm trying to build an evt version with the same options as the published versions. Thanks. | 05:27 |
CarlFK | ah thanks - didn't realize it had different components | 05:29 |
xobs | TomKeddie: the script is in https://github.com/im-tomu/foboot/blob/master/releases/release.sh | 05:31 |
tpb | Title: foboot/release.sh at master · im-tomu/foboot · GitHub (at github.com) | 05:31 |
TomKeddie | thanks. | 05:31 |
xobs | As for actually building it, usually it's foboot-bitstream.py --revision [rev] --with-debug usb --seed 1 | 05:32 |
xobs | And I need to adjust the seed as necessary to get it to meet timing. The j | 05:32 |
xobs | The evt boards have a spi debug now as well, which is built with debug=spi instead of debug=usb | 05:32 |
TomKeddie | Thanks, I was confused by the --boot-source option, there are a few defaults in there ;-) but bios makes sense. | 05:43 |
TomKeddie | oh, spi debug is for the pi connector, nice! | 05:43 |
*** xkapastel has quit IRC | 06:34 | |
*** coderobe672 has joined #tomu | 06:45 | |
*** coderobe672 has quit IRC | 06:55 | |
*** coderobe672 has joined #tomu | 06:57 | |
*** hop has quit IRC | 06:59 | |
*** coderobe672 has quit IRC | 07:13 | |
*** coderobe672 has joined #tomu | 07:13 | |
*** coderobe672 is now known as coderobe | 07:14 | |
*** coderobe has quit IRC | 07:16 | |
*** coderobe has joined #tomu | 07:18 | |
*** hop has joined #tomu | 07:21 | |
mithro | M-Labs (@M_Labs_Ltd) Tweeted: | 13:25 |
mithro | Building a 6800 CPU on an FPGA with nMigen https://t.co/L2z03xASl8 https://twitter.com/M_Labs_Ltd/status/1205379671791026176?s=20 | 13:25 |
mithro | @TomKeddie: pvt is about the same price as hacker in the quantities I buy | 13:26 |
TomKeddie | nice | 13:27 |
mithro | In theory it /could/ be cheaper thanks to the multiple part options, but we need to keep xobs being able to eat :-) | 13:28 |
*** evelyn has joined #tomu | 16:51 | |
evelyn | so... I'm playing with micropython. However, it's not clear to me what the easiest way to put a script onto its filesystem are - some micropython people recommend either rshell or adafruit-ampy, but both these fail when tryin | 17:43 |
evelyn | sorry, fail when attempting to communicate with the fomu. | 17:43 |
evelyn | As I understand it, there should be a small filesystem that one can poke at, but it's not clear if that's true on the fomu. | 17:44 |
evelyn | Does anyone know of any documentation that would be helpful? | 17:44 |
CarlFK | micro or adafruit's circuit python? | 17:44 |
evelyn | micro - rshell (and I believe ampy) should still be able to communicate with it, but I am not sure. | 17:45 |
CarlFK | you should try circuit - it's a very nice experience | 17:46 |
evelyn | I confess I've never heard of it up until now | 17:47 |
evelyn | hmm... the micropython documentation suggests that a module called 'os' should let one manipulate the filesystem, but it's not in the fomu's micropython seemingly.. | 17:53 |
evelyn | maybe not possible then. | 17:53 |
CarlFK | https://github.com/xobs/circuitpython/releases | 17:58 |
tpb | Title: Releases · xobs/circuitpython · GitHub (at github.com) | 17:58 |
CarlFK | you get a usb mas storage device that you can mount and do file things | 17:59 |
xobs | Create a file called "code.py" and it will get executed every time you save the file. | 18:00 |
CarlFK | xobs: is the need for a way to unbrick the thing in the way of autoboot? | 18:09 |
xobs | CarlFK: correct. | 18:26 |
CarlFK | ah. neat. | 18:26 |
evelyn | gosh, thanks! This is working nicely. | 18:28 |
CarlFK | evelyn: right? | 18:28 |
xobs | evelyn: yay! | 18:28 |
xobs | Can I ask everyone here to try updating to 2.0.3? I'm going to send out a backer update recommending the same, and if there aren't any problems I'm going to update the factory test jigs to install 2.0.3 out of the box. | 18:29 |
CarlFK | xobs: is adifrut's reset button code still in your code base? | 18:29 |
evelyn | I've got 2.0.3 running just now | 18:30 |
xobs | CarlFK: I'm not sure what that is. I thought I hooked up bios reset. | 18:31 |
xobs | But of course, if you auto boot a bitstream, then there's no way of passing information back to foboot. So foboot can't tell the difference between a reboot and initial poweron. | 18:32 |
xobs | In tomu, we could use uninitialized memory to pass tokens between the user program and the bootloader. In the fpga, all* memory is erased. | 18:33 |
CarlFK | xobs: im hoping to find something that can be physically shorted, like with a sharp paperclip | 18:34 |
CarlFK | and by me, I mean con one of my friends into it :p | 18:35 |
xobs | Should make a "reset shoe" that cups all the pads. | 18:35 |
xobs | Though that'd only work on pvt... | 18:36 |
xobs | To permanently update to 2.0.3, install the appropriate "updater" program from https://github.com/im-tomu/foboot/releases/latest | 18:38 |
tpb | Title: Release v2.0.3: Fix USB Reset IRQ · im-tomu/foboot · GitHub (at github.com) | 18:38 |
CarlFK | something funky: Found DFU: [1209:5bf0] ver=0101, devnum=31, cfg=1, intf=0, path="3-2", alt=0, name="UNKNOWN", serial="UNKNOWN" | 18:42 |
xobs | CarlFK: That looks like it had some trouble when requesting the product name. Weird that it specifies a serial number -- that's unspecified. | 19:03 |
xobs | Is it loose in the slot? | 19:03 |
CarlFK | xobs: maybe. that seems to be a thing on my laptop. I haven't wiggled it yet. dmesg http://paste.ubuntu.com/p/HFXpbPPDVH/ | 19:04 |
tpb | Title: Ubuntu Pastebin (at paste.ubuntu.com) | 19:04 |
xobs | One solution to that problem would be to glue a piece of paper to the bottom of the case. Just need to add 0.3mm thickness to bring it up to spec. | 19:05 |
evelyn | Actually, I find that the 2.0.3 bootloader does not like loading the micropython from the fomu-workshop :/ | 20:23 |
evelyn | https://paste.ubuntu.com/p/f8cKwm4Q3y | 20:26 |
tpb | Title: Ubuntu Pastebin (at paste.ubuntu.com) | 20:26 |
evelyn | I've just been able to reproduce this with a friend's PC too, so it's not a problem with my laptop. With the old bootloader (1.8.0 or something), the device would present /dev/ttyACM0 | 20:39 |
evelyn | I tried dfu-util -e for good measure, but it's already booted into the application and is no longer in DFU mode | 20:40 |
evelyn | it can load circuitpython fine so not sure what changed. Perhaps not a big issue. | 20:40 |
CarlFK | ill give mp a shot... | 20:42 |
CarlFK | xobs: yeah, wigging the fomu: [206387.234804] usb 3-2: USB disconnect, device number 31 | 20:42 |
CarlFK | cut up a medium thickness credit card, makes a nice shim | 21:08 |
CarlFK | Found DFU: [1209:5bf0] ver=0101, devnum=33, cfg=1, intf=0, path="3-2", alt=0, name="Fomu Hacker running DFU Bootloader v2.0.3", serial="UNKNOWN" | 21:08 |
evelyn | Yeah, that's what I get from `dfu-util -l` | 21:16 |
xobs | evelyn: Good point. I should rebuild the micropython from the workshop so that it works with 2.0.3 | 21:16 |
evelyn | I wasn't really sure how to rebuild it locally, unfortunately | 21:17 |
xobs | It's from https://github.com/xobs/micropython -- go into ports/fomu and type "make". | 21:19 |
tpb | Title: GitHub - xobs/micropython: The Micro Python project (at github.com) | 21:19 |
evelyn | Thanks! I'll give that a shot. | 21:23 |
evelyn | OK so - after running make, dfu-util does not like the generated firmware.dfu | 21:31 |
evelyn | but it's happy flashing firmware.bin - not sure what's up there | 21:32 |
evelyn | dfu-util: Could not read name, sscanf returned 0 | 21:32 |
evelyn | dfu-util: Failed to parse memory layout | 21:33 |
evelyn | but the generated firmware.bin is fine and I get the cute micropython repl | 21:33 |
CarlFK | xobs, could you stuff a little fomo.deps.txt file somewhere so we don't have to dig out what is needed from https://github.com/xobs/micropython#external-dependencies | 21:38 |
tpb | Title: GitHub - xobs/micropython: The Micro Python project (at github.com) | 21:38 |
xobs | I'm honestly not sure what the micropython dfu file is. It seems weird. | 21:38 |
xobs | Normally a .dfu file is the .bin file plus a 16-byte DFU suffix. According to the DFU standard: | 21:40 |
* xobs uploaded an image: image.png (285KB) < https://matrix.org/_matrix/media/r0/download/matrix.org/vVhlQwGmiOKCwzjSLCpLkmSJ > | 21:40 | |
xobs | CarlFK: what would that look like? | 21:40 |
CarlFK | xobs: for building fomu on debian: apt install build-essential libffi-dev pkg-config | 21:43 |
CarlFK | and whatever other distro package names people are using | 21:44 |
CarlFK | or get tumbleweed to package something, then it would be something like apt build-dep fomu-circuitpython | 21:45 |
mobius__ | xobs: I know you support Linux/Windows/Mac, but I also made a Vagrant image that compiles the FPGA tools from source and sets up USB devices. Right now it just grabs the same RISC-V toolset though. https://github.com/VLSIDA/fpga-vagrant-image | 22:03 |
tpb | Title: GitHub - VLSIDA/fpga-vagrant-image: Vagrant configuration files for Ubuntu w/ most recent Yosys + Nextpnr + Icestorm (at github.com) | 22:03 |
mobius__ | I previously used this for the iCEBreaker as well | 22:03 |
*** John_K has quit IRC | 22:03 | |
xobs | mobius__: cool! This is why you needed to update to 2.0.3, so you could pass it through to virtualbox? | 22:04 |
mobius__ | xobs: exactly | 22:05 |
xobs | You're making a very compelling argument to tell people to move to 2.0.3. | 22:06 |
xobs | Where do you think these Vagrant instructions should go? | 22:07 |
mobius__ | I'm not sure about that. :) | 22:13 |
mobius__ | I am always switching laptops so I've gone to a VM-based model for most development, so I just switched to this. | 22:15 |
CarlFK | xobs: ah, you have the file I was asking for, just need more stuff in it https://github.com/xobs/micropython/tree/fomu/ports/fomu | 22:31 |
tpb | Title: micropython/ports/fomu at fomu · xobs/micropython · GitHub (at github.com) | 22:31 |
CarlFK | http://paste.ubuntu.com/p/cSVyGqN9nf/ stdint.h: No such file or directory | 22:34 |
tpb | Title: Ubuntu Pastebin (at paste.ubuntu.com) | 22:34 |
xobs | Something strange is going on with your riscv compiler. | 22:36 |
CarlFK | xobs: http://paste.ubuntu.com/p/vFBTwVjr9R/ # include_next <stdint.h> where should that file be? | 23:13 |
tpb | Title: Ubuntu Pastebin (at paste.ubuntu.com) | 23:13 |
CarlFK | and what does _next mean? | 23:13 |
xobs | CarlFK: Your toolchain looks like it was installed really strangely. | 23:17 |
xobs | The file it's complaining about is `/lib/gcc/riscv64-unknown-elf/8.3.0/include/stdint.h` | 23:18 |
xobs | Rather, `${FOMU_TOOLCHAIN_ROOT}//lib/gcc/riscv64-unknown-elf/8.3.0/include/stdint.h` | 23:18 |
CarlFK | xobs: ubuntu 19.04 - apt-get install a few things | 23:18 |
xobs | That file should then be including `${FOMU_TOOLCHAIN_ROOT}/riscv64-unknown-elf/include/stdint.h` | 23:18 |
xobs | But it looks like your toolchain is installed into the root. | 23:19 |
xobs | And is missing the second `stdint.h`. | 23:19 |
CarlFK | ah, I need to install the toolchain from.. git something.. moment, I think I have that | 23:24 |
ovf | xobs: yes for "reboot shoe"! | 23:27 |
CarlFK | https://workshop.fomu.im/#required-software https://github.com/im-tomu/fomu-toolchain/releases/latest | 23:28 |
tpb | Title: fomu-workshop | Support files for participating in a Fomu workshop (at workshop.fomu.im) | 23:28 |
xobs | CarlFK: your package manager may have a riscv binutils or libc or glibc or something like that... | 23:34 |
xobs | CarlFK: If you're going to use your own toolchain instead of the fomu one, you may need to install `libnewlib-dev`. | 23:40 |
xobs | It includes stdint.h and I suspect that's what they want you to install: https://packages.ubuntu.com/disco/all/libnewlib-dev/filelist | 23:41 |
tpb | Title: Ubuntu – File list of package libnewlib-dev/disco/all (at packages.ubuntu.com) | 23:41 |
xobs | The arm toolchains depend on it, but not the riscv one. | 23:41 |
CarlFK | xobs: installed libnewlib-dev , same error | 23:44 |
ovf | CarlFK: where from did this toolchain come in ubuntu 19.04? it's only in repos starting with 19.10 | 23:57 |
Generated by irclog2html.py 2.13.1 by Marius Gedminas - find it at mg.pov.lt!