-
-
Notifications
You must be signed in to change notification settings - Fork 197
Core Team Stand Up Meeting Notes
This page is for capturing notes about what was discussed in our core team stand-up meetings, in reverse-chronological order.
- WiFi Mesh networking is getting close, but not particularly easy to set up (esp. on BBB/GW)
- Needs deterministic ethernet naming feature on RPi, which is really tricky
- Working with Frank on
nerves_ssh
- Pushing
nerves_initramfs
forward - Trying out an idea with challenges in the Nerves Meetup
- Looking more into Printfection / Sendoso / etc.
- Obsessed with getting Beaglebone display driver working
- Trying to put together a talk for ElixirConf EU
-
nerves_ssh
stuff, reviewing lots of old code there - It's getting really close, will replace the SSH code in
nerves_pack
-
nerves_pack
is becoming mostly a wrapper + docs, which was the intention -
nerves_firmware_ssh
functionality not included - it's a subsystem spec to pull in separately
- Feeling a bit burnt out and not making progress on much of anything
- Working example of nerves_initramfs for auto-failback on Raspberry Pi (requires a change to nerves_runtime)
- Nerves Hub link work proof-of-concept, with some clean-up from Frank
- Started working on Nerves Hub console
- Really want to push forward Nerves SSH - will call it nerves_ssh so we're clear what it's for
- We have some OpenCollective budget
- Greg will look to see if there are affordable options for self-serve swag-shipping to contributors or something
- Systems with OTP 23 need some RC testing
- Buildroot updates QT versions that eliminate patches needed for kiosk mode
- OTP 23 has binary size built in! 🚀 🎉
- Maybe advertise EPMD with mDNS for easier Erlang distribution for development
- SSH agent to support SSH push without the upload script
- Still working with Connor on predictable network names in vintage_net
- New fwup version to detect corrupted SD cards earlier
- Mobile/vintage_net mesh networking - working on better support for multiple networks of the same type
- vintage_net users would be able to turn on predictable naming similar to what systemd does (details TBD)
- Nerves Hub indexing fixes
- Fiddling with vintage_net_mobile (Frank is working on breaking changes for USB polling)
- Hoping to get back to delta update stuff soon
- Documentation fixes for channel API on Nerves Hub
- Helping out when people need it
- Some work on auto-revert on rpi, but then started over with initramfs
- Working on mesh/bridge networking and deterministic ifnames (shouldn't be hard, just tedious)
- Catching back up on stuff after being slammed with life and work for a while
- Finishing xdelta in firmware updates
- VintageNet mesh (with Connor) experiments are progressing
- Planned updates to VintageNet and fwup
- NervesHubLink changes
- separating update and fwup logic code from channel to share with NervesHubLinkHTTP
- resuming failed downloads
- vetting ideas for JITR support in NervesHub
- Looking to improve remote console experience in NervesHub
- fixed
mix firmware
to compile custom local systems if not yet compiled - continued experimentation with SSH management in Nerves
- documentation updates to
mix firmware
and NervesHub channels - continuing to work on auto revert with rpi systems
- Nerves 1.6 released with support for Elixir 1.10
- Lots of mobile/LTE networking work completed in
vintage_net_mobile
- Looking to see if required system components are small enough to be included in all official systems to reduce need for custom system to use mobile networking
- Fixing Nerves 1.6 failure for
nerves_system_rpi4
. Hoping to fix before bigger public announcements of Nerves 1.6 - Lots of work with Beagle Bones lately
- Been reviewing ideas for Erlang distribution in Nerves
- Hoping to drive forward
mDNS
work that can be used for Nerves <-> Nerves communication in Erlang distribution.
- Experimenting with ideas on managing SSH on Nerves devices differently and allow runtime manipulation.
- working on auto revert with rpi systems
- working on getting
RamoopsLogger
logging to work with x86 systems. (Hoping to addRamoopsLogger
as part of the project generator)
- Changed project generator to use
nerves_pack
by default. Removednerves_init_gadget
- Updated docs to reference
nerves_pack
instead ofnerves_init_gadget
- Planning to work on branding redesign of
vintage_net_wizard
- Unable to attend
- Unable to attend
- Nerves updates to support Elixir 1.10
- Elixir 1.10 has ability to apply config via releases.exs without reboot, but really bad idea to promote
- Dropping support for OTP < 21, Elixir < 1.7
- NIF on_load failures can make even Shoehorn get into a crash loop
- Nothing meaningful to report
- Working on nerves_pack - removing wizard and GPIO to not have to deal with optional deps
- Shoehorn MFA isn't supervised in the same way, was intended to easily fire off a task
- Justin has a proposal for a different strategy for the future of Shoehorn - needs feedback/iteration
- Found some mDNS issues when querying from one Nerves device to another, e.g. EPMD
- Erlang distribution is great for development but not a good default for production
- Good to have it in nerves_pack as an option
- Made nerves_time work with a couple of RTCs from runtime more easily
- Full speed ahead on NervesTime. (no blocks)
- automatic failback on X86
- UpBoard and OnLogic firmware loaders
- possible non-backwards compatible change to
nerves_system_x86_64
because of MBR to GPT - started work on a long-term pluggable firmware loader
- progressing EEF proposals
- VintageNet releases
- VintageNetWizard releases
- NervesPack releases
- Helping with initramfs stuff with Frank for automatic fail-back across platforms
- Started working at Very, so some new work-related research:
- Starting to focus on LTE stuff for upcoming requirements
- Researching TPM support on x86 platforms - promising progress on the Linux side of things with TPM stack
- IBM has a TPM simulator, which is really helpful to avoid burning real hardware
- New nerves_bootstrap that supports nerves_pack
- Looking at README vs. Gitbook for guide-based documentation
- Working on logo / website design updates for Nerves
- Starting NervesConf 2020 planning - one day, short talks and training workshops interspersed, happy hour with show and tell (rather than lightning talks)
- Planning to be conjoined with Gig City Elixir conference
- Working on EEF embedded WG website with showcase, use-cases, and links to Grisp, Nerves, Yocto, etc.
- Two other proposals in embedded WG:
- Binary packages in Hex, similar to Pypy
- Reduce BEAM boot time, maybe by loading all the BEAM files in memory, snapshot to disk cache for faster boot next time
- nerves_examples - started pushing stats from CI, totally changed opinions on what should be in there. Now feeling like it would be great to include whatever people want like Scenic and LiveView, Kiosk for example.
- Worth the maintenance burden based on the stats we can collect and having working starter projects.
- nerves_init_ramfs - originally intended to support encrypted rootfs, but also support generic auto-failback across rpi and x86
- Connor is working on nerves_time support for realtime clocks
- Not much of anything lately - focusing on upcoming talks about OpenTelemetry
- Nerves Hub Device - Justin's main concern was really on the naming of the package, but pretty much fine integrating the code.
- Nerves Hub Link might be a better name
- vintage_net_wizard progress: now uses captive portal, some tweaks for better introspection, troubleshooting
- Some issues with not being able to load JavaScript
- There's an example for the wifi wizard
- Updates to new project generator to allow / default to nerves_pack
- Calculating binary deltas
- Catching up on vintage_net and related changes
- Planning to have some time until end-of-year to clean up Nerves examples
- Also looking at RTC support in nerves_time
- Reviewing
vintage_net
andnerves_pack
- Planning to spend some time on updating docs and work with Connor on examples updates
- EEF proposals e.g. for improving support on Windows, Embedded Elixir showcase site
- x86 board for use at Smart Rent
- LTE support into vintage_net, but it's slow going
- nerves_init_ramfs, e.g. for encrypted filesystem and auto-failback on RPi
- Researching more robust init process (removing dangerous code from Erlang boot scripts, e.g. NIF-loading)
- Working on options for better dynamic runtime release config
- Should we split up the
nerves_bootstrap
archive? Sounds like no - there isn't a good reason to do it.
- Working on rootfs encryption and GPT support into OSS world
- Then, some more things to finish up with vintage_net / examples / wizard
- Not much time recently to contribute much, but thinking about how we can better manage Q&A with ElixirForum / StackOverflow, etc.
- vintage_net is getting really close!
- Still need static IP for Ethernet
- vintage_net_wizard has an issue with being able to temporarily store settings (probably work on next week)
- nerves_firmware_ssh2 with a simpler interface to the ssh subsystem without needing application configuration
- Somehow, nerves_init_gadget should go away, when we can address a few gaps
- Integrating more NervesHub at work - good experience!
- NervesHub billing support
- Thinking about how to distill the message about Nerves for newcomers
- Prepping for GigCity
- Not much progress on anything recently - lots of travel and work stuff
- Still working on getting Xilinx tools all set up and working for better support of FPGA boards with Nerves
- Keep wanting to get back to supporting WSL with Nerves, but progress is very slow with getting WSL set up
- Lots of travel / cleanup, esp. on kiosk systems (x86 and rpi3 working, hitting issues with rpi4 displays)
- Getting back to Nerves and NervesHub
- Working on trying to support Avnet/Xilinx Ultra96-v2 with a Nerves system
- So far, just going through the docs/tutorials on building the various components and hello world-type programs
- Working on updates to various dependencies
- Haven't done the systems yet because it's a few hours of work, but pretty much ready
- Doesn't include OTP 22 yet
- EEF Embedded WG approved - Frank will take the lead
- Major updates coming soon to vintage_net, but there's a bug that's getting in the way
- Working on reproducible firmware builds - slow progress but still crawling forward
- Interested in binary patching of firmware updates for NervesHub (very valuable but a lot of work without reproducible builds)
- Mostly just getting training materials updated for ElixirConf (Elixir 1.9 / OTP 22 / Nerves 1.5)
- Still haven't played with VintageNet yet, but that's on my TODO list (maybe work on USB Gadget or mDNS support)
- Helping Justin with Nerves 1.5 release
- rpi4 working well, still need to try out multi-monitor
- ramoops logger is cool
- Need to get back to VintageNet soon - needs to be cleaned up and worked into proper projects, LTE support, etc.
- LTE needs work in documentation because its hard to set up the magic incantations, managing metered connections
- Nerves 1.5 release
- nerves_bootstrap 1.6 release
- NervesHub on OTP 22 / Elixir 1.9 / Elixir releases
- Working on getting testing infrastructure into a better place (
preferred_cli_target
, etc.) - ex_unit_release library (with Elixir 1.9 releases) to package a test suite into the runtime
- Working on several updates to projects to not build in
priv
anymore - Examples updates for latest Nerves
- VintageNet work on AP configuration for start-up config screen
- Busybox package is now on Hex to compile Busybox as a regular package
- This allows Busybox packages to be added without customizing the system, opens the path to not including Busybox in the base systems in the future
- OTP 22 release is almost ready
- If target is OTP 22 and host Elixir was compiled with OTP 21, it blows up in a bad way at compile time - Justin working with José on it.
- Catching up on open Issues/PRs (some recent, some stale)
- Helping with Windows and System Shell issues
- Updates to
nerves_examples
and User Interfaces docs
- Trying out Elixir 1.9 with built-in releases - some compatibility / effort involved in switching
-
preferred_cli_target
(really kinda required vs preferred because it can't be overridden in Mix config) - Warnings for applications not existing when present in Mix config - splitting out config files in project generator
-
nerves_system_br
1.8.1 or 1.7.3 is required to support Elixir 1.9 releases
- Mostly working with VintageNet, looking really good so far
- Working with Jon on some NervesHub things (e.g. remote console)
- Maybe switch to xterm.js library for better styling and stuff
- Picam 0.4.0 released with preview video rendering to attached screens
- Wanting to look into how to add a runtime component to systems to allow for USB Gadget config at runtime
- OTP 22 PR for nerves_system_br, wasn't planning to release until the Buildroot release is out
- We've fallen behind on Rpi firmware/Linux kernels
- Updating toolchains to GCC 8.3 instead of GCC 7
- mDNS needs some updates/maintenance to support multi-home/service advertisement when used with VintageNet
- Need to work on nerves_init_gadget updates... but do we even need it anymore with VintageNet?
- New networking, policy-based routing
- It's looking promising, but not sure when it'll be ready to share
- Better support for multiple interfaces, new kinds of networks outside the core library
- Working on Elixir Circuits - quickstart firmware for playing around without doing any Nerves setup
- NervesKey and NervesHub work - need to get the NervesKey provisioning docs fixed up
- Reviewed Connor's custom system docs PR
- Will look into whether we should also document the option to force system compilation from the project
- Helping Bruce with Nerves photo booth, but that's kinda paused while working on Code BEAM STO talk
- Willing to help with a move of the docs to GitBook from HexDocs
- Keeping up with NervesHub stuff
- Talking with Jon about moving forward on deployments for NervesHub
- Will be giving a Nerves Hub demo at Craft Conf
- Mostly working on Nerves Key stuff (store is up, but not announced broadly yet)
- Project-managing on Nerves Hub (SmartRent contributing again in a big way! 🎉)
- New
nerves_network
is shaping up, but currently tuned to internal needs - Exciting
- Working on Picam features for on-screen preview, multiple resolution/encoding outputs
- Working through system doc updates - almost ready for review
- Trying to fix broken rebar3 compile issues on PC
- Helping Jon do some great things with Nerves Hub
- Nerves Hub working on user roles, products and orgs features, and billing
- Trying to reproduce a bug that only happens in training with a bunch of devices on a local network
- Wanting to work on deployment updates for Nerves Hub (e.g. so deployments can target devices that are running the same version but the device UUID has changed)
- Need some help looking through logs and stuff for Nerves Hub background jobs
- Would love to see if there's a free/affordable option for Datadog APM or similar for OSS
- Working on a re-write of the Custom System docs and hoping to be finished up over the weekend
- Prepping for ElixirConf EU, ironing out some NervesHub stuff
- Training also planned for ElixirConf US
- Starting to collect repos in the
elixir-vision
GH org. So far,picam
andzbar
are there. - Helping Bruce Tate with a prototype of Picam streaming to a Scenic UI on a RPI3 Touch Screen
- Planning to re-work the User Interface docs to update Phoenix version and clarify some other options for user interfaces that are now available (LiveView, Scenic, etc.)
- One day of Nerves camera training approved for ElixirConf US (with Todd Resudek, who reached out to me about it) - need to get travel approval still
- Good feedback from people about Lone Star training
- Started work on profiling the
./upload.sh
process to see why it takes so long over SSH - Planning to spend some time following up on little issues with docs, but too busy lately
- Mostly working on training updates to Elixir 1.8, Nerves 1.4, Phoenix 1.4
- Struggling with Cowboy2 closing my Picam MJPEG streams after 60 seconds 😦
- Got
nerves_examples
updated for Elixir 1.8 and Nerves 1.4
- Coordinating with Peer for GRiSP v2, to be announced at Code BEAM SF
- Erlang Ecosystem Foundation and GRiSP v2 board
- Mostly prep work on Nerves Hub / for training
- Updated client to transition from
phoenix_channel_client
tophoenix_client
- Eliminated device dependency on firmware, so the client say assert what firmware it's running
- Working on training stuff and related NervesHub features to support it
- Prepping for Lone Star
- Getting the Nerves test server working with NervesHub
- Building a FarmBot! 🎉
- Prepping for LoneStar training, getting hardware ordered and code updated to latest Nerves
- Prepping talk for Code BEAM
- Putting together integrated presentation software with Scenic for a fancy Farmbot demo
- Non-stop network stuff, lots of hacks no longer required for
nerves_network
- Working in new features for Picam (multiple video output resolutions, HDMI preview)
- Updating / adding some new things to Nerves camera training for Lone Star ElixirConf
- Neat Nerves Key renders, posted in
#nerves-dev
channel - Some prep for Nerves training at Empex LA
-
rpi_fb_capture
library for grabbing the frame buffer on raspberry pi - Working on performance improvements for
nerves_runtime
andsystem_registry
- Justin also working on training stuff
-
Working on configfs stuff for
rpi0
system-
PR #62 for
nerves_system_rpi0
is ready for reviewWe had a long discussion about what to do. The current plan is to look into making the
rpi0
system have a runtime component that can do some initialization and have Shoehorn pick it up automatically somehow, also look into what we can use from Erlang's startup phases/init process, so we don't add more complexity to Shoehorn) -
Would like to finalize an initial release of
usb_gadget
- feedback welcome -
PR #32 for
nerves_init_gadget
is available but currently depends on unreleasedusb_gadget
and includes NIC bonding - need to look into multi-homing fornerves_network
/one_dhcpd
-
-
Released RC0 of Blinkchain (formerly
nerves_neopixel
)
- Mostly working on Circuits stuff, GPIO is almost ready for initial release
- Would love to have help working on tools to collect "crash info" after a reboot - It's close but needs some more work
- Recovering from Gig City Elixir post-conference exhaustion
- Working on some improvements to the
hello_network
example
- Baltimore Elixir Meetup planning a PR-meeting where people who show up can work on a PR and get it ready to be merged
- Working on Elixir Circuits - I2C is starting to look really good, others are basically working well (effectively
elixir_ale
2.0) - They will have Erlang bindings as well and be named stuff like
circuits_spi
, etc. - Local makerspace is making Nerves Keys via a Kickstarter ~ January
- Nerves Hub update for all things certificates
- Support for Nerves Key (compress and decompress certificates)
- Lone Star training
- Delegated authentication for devices via Nerves Hub
- Slowly making progress on
nerves_examples
- Also slowly working on
nerves_network
andnerves_wpa_supplicant
- Working on a big update to the Nerves Hub CA, restricting path length, better root cert controls
- CRLs weren't working because we didn't store enough details about the certs as they were generated
- Pretty much all Erlang now using the Voltone x509 library, which is 💯
- Not much Nerves progress lately
- Lone Star Elixir training coming up
- Also focused on crypto stuff with the crypto chip for devices
- Working on Elixir Circuits library updates
- Working on several releases
- Has a blog post staged about using PRUs on BBB, but waiting for
nerves_system_bbb
v2.0.0 to drop before posting - Working on Nerves Hub client stuff, waiting on CA changes to settle and then get things onto real releases instead of GitHub refs
- Working on Nerves Hub a lot since ElixirConf
- Planning on big changes to certificate structure to prep for CRLs
- Mostly just answering questions and looking into a bug with the kiosk system build in Docker
- Look into not host-mounting the Buildroot download volume because it is now unpacking git repos and causing problems
- Want to work on getting the USB Gadget stuff updated and working for Zero system - need to figure out a way for it to just work on boot without
nerves_init_gadget
.
- Really focused lately on new system releases
- Want to get the BeagleBone PRUs stuff figured out before making that one official
- New project called
my_helpers
to collect every little helper script that's nice to collect. Plan would be to remove Nerves.Runtime.Helpers eventually because it feels like the barrier to adding things there is too high.
- Nonstop on Nerves Hub lately
- Embedded Elixir post staged and just about ready to go out
- Working on better support for Scenic drivers with RPi / SPI framebuffer displays
- Working on ConfigFS-based USB gadget devices, in order to better support Windows hosts
- Splitting up a bunch of changes into smaller separate PRs for
nerves_init_gadget
- Prepping for ElixirConf training
- Released provisioning stuff to support Nerves Hub demo
- Send out email instructions on Monday for training prep
- Prepping for keynote
- Working on a simple DHCP server
- Prepping for ElixirConf
- Nothing in particular to report pre-ElixirConf
- Hoping to dedicate October to re-working the networking code
- Elixir 1.7 updates with Connor, making sure we have backwards-compatibility on Shoehorn and Nerves, relating to Distillery. Waiting on a Distillery update with some fixes.
- Dabbling with Canadian Cross toolchains and running into issues. Giving up.
- Working on USB Gadget support options - main problem currently seems to be on Linux, both network interfaces are detected but only one works, so it warns.
- Toolchain frustration with compiling on OSX, mostly postponing for now.
- Working on a
nerves_system_br
update to allow QT apps to compile outside of the Nerves system build. This is really useful for example on the kiosk system. - Linux kernel updates to BBB in use at SmartRent.
- Working with Connor on some Linux kernel config linter. Found some best-practice changes that we should change in our systems.
- SmartRent is working on an update to RingLogger to allow better filtering per-level, etc. Need to look into the Logger-related changes in Elixir 1.7 to see if that changes anything.
- Working on better support for building custom systems on Windows
- WSL thinks it's Linux, so it messes up the Docker build platform integration
- Fighting against Docker/WSL integration. It's complicated.
- Pushing out updates to the various systems
- Discussed deprecating qemu-arm system due to difficulty to support emulator/slow builds
- Updates to circle processes
- Long build times, were using the caching system incorrectly since it’s write once
- Worked on pushing to S3 and/or using Circle CI artifact API
- Planning to help Frank as much as possible for kernel updates to Raspberry Pi, then bring those forward to the kiosk systems to potentially address LAN driver issues
- Working on network stuff, heading down the “replace the Elixir code with standard ifup/ifdown code” route
- Testing Beaglebone PRU stuff
- Pushed the Beaglebone PRU stuff
- fwup 1.2 released and on homebrew
- Mostly time spent recently on project management on nerves-hub
- Writing a blog post for serial numbers and how to provision numbers, looking for a review today
- Nerves PR review and testing for WSL firmware burn
- Windows support coming along with the various pieces contributed by Connor and the wsl PR
- Digging in to nbtty and waiting for gadget serial device to appear
- Working with Tim on the Windows support
- Need to get dhcp server working for training to avoid link local pain
- Working on Nerves Hub and building excitement on it
- Currently working on an sbroker based Process Pool broker to be able to use sequential port numbers.
- Nerves Hub work pushed some changes into systems, so prepping all the systems for an update.
- Want to get the shoehorn PR in as well
- Working to get serial number support in for systems so that node and network names can take advantage of it. Solves the problem of many nerves devices on a network all trying to use nerves.local
- Want to get linux 4.14 in a system update soon, will probably take a couple of weeks to shake things out and make sure we have all the right configuration.
- BBB system needs a change to fix device tree overlays
- Working hard with Frank to come up with a good API for interacting with network layer
- Interacting regularly with people on the elixirforum.com Nerves section. Great job!
- Testing the firmware.push PR on Windows and Mac, focusing on that in the short term
- Multi SSID still in flight but secondary on priority
- Focusing on responding to new posts on elixirforum.com to make it a responsive environment so people feel they can trust it as an outlet for support
There are a couple of areas where some help would move things forward and alleviate Frank and Justin's backlog
- Linux kernel 4.14 updates for Raspberry Pi and BBB systems
- Parser for network status updates - see Frank for details
- Working on a branch for multiple WiFi SSID support and Windows support
- Working on a thing internally for RingLogger messages over Phoenix Channels, might be able to contribute some/all of it as OSS
- Working on training and a talk for Code BEAM STO.
- Looking at nerves_networking, nerves_wpa_supplicant
- Thinking about Windows support as a side effect of wanting USB mass storage support
- Building a configfs project separate from nerves_runtime, involving lots of shelling out, so trying to make that better.
- Working on nerves_networking and nerves_wpa_supplicant
- Recently wrote a stellar blog post 🌟
- Excited to join the community and help out
- Interested in keeping the Slack community going the way it is, and also ramp up the participation on Elixir Forum
- Working with SmartRent on the firmware update server to support device connections to the server using websockets and client certificates.
- The Slack community is really great for real-time support
- The forum already exists and people are going to post Nerves-related things there under the tag whether or not we have a dedicated sub-site
- It could be another great avenue for posting small updates and push people to our documentation
- A forum is a great place to contribute asynchronously if that's how your personal schedule allows
- We can link from Slack to a forum answer, but we should optimize for solving the documentation problem that caused them to have a question
- We should use these as indicators to improve the documentation
- Funnel questions/problems from Slack to Forum to Docs organically and/or intentionally
- Paulo has volunteered specifically to keep us honest and start to seed content from Slack to Forum
- It would be good to get in the habit of posting about new releases of all the Nerves organization projects, potentially with some automation based on change logs, so people have better visibility into the many things we're working on.
- Decision is to work with the Elixir Forum to get the Nerves sub-site set up and commit to being as active there as we can be.
- Nerves 1.0 is a thing. 🎉
- NIF code for ElixirCircuits organization (formerly ElixirALE) is working - need more attention
- Nerves training at Code BEAM Stockholm is happening
- Looking at an overhaul of
nerves_wpa_supplicant
's API.
- Just Nerves 1.0 and getting various systems updated
- Made some progress on Windows support for configfs, mainly for
rpi0
- Planning to make some progress on networking this week
- Need to work together on how to make a smooth transition path if we need to break APIs
- ElixirConf EU done! 🎉
- Focusing on Nerves 1.0 stuff
- New
nerves_system_br
- Working on updating all the systems
- Lots of little changes to
RingLogger
- For now, we don't support Windows in Nerves 1.0
- Talking about Nerves training at Code BEAM Stockholm, but not firmed up yet
- Going to update
nerves_examples
to show how to start a project withnerves_init_gadget
and pare back anything using non-core Nerves project repos
- Just back from ElixirConf EU
- Working on training prep for ElixirConf US
- Working on Nerves Reloader (formerly known as Reactor)
- Trying to work down the time it takes
mix firmware
to run - Wanting to get more into working on the firmware update server
- Finished moving! 🎉
- Working on some
nerves_network
stuff, mostly maintenance
- Working on training for ElixirConf EU
- Plans to get Nerves 1.0 finally released afterword
- Got contacted for Nerves training in Sweden - going to forward to Greg and Justin
- Working on an Elixir consulting project for Gaslight, with a focus on open-source and community involvement 🎉
- Hoping to get more time to contribute back to Nerves issues on GH as well
- Got contacted about Nerves training in ElixirConf Asia 2019 (not sure which country this will be in)
- Improving the aesthetics and boot performance of the kiosk systems
- Submitted a training for Nerves training based on the kiosk platform
- Another Nerves RC release with lots of little changes. Getting closer to a real release.
- Mainly just need documentation and small bugfixes.
- System Registry update with fixes for decoupling producers and consumers to make them asynchronous.
- (Had to take a call and missed some notes 😅)
- Nerves Network updates
- Kind of involved with the Shoehorn discussion.
- Forked SQLite library from Erlang to Elixir.
- Don't really need much Ecto in SQLite, so just using it without Ecto.
- Want to keep working on fwup GUI.
- Submitted a training proposal (with Tim Mecklem) for ElixirConf US.
- Same curriculum as I used for Lone Star (but with some more polish).
- Want to ensure that the training works on Windows as well, if at all possible.
- Working on lots of little features that are helpful for commercial environments:
- Artifact sites can pass headers and query params (e.g. for authorization headers)
- Adding ssh client with agent forwarding to the Docker image for
nerves_system_br
- Troubleshooting issues with RingLogger causing BEAM issues on x86_64 when log volume is high
- Finishing up issues for Nerves 1.0
- Experimenting with Distillery option to allow a configuration provider that allows
config.exs
to be loaded at runtime.- There's an issue with
Shoehorn
with applications being loaded astemporary
- Working on an option to allow
Applications
to set theirstart_permanence
- As an interim step,
- There's an issue with
- Cleaning things up with lots of little PRs
- Firmware management server is in progress
- Nothing to share yet
- People can get in touch if they want to get involved
- People enjoyed LoneStar Nerves training
- ElixirConf US training CFP just opened, so let's talk about strategy for that
- Working on circular logger with Justin, it's much better than the
console
backend - Going to be publishing a small shim (called
shimmy
) for containing ports or daemons to properly close them if the BEAM shuts them down - SmartRent has started working on the firmware management server (intended to be open-source, but not yet)
- Still pushing through the kitting system, still pretty specific to our product (with Arduino firmwares, etc.)
- Busy getting it out the door now, so will have to make it more general-purpose
- Planning to push Nerves at CODEBEAM SF: lots of IoT but not Nerves.
- Prepping for LoneStar ElixirConf training
- Working on several
Picam
PRs
- Justin is working on
host
tools infrastructure to support things likerust
andpru
compilers (probably the last "major" feature before 1.0) - Beefed up the tests to cover the
host
tools.
- Presentation tomorrow, so not a lot of Nerves work, just helping with the things Justin's working on.
- Working on changes to the Nerves compiler infrastructure and a Nerves
0.9.0
release. - Seeing the light at the end of the tunnel on a Nerves
1.0.0-rc1
release. - We've moved the network operations to
mix deps.get
so it doesn't download artifacts duringmix compile
time. - There's some community effort around supporting BeagleBone PRU compiler using the Nerves Platform behavior, which is neat that we were able to support that kind of extension. Frank has concerns that we can discuss separately.
- Went down the rabbit hole of Windows USB gadget support. Currently kind of stuck on some
sysfs
stuff. - More interest in Nerves generated at Code Mash. Hosted an open-space to walk people through getting started in 20 minutes.
- LoneStar ElixirConf keynote coming up. Also, stickers for the Nerves training!
- Consulting on a Nerves-based product
- Working on a "kitting system" to sync up unique firmwares, compiling Arduino firmware, flashing SD cards with certificates and encryption keys, device registration back-end, etc. https://github.com/rosetta-home/kitting_system
- Working on a
mqtt
-based system to syncing data to a cloud server (metrics, pictures, etc.) - Talk accepted at Code BEAM SF (March 14-15), talking about Firmata library.
- LoneStar Training prep
-
syslog
andkmsg
log collection RFC/PR -
zbar
library for barcode-scanning from a JPEG image - Planning a PR to add annotation support to the
picam
library
- Working on USB printing at work from Nerves
- Experimenting with a "comcast" library to simulate network failures we see at work
- Added conditional features to the Nerves linter
- Working on a Nerves-based joystick library
- Working on a wrapper around
conman
to try to deal with some network issues, especially withhostapd
- Started working on a PowerPC compiler, but unlikely to do much more with it
- Working to put out new system and toolchain releases primarily for:
- Easier support for reverting back to old images (not as big a deal as expected)
- Fix the bug where if you download the artifacts and they stop mid-way, to try again instead of getting stuck
- Running into issues with changing functionality in the
nerves_bootstrap
archive, and trying to decide the best path forward
- Wrote some blog posts and answered a lot of questions in Slack ❤️
- Nearly ready to release a new version of
nerves_neopixel
, which is backwards-incompatible but has support for a lot of new features for drawing on a matrix using a C port with a simple ASCII interface.
- Working on IPv6 support for Nerves at work
- Thinking a lot about testing in hardware
- Working on hardware-in-the-loop test infrastructure this week
- Mostly working now, planning to wrap up the docs and publish a blog post
- Hardware testing and ability to revert failed firmware
- Hardware test uses Bootloader to detect test firmware failures and revert without bricking the device
- On every commit to a system, it will post back the test results to the GitHub commit
- Need to clean some things up still with how the new firmwares get downloaded and tested
- Working on getting WebEngine things working for Kiosk systems
- Have a way for a system to have a preferred platform to build under because WebEngine has some path-length issues.
- Motion to rename
Bootloader
toShoehorn - get your boot on
- everyone agrees. 😄
- Focused on training materials for Lone Star
- Fixing some rough edges based on going through some training exercises (e.g. the Nerves System Shell docs)
- Thinking about making Docker the standard for Nerves System Shell both Linux and non-Linux hosts
- Mostly real work stuff on Le Tote's Kiosk system
- Working with
erlexec
, which is really nice forPort
management - Thinking about how to use it as a generic way to use this as a daemon-management system from within Nerves
- Working on some
picam
features (e.g. motion vectors)
- SmartRent is going to sponsor the update/device management server work
- The specs are being defined, work will probably start in Jan
- Need to figure out if log-collection and crash reporting is part of the update server
- Working on an update letter to donors about recent Nerves work
- Looking forward to having hardware test lab set up for CI
- Looks like there is a path forward for
fwup
on Windows using WSL - Planning on a blog post initially, maybe a mix-integrated solution following
- Will need to figure out the gadget serial/network integration with Windows
- Updating the
nerves_neopixel
library forrpi0
and RGBW support - Identified and helped fix a few bugs with Justin Schneck with the Nerves plugin for Distillery
- Working on training materials for LoneStar (using
picam
)
- Working on some checks for the Linux kernel configs
- Playing with firmware management server a little - seems like it won't be too hard on the back-end, mostly UI
- Chris Cote and Greg have volunteered to help with the front-end, suggest using Elm
- Tim Mecklem says that some Gaslighters have volunteered to help with front-end and design
- Keeping up with Amos King's
nerves_network
work
Frank:
- Merged the WebEngine patches into nerves_system_br that aren't yet in a buildroot release itself
- Amos King is working with Schneider Electric to open-source some of their nerves_network stuff
Chris:
-
nerves_system_rpi
built-in wifi support - mqtt firmware upgrades, starting document to capture requirements
Justin:
- Getting stuff updated for WebEngine (Chromium instead of ancient WebKit) on Kiosk systems for rpi3 and x86
- Still working with CircleCI internal issues preventing Nerves project configurations from building that are under the LeToteTeam organization
- Giving a talk at ElixirConf Mexico this week
Greg:
- Gave a talk at Elixir with Love conference, but it wasn't recorded.
- Talked to a few people at EWL who were interested in Nerves, and maybe one that had actually used it for a project.
- Planning on re-giving the talk at a local meetup, maybe in December, so we can record and share.
- Working on a few small random PRs to clean up issues.
- Starting to work on LoneStar ElixirConf training coming up with needs for
picam
.
Jeff:
- (mostly real work stuff on RFID)
- PSA: Le Tote has open-sourced a ThingMagic SDK for RFID in Nerves
- Working on
libudev
NIF for better low-level hardware notifications (https://github.com/electricshaman/udev) - We should really look at using this for elixir_ale instead of using a Port for performance reasons
Connor:
- Helping people answer questions on the Slack channel
- (super busy with work stuff)
- Will reach out to Amos to help with
nerves_network
stuff
Tim:
- Not much progress with Windows support
- Working on the RFM69 library support
- Some issues where the Zero is slow unless you connect to the gadget serial first.
- Frank says this really shouldn't be a problem with
nbtty
. - Tim will post more details and Connor will follow up about similar issues on BBGW.