I was reading QSDK page [1] and it seems to me that they are doing something different from openwrt.
>The QCA Software Development Kit (QSDK) project allows users to build an OpenWrt based platform containing additional enhancements for Qualcomm Atheros chipsets that have not yet made it into the public OpenWrt repository.
I'm not aware of the project goals so I may be wrong.
Sort of - QSDK uses an old version of OpenWRT and a 3.x Linux Kernel to allow board partners (e.g. Netgear et al) to use their reference designs and spin up a working home router firmware quickly and easily.
An awful lot of devices these days ship with firmware that is actually OpenWRT (often v10-v15) based.
The actual NSS kernel modules have source available, and this is pulled into QSDK OpenWRT builds, but they've not had much luck getting stuff upstreamed[1] and getting them working on a recent 4.x kernel is non trivial.
This was also before the netfilter flow offloading framework, so the work is further compounded because they used their own offloading system.
> An awful lot of devices these days ship with firmware that is actually OpenWRT (often v10-v15) based.
This is a great explanation and it answers some of my questions as well. But I have one more. I have not worked with the devices that you mention but I was thinking that if they already have openwrt what is stopping an end user to simply update to the latest version?
Is there some kind of hardware incompatibility or maybe disabled updates?
Versions of OpenWRT are tied to different Kernel versions, it's an entire distro, not just a layer above the Kernel.
So the QCA NSS drivers, for example, are kernel modules. The source is fully open and available, but trying to get it to build on the 4.14.x kernel used by OpenWRT is an exercise in futility unless you know the linux networking code inside out, as well as understand what the drivers are doing.
Work is ongoing and some progress is being made for the IPQ8064, and some mediatek SoC's not have full hardware offloading, but taking vendor provided code and massaging it into something acceptable either by OpenWRT (they are loathe to do as it's a huge job) or the upstream Kernel is a huge effort.
The manufacturer usually modifies OpenWRT/QSDK to support their device. AFAIK, most of the time individual components from the device (CPU, Ethernet switch, wireless chip) are already supported in OpenWRT, it's just that the specific combo that the device contains just isn't there yet. This configuration is done with the device tree. On top of that, some manufacturers (Tp-Link, for example) don't use the standard OpenWRT sysupgrade image format, so the device rejects the new firmware that you try to flash.
Yeah. It was a very good read. I could never have thought that you could use xmpp protocol for microblogging! Movim's the only platform that does that as far as I can tell.
Thank you. We have plans to connect an 802.11 card/module (probably M.2 via PCIe) to the FPGA and manage it from the ARM processor. This can be done as a daughter card. We're looking for the right 802.11 module that is a good choice for an embedded system like this (not Windows / *nix).
This is a great idea, well done! I think as a next step you should look a bit more into routers themselves. You can flash them with an opensource os like openwrt [1] and run a chat (or some kind of communication) server on it so everybody connected to the same wifi can freely exchange data.
This way you can turn any wireless capable [2] machine into a small community network.
> great use case I've seen are college campuses where thousands of students connect to the same WiFi,
This is indeed a great use case. Right now you're only thinking about chat but its got more applications like semi-remote teaching,tests ,role calls etc. But (I think) its far easier to realize it if you work at the network level rather than at the app level.
One of the things that I find really encouraging is governments letting other industires to become ISP
>In Tennessee, for example, state laws allow publicly-owned electric utilities to provide broadband
I think this is the best way to solve last mile distribution. Electric companies already have the capacity to manage door to door to installations. Internet could become an additional source of revenue for them. They could lease the line from big providers and increase their reach. Win Win.
> Can you explain a bit more on your VPN setup? Did you create it on the same machine as the router itself?
Yes.
Essentially it operates as a mult-home router.
Traffic on VLAN2 goes directly out to the ISP. This is useful for low latency needs such as online gaming. It is useful when you need your real IP address and do not want to trip security systems such as a online banking site might have.
VLAN 3 is used for everything else, downloading packages (apt, pacman etc, and all my web browsing). The router will send all traffic through the VPN ie tun0.
In addition I can be on VLAN3, and have "exceptions" such as to my mailserver even when on VLAN3 (my VPN VLAN).
I used CONNMARK, for this. In these circumstances the connections from VLAN3 are normally marked with a connection mark[0].
I am at the moment finishing up the configs as Jinja templates, so that one may just input their configuration into the JSON configuration files and it will populate all the configs with envtpl https://github.com/andreasjansson/envtpl it would be trivial for one to extend this into an implementation orchestrated by something like Ansible.
I use that on combination with Yadm https://yadm.io and store it in my dotfiles.
Fatalism works in both directions. If you believe that your destiny is fixed and no matter what you do is going to make a big difference then you can do anything you want content in the knowledge that nothing can stop you for achieving your destiny. Once you realize this you'll understand that fatalism as a philosophy defeats itself. There a very good essay by Emerson on this [1].
Additionally I would like to add, read everything but don't get drowned in the teaching of idle pessimistic philosophers (who they are is up to you to decide I have my list make your own). They are rightly derided for having nothing better to do than to preach. Learn to punch holes in a theory. You can start by punching a big one in mine.
>For, if Fate is so prevailing, man also is part of it, and can confront fate with fate. If the Universe have these savage accidents, our atoms are as savage in resistance. We should be crushed by the atmosphere, but for the reaction of the air within the body. A tube made of a film of glass can resist the shock of the ocean, if filled with the same water. If there be omnipotence in the stroke, there is omnipotence of recoil.
I'm interested in building commission free marketplaces. Some of the advantages that a system like this can have is
- You can completely get rid of centralized international payment processing and distribution.
- Countries where cellular networks have good coverage (i.e. most of the regions where marketplaces operate today) already have highly efficient payment networks that can be set up by any individual or a business. All we need to do is educate them how.
I don't think building a technology infrastructure would be the right way to solve this problem. Effort should instead be spent in educating how the existing infrastructure can be used by individuals to their advantage.
The goal of marketplace operator should be to ensure that all the operations are run smoothly. How customer grievances are to be addressed? How the legal regulations are to be followed? How the service is going to be provided? How the compensation is going to be received? In other words the marketplaces should take away the administrative burden of the participants.
>The QCA Software Development Kit (QSDK) project allows users to build an OpenWrt based platform containing additional enhancements for Qualcomm Atheros chipsets that have not yet made it into the public OpenWrt repository.
I'm not aware of the project goals so I may be wrong.
[1] https://wiki.codeaurora.org/xwiki/bin/QSDK/