Mycroft and openwrt

before i start reinventing the wheel just wondering if anyone has installed or attempted to install Mycroft into openwrt ( it a opensource AI platform)- I know mostly like it would only work on one of those open router platforms such as BPI-R2 and not on a normal router base as they are generally too small to handle it.. but I was curious to try..
reason for trying just because- and with newer and newer more powerful board platforms I like consolidating more and more into a single device -- as I have with my energy monitor/home automation and zigbee hub all consolidated into one openwrt router . now to see if I can consolidate mycroft into a single multipurpose device that has AI capability

Without listing the dozen or so reasons why running something that complex and likely that insecure on a limited-resource device with a bare-bones OS intended for security would not be a wise choice, my recommendation would be to stick with a Raspberry Pi (which is less expensive and more powerful for computation that an ARM-based all-in-one router), a VM on a desktop, or a dedicated desktop.

but what the fun in that :slight_smile: -- but as to limited resources the BPI-R2 or even the R1 not exactly limited resources as they more umpf then many RPi as can do mycroft on these devices easy enough using armbian OS - but I also like using openwrt for its very small footprint os for Iot devices..

Your first step would be to create a package -- https://openwrt.org/docs/guide-developer/packages

As you work through the challenges of that path, you should probably consider

  • Insufficient RAM -- Complex, desktop-intended packages often assume that a several hundred MB of physical memory and "unlimited" address space is available. The abysmal speed of USB sticks makes swap "unhelpful" for all-in-one routers
  • Slow "disk" speeds -- Flash isn't fast to write, USB sticks aren't much better
  • Limited flash lifetime -- Easy to blow through the 10,000-100,000 cycles of typical chips with "constant" use -- at least on a Pi-like device, when it happens, you swap out a fried microSD and don't need tooling and skills for hot-air rework
  • SoCs purpose-designed for two things, general processing being not one of them - flashy "full-featured, yet easy to use" GUIs that please customers and reviewers, meeting well-known benchmarks for reviewers (which usually means offloading the network from the CPU) -- so no notion of, for example, audio support
2 Likes

as I said not using a regular router - using BPi-R2 or similar pi specs .. they have 2gig of memory so and mycroft uses about 500m but that with localize speech core-- it you use cloud speech core it much less ( ie amazon eco or simular only use 256m of memory.. class10 sd are pretty fast as I used swap drive on oragepi zero it work nearly the same as a pi device with 1gig of memory. I will force writes to tmp dir.. processing on a simular device with speech core installed is 30% average. with out i do not think 10 - 20%.. oh well no worries -- I will play around and I figure it out whether you're interested in the the feature or not.... lastly the pi devices i am using I place the OS on normal SSD to reduce wear

by the way it not a desktop application it a simple background python application