Skip to main content

Thought 59: House of Cloud Pi: Part 3

Continuing on the House of Cload Pi.

This though is about the software and how to get it setup and going at least for getting things staged

YOCTO

Being familair with Yocto from other projects, this seems like a good place to start. It means dropping the ease of Raspbian Lite, but adds the customization and flexibility we are going to need to make this work. So, first Task is to get a basic image for a pi3 or pi zero w and then we can work from there. We will be following this toturial to get started at getting a basic setup for a PI. We should be able to add recipes and modify from there. Yocto can also be configured to create cross platform SDK's which will be useful in early development.

SWUpdate

After getting a basic image down we should attempt to get some level of updating system in place for the pi in the field. We are not going to be able to simple remove/replace and SDCard easily if there is a pi stuck some where in a wall or too high, so having a method of updating would be good. We can follow this example and hopefully not run into any snags with the setup. Once here we should be able to start building out new recipes. Ideally setup with a A, B image and leave more space available for dataspace, as we will be storing metrics and camera data or joining all of the data section as a clustered drive.

B.A.T.M.A.N.

This should be down in two stages, the first is as raspbian to get an idea on how well it will work for the needs. First follow a toturialrecipe. Then see if there is a recipe for yocto out of the box or not, if not we will need to create one. Set this up and hopefully get to the point where we can take a blank pi drop in a sd card with the image and have it join the mesh network, this will be a big giant step to make things work correctly. Likely we will need to create a few images here, one for the gateway and multiples for the end points like a pi zero w and pi 3 and pi 4, etc so we can drop and go with a network.

Base Software

If we get through have a drop in mesh network and upgradable image, we can now start down the path of adding software to networks.

    Base Software
  • GCC - Everything needs GCC
  • OpenCV, GPIOD, IIO, etc. - Libraries for interfacing with all of the hardware.
  • Node Red - A flow controll system.
  • Influx - For storing time series values.
  • Grafana - For viewing data on the devices.
  • Nanite - Personal flow library
  • Other, not entirely sure what all we will need to make this work, but we can figure it out and add it all to the receipes.

Distributed Software

With a base setup going, it will be time to start harnessing the power of having all of these networked devices. So let's look at some packages that might be useful here.

    Distrubuted Software
  • IceCC - aka ice cream, a distributed GCC
  • Haddop - For both hfs experiment and of course map/reduce.
  • OpenMPI - Not sure how well this will work, but worth given it a shot.
  • Tensor Flow - For machine learning in parrallel
  • Gluster - Clustered disk space. Does not have to be Gluster, just an example.
  • HTCondour - Or some other type of bath based interface.
  • HiveQT - For distributed data collection, although more likely this will be a bunch of mosquitto's
  • Other - Can try things like kafka, cassandra, etc, and build those onto the cluster.

Overall not sure how many of these will handle a system that will be continously growing and could have some nodes that disappear altogher so likely need something to manage it all. Of course docker/k8y comes to mind, we will have to see how well that'll work on the pi zero w's which look like they are going to be a majority of the House of Cloud PI, as they fit just about anywhere.

Other Software

Going to need a gateway with some level of monitoring software on it along with a something like Home Assistant to cover the HA part, will need to run BATMAN-ctrl to view the mesh. Some of the tools will need be bumped up to a web front end. I also feel like the gateway should have a monitor on it, but not a requiement at this point.

Starting to look like this useless thought is starting to form into a not-so-useless thought.

Comments

Popular posts from this blog

Thought 70: Determinism.

Hold on your butts, this one is a wild ride, and specifically from my point of view. It's more a journey from when I was about 6, until today, and a little bit beyond that, about a week under normal conditions, but that last part flucuates quite a bit. I cannot explain all of it, but I can describe my experiences, and you don't have to believe them, they are merely my observations. I feel I have to start with sleep and dreaming, since so much of the experience is rooted inside dreams and more specfically dejavu. We have to suspend the dejavu for a moment to get through this, but trust me, we'll get back there, it's too important to leave out. I am a lucid dreamer, in full color, full audio, lots of detail, but not sharp details. Note that last one, it's important as well. I have been my whole life or as far back as I can remember, dreamed vividly of all my childhood nightmares and having the ability to conjure heroes to fight them. This battle somewhere in the...

Thought 54: The House of Cloud PI

The concept of a smart house with a computer that is everywhere is a concept that is today possible with things like alexa and all sorts of technologies. But when the internet is down much of this breaks down to a more simplier format. What if it were possible to combine the cluster performance of the cloud with a set of smart home controllers. That is with the always on of many of the smart plugs and bulbs can we boost each's CPU power and combine that power into a cluster? The concept being take a quad core arm, but now every bulb, outlet, switch, appliance, and smart camera contains one. First would the combined house power be useful? or efficient? Efficent would be a draw of about 2 Watts per device, which be up from the near 0 most of the zigbee and zwave device produce now when they are in low power mode. Does that mean that let's assume you have 40 of these (40 from how many devices I had when I last constructed a smart home, but really we'd likely be higher o...

Thought 55: An End to Bread Ends.

For some reason people dislike bread ends and this alwasy leaves them to be turned into bread crumbs. We always cook them in a pan even the major manufactures. Now, there is a type of bread that is made without ends, but it's very different. But why couldn't someone like Wonder Bread create a convayer belt of bread and remove the pans? That is the belt is a series of overlapping U shapes. The pans drop down from the back preventing dough from going backwards. The U's are sprayed with butter/oil then the dough is dropped into the U's in a continous fashion. The belt continues forward into a low temperator oven to help the dough raise it can take an s-shape here as we are only doing dough rising, from here the dough move to a long and slow oven for the hour or so to cook the bread. At the end of the oven tunnel the bread is sliced, now with no ends. The U conveyer belt drops down and the endless loaves now move to slicing and packaging. The U's now go up thr...