doc/wg/core/notes/core-notes-2023-09-22.md
Brad: I bought this, https://www.makerfabs.com/makepython-nrf52840.html, nrf52840 with a display; possibly a way to test the screen stack
Brad: There is a bug in their schematic... so they may not have tested this much
Phil: What's the bug?
Brad: Using a drop-in module, and they swapped two pins; LED is on 1.10 in schematic but on 1.11 in practice
Hudson: How did you find that out...?
Brad: To their credit, there's a github repo which includes their hardware file. Tried to figure out which nrf module they used. Used an image search of all things to find the module, and realized the pin order was different
Hudson: What's the bootloader situation? Same as the Clue boards?
Brad: Maybe? There are two USB headers, so you can have a UART if you want or USB direct to to NRF; I used UART so tockloader can do the baud rate trick
Brad: Bootstrapping however for first load of bootloader will require JTAG
Hudson: And there's still the panic issue with CDC...
Alexandru: No debugger, just USB connection?
Brad: Correct.
Tyler: Quick Thread update: PR went out middle of the week, #3683
Tyler: Tock now consistently joins open thread network, child can join a parent; no heartbeat yet, but joins work reliably now
Hudson: That's very exciting :)
pub type PR? (#3657)dyn; types become very redundant and longdyn when possible, and this change makes avoiding dyn more palatablestatic_buf family of macros are well documented. We cleaned this up, and now there's just some upper-layer macros that effectively call static_buf a lot; not sure those are documented well anywheredoc/main.rs; we're going to end up with a huge block of these type definitions. Have to use in the platform struct and where we instantiate the component. It's a bit clumsy I thinkmain.rs file; where other paradigms would have a dedicated declaration file that hides it away. For all of C's failings, typedef is pretty awesomedyn simplifies things, we've also written components such that you take whatever was in e.g. imix, a first reference impl, and factoring that out. Coming from one implementation leads to unintended structure on how things are to be used in components. Not clear when things should be encapsulating more or less. The way the types actually work out will ultimately depend on how much encapsulation there is, and this encapsulation makes it hard to explain how to compose thingsmain.rs files if you're just doing the 'standard' thingmain.rs into the component in a way of explaining "this is a valid way of composing components in this file". It's a type, you can use it or not, so not binding, but easessbrk implementationmemop to make this work with Tock for whatever their sbrk needs?sbrk; i.e., can't perform memop in piclob-c; it expects only a flat address spacemmap; it really expects only a flat address space?sbrk path, it's a fixed implementation that just moves the heap until it hits a predefined start symbol. I tried to pull this part out; they have scripts that let you configure parts of the library for platforms, but this does not seem to be a configurable parameter