diff --git a/content/posts/2026-butter-box-connectivity/index.md b/content/posts/2026-butter-box-connectivity/index.md index 58b287e..b95c83f 100644 --- a/content/posts/2026-butter-box-connectivity/index.md +++ b/content/posts/2026-butter-box-connectivity/index.md @@ -31,11 +31,11 @@ into a future release. ## WiFi HaLow -Traditional WiFi operates at 2.4GHz, 5GHz, and up to provide high speed connections between local devices. +Traditional WiFi operates at 2.4GHz and 5GHz, and aims to provide high speed connections between local devices. The higher the speed, the higher the frequency of the carrier required, and pushes in this direction have led to the development of the WiGig standard offering multi-gigabit speeds operating at 60GHz. -There is a tradeoff however that as the frequency increases the distance that the signal propagates and the materials -it can propagate through both decrease. +There is a tradeoff however: as the frequency increases the distance that the signal propagates and its ability to +propagate through materials both decrease. WiFi HaLow is IEEE 802.11ah, a wireless protocol that takes WiFi and moves it down below 1 GHz. This is 863-870MHz in ITU region 1 and some countries in region 3, and 902-928MHz in region 2. @@ -43,19 +43,19 @@ Being in this lower frequency range means that signal can propagate further and materials like those found in urban environments. To be compliant with the local rules governing radio spectrum use, the transmissions must be entirely contained within -the available frequency range and for data transmissions there can be some "spillover" affecting nearby frequencies from +the available frequency range, as for data transmissions there can be some "spillover" affecting nearby frequencies from the signal. In region 2, including the United States, there is a full 26MHz available allowing for 8MHz wide channels and a theoretical maximum throughput of 43Mbps. In regions 1 and 3 however there is only 7MHz available allowing for a 2MHz wide channel with maximum theoretical throughput of 8.9Mbps. -The trade-offs is straightforward: you sacrifice throughput for range. +The trade-off is straightforward: you sacrifice throughput for range. HaLow promises roughly 10× the range and 100× the coverage area of conventional WiFi, which matters when you're rapidly deploying an ad-hoc network responding to an evolving situation. -It is not a replacement for the WiFi that carries your video calls. -It is a means of tactical communication and dissemination of updates received from outside the network, allowing for -the exchange of critical messaging and maintaining situational awareness for responders during communications outages. +It is not a replacement for the WiFi that carries video calls, but rather a means of tactical communication and +dissemination of updates received from outside the network, allowing for the exchange of critical messaging and +maintaining situational awareness for responders during communications outages. In our evaluation of WiFi HaLow, we used the Morse Micro [MM8108-EKH19 Evaluation Kit](https://www.morsemicro.com/resources/product_brief/MM8108-EKH19-Product-Brief.pdf) which @@ -124,7 +124,7 @@ devices competing for spectrum. (Check out the [Morse Micro YouTube channel](https://www.youtube.com/@morsemicro) if you want to see some ideal environment tests, like this one [achieving 3km range along Ocean Beach, California](https://www.youtube.com/watch?v=2xlUijXucoM)). -At 500 meters it was still possible, albeit frustrating slow at times, to access the Butter Box interface over the +At 500 meters it was still possible, albeit frustratingly slow at times, to access the Butter Box interface over the bridge. At that distance, it would be practical to have a second Butter Box to provide an interface and Delta Chat relay, and then allow the relays to communicate over the bridge but keep other interactions local. Delta Chat is built on email which was designed to be delay tolerant from the start and so is well suited for this use case. @@ -166,7 +166,7 @@ They were labelled as "USR-LG206-P" and while we were unable to obtain a datashe We confirmed that data could indeed be sent over greater distances than WiFi HaLow in our initial testing however this throughput was not suitable to attempt to load the Butter Box portal. -One possibility that we would have explored given more time would be to run UUCP over the emulated serial link. +One possibility for future exploration would be to run UUCP over the emulated serial link. The necessary software for this [is maintained in Debian to this day](https://packages.debian.org/sid/uucp) and would be ready for configuration in a custom Delta Chat relay configuration. diff --git a/content/posts/2026-butter-box-portal/index.md b/content/posts/2026-butter-box-portal/index.md new file mode 100644 index 0000000..6eecdbc --- /dev/null +++ b/content/posts/2026-butter-box-portal/index.md @@ -0,0 +1,83 @@ ++++ +title = 'Butter Box Portal Improvements' +date = 2026-04-15T20:00:00-00:00 +lastmod = 2026-04-15T20:00:00-00:00 +draft = false +tags = ['local','offline','butterbox', 'deltachat'] +[params] + author = 'Ana Custura' ++++ + +As part of our latest development project with the [Guardian Project team](https://guardianproject.info/), we have +re-engineered the [Butter Box](https://likebutter.app/) portal interface. This post describes the design choices and improvements within the new +portal. + +## Portal tech stack + +Previously, the interface was a static site built with [Jekyll](https://jekyllrb.com/), which offered no customisation +options and was ill-suited for the portal's dynamic requirements. It has now been replaced with a [Python Flask](https://flask.palletsprojects.com/en/stable/) +application, a lightweight framework that allows developers to include only the necessary libraries, [such as for +localisation](https://python-babel.github.io/flask-babel/), minimising the application's footprint. + +We are now also using [Bulma CSS](https://bulma.io/) to style it, a free and open source framework that is lightweight +and JS free, designed for mobile applications, which was also chosen with reducing the size of the portal app in mind. + +## Portal customisation + +In contrast, the new portal features the ability to change the logo and modify the display name of a Butter Box, making +it more customisable. This allows different communities to deploy the box in a way that better aligns with their +identity and fosters greater trust with their users. + +{{< figure + src="/images/2026/portal-branding.png" + alt="A screenshot of the Butter Box portal including fields to change the name and logo." + caption="The Butter Box portal boasts new customisation capabilities." +>}} + +We've also made improvements to allow users to configure Butter Box security with minimal effort. This includes changing the +admin password for the interface, modifying the Wi-Fi name, setting a Wi-Fi password, changing the root password, +and controlling SSH behavior through the portal. + +{{< figure + src="/images/2026/portal-security.png" + alt="A screenshot of the Butter Box portal including fields to change the root and admin passwords and SSH behaviour." + caption="The Butter Box portal also features new security capabilities." +>}} + +We now also allow setting a date and time for the box through the portal. This functionality is essential for supporting +more advanced applications in the future, particularly those involving cryptography, which require accurate time +synchronisation. Note that the Raspberry Pi does not have an internal real-time clock module, so manual time +configuration is necessary in the absence of the Internet. + +Future plans include a customizable welcome message on the portal landing page and the ability for administrators to +upload a custom background image. These enhancements will expand branding options for organizations deploying the box. + + +## Integrating DeltaChat + +The portal now includes a dedicated page that allows users to download the [DeltaChat](https://delta.chat/en/) APK for +Android devices and securely register an account on a locally running relay. During registration, a randomly generated +username and password are provided. + +{{< figure + src="/images/2026/portal-deltachat.png" + alt="A screenshot of the Butter Box portal DeltaChat account registration page." + caption="DeltaChat messaging through a local relay is now supported by Butter Box." +>}} + +This enhancement would in future enable the connection of multiple relays running on separate boxes, to ultimately allow +sending messages between communities. + +## Portal updates and future + +An advantage of using [Debian](https://en.wikipedia.org/wiki/Debian) as the OS for Butter Box is the ability to create +a content pack with a local [Debian mirror](https://www.debian.org/mirror/ftpmirror), enabling the box to be updated +without an Internet connection. + +The future plan for the portal is therefore to package it as a Debian package, enabling updates through the Butter Box +OS’s native package management. Updates to any APKs distributed via the portal, such as the Delta Chat APK, would also +be delivered through upgrading the portal, and will not require re-flashing a new image onto the box. + +Ultimately, as a result of portal improvements the Butter Box is now a more flexible, secure, and upgradable platform, +and the groundwork has been laid for enabling future capabilities like cross-box messaging and time-sensitive +cryptographic applications. diff --git a/static/images/2026/portal-branding.png b/static/images/2026/portal-branding.png new file mode 100644 index 0000000..53da52a Binary files /dev/null and b/static/images/2026/portal-branding.png differ diff --git a/static/images/2026/portal-deltachat.png b/static/images/2026/portal-deltachat.png new file mode 100644 index 0000000..1f532f5 Binary files /dev/null and b/static/images/2026/portal-deltachat.png differ diff --git a/static/images/2026/portal-security.png b/static/images/2026/portal-security.png new file mode 100644 index 0000000..48a05b0 Binary files /dev/null and b/static/images/2026/portal-security.png differ