Difference between revisions of "DisasterRadio"

From Sudo Room
Jump to navigation Jump to search
(updated banner)
 
(15 intermediate revisions by 2 users not shown)
Line 1: Line 1:
This page attempt to document the low-bandwidth disaster recovery mesh (DisasterRadio).
{{tocright}}
<center>
[[File:Disasterradio banner with subtitle icon sunflip.png|600px]]
</center>


= UHD gain selection =
= Introduction =


The command:
DisasterRadio is an off-grid (solar-powered) low-bandwidth long-range mesh network built on free and open source software and affordable open hardware.


  sudo uhd_find_devices
The nodes are small and entirely self-contained units that can be deployed simply by leaving them in a place with sun. They are intended for either manual or drone-deployment on rooftops or in windows. They use high gain omni-directional antennas on 915 MHz using the LoRa PHY (Chirp Spread Spectrum) to talk to each-other and a downward-pointing/inward-pointing high gain wifi antenna to talk to user devices (phones/tables/laptops) inside the buildings on which they are placed. They use a low-power microcontroller running a web server that lets anyone use the network as long as they have a device with wifi and a web-browser.


Should list the gain range for the TX or RX frontend of choice.
= Updates =
* Status as of 31 October 2017: [[User:nanomonkey]] and fritz received the custom PCB boards they designed. got one working tonight \o/
* Status as of June 10th 2017: Basic chat between two nodes working. A more fleshed-out website should appear here soon.


E.g. for the WBX TX frontend you get:
= Applications =


  Gain range PGA0: 0.0 to 25.0 step 0.1 dB
The in-development apps are secure chat and community resource mapping (an offline map that communities can use to add resources, like [http://tidepools.co/ tidepools]).


Make sure you're not looking at the gain range for TX when you're looking to receive or vice-versa, as the won't necessarily be the same!
= Technical Specifications =
* Bandwidth: < 2000 kbits/sec.
* Power: Nodes need at minimum a 6V, 3W solar panel plus a battery capable of 3600mAh


= GNU Radio UHD device selection =
== Components ==
All are initial estimations, probably missing a component or two and haven't scoured for bulk prices on everything [[User:Tunabananas|Tunabananas]]:
* [https://tinurl.com/y7sytmox ESP8266] - $2.50
* LoRa Transceiver - [https://www.digikey.com/products/en/rf-if-and-rfid/rf-transceiver-modules/872?k=RFM95 HackRF RFM95W] - $7 OR [Dorji DRF1276G](https://www.tindie.com/products/DORJI_COM/868mhz-915mhz-sx1276-module-drf1276g/) - $6
* [https://www.seeedstudio.com/fusion_pcb.html Custom PCB - ~180x120, 1 layer, 100ct] - $6.50
* [https://www.ebay.com/itm/GSM-900MHZ-Omnidirectional-Wireless-Module-Antenna-SMA-Head-5DBI-19cm/281782888586900MHz Directional WiFi Antenna 5dBi] - [https://www.tvc-mall.com/details/3w-6v-diy-monocrystalline-silicon-solar-panel-145mm-x-145mm-sku85020025a.html another option] - $3
* [https://www.ebay.com/i/121104191012?chn=ps&dispItem=1 Solar Panel - 6V, 3W, 120mAH] - [https://www.tvc-mall.com/details/3w-6v-diy-monocrystalline-silicon-solar-panel-145mm-x-145mm-sku85020025a.html another lead] - $5-6
* [http://www.dx.com/p/ultrafire-18650-3-7v-3600mah-batteries-pair-50486 LiOn Battery] - 3.7V 3600mAh - $4
OR
* LTO battery? - NEED TO RESEARCH COSTS
* [https://www.adafruit.com/product/2745 3.3V buck converter] - $5
* Enclosure - ~$5
'''* Total: ~$40'''


For a USRP 1 this should be in the form: serial=<hex_serial>. E.g:
= Documentation =
* Code is here: https://github.com/sudomesh/disaster-radio-nodemcu
* Documentation wiki is here: https://github.com/sudomesh/disaster-radio/wiki
* Network visualization simulation: https://jemucino.github.io/disaster-radio-netsim/


  serial=24e6b31a
== Presentations ==
[[User:juul|juul]] gave a [https://www.youtube.com/watch?v=tPJj3zCyRpI talk about this at the 2017 BATTLEMESH in Vienna]. [http://battlemesh.org/BattleMeshV10?action=AttachFile&do=get&target=disasterradio_juul.odp Slides]


To find device serial run:  
== User Research ==
[[User:Tunabananas|Tunabananas]] designed [http://wiki.tidepools.co/view/Ethnography use cases and user stories] for the decentralized mobile mapping application Tidepools in early 2013, based on open-ended interviews with community residents and various organizations engaged in technology equity and access.


  sudo uhd_find_devices
= Licensing =
* [https://github.com/sudomesh/disaster-radio/tree/master/firmware firmware/]: Dual licensed under both GPLv3 and AGPLv3
* [https://github.com/sudomesh/disaster-radio/tree/master/web web/]: AGPLv3


You're looking for output that looks like:
[[Category:DisasterRadio]]
 
|    _____________________________________________________
|    /
|  |      Mboard: USRP1
|  |  serial: 24e6b31a
 
To set the sub-device (the daughterboard and channel) use the format:
 
  <slot_name>:<daughterboard_frontend_id>
 
E.g:
 
  B:0
 
This slot_name and daughterboard_frontend_id are also findable with the command:
 
  sudo uhd_find_devices
 
The output you're looking for looks like:
 
|  |    _____________________________________________________
|  |    /
|  |  |      RX Dboard: B
|  |  |  ID: WBX, WBX + Simple GDB (0x0053)
|  |  |    _____________________________________________________
|  |  |    /
|  |  |  |      RX Frontend: 0
|  |  |  |  Name: WBXv2 RX+GDB
|  |  |  |  Antennas: TX/RX, RX2, CAL
|  |  |  |  Sensors: lo_locked
|  |  |  |  Freq range: 68.750 to 2200.000 Mhz
|  |  |  |  Gain range PGA0: 0.0 to 31.5 step 0.5 dB
|  |  |  |  Connection Type: IQ
|  |  |  |  Uses LO offset: No
 
Specifically the lines:
 
|  |  |      RX Dboard: B
 
and:
 
|  |  |  |      RX Frontend: 0
 
Together making up the B:0.
 
== For command-line python scripts ==
 
For command line scripts, device and sub-device is often specified with the --args and --spec arguments. E.g:
 
  my_script.py --args serial=24e6b31a --spec B:0
 
This syntax may vary from script to script, but this is the most common syntax.
 
== For GNU Radio Companion ==
 
For the "UHD: USRP Sink" in the latest version of grc (as of this writing) the field "Device Addr" would be set to e.g. serial=24e6b31a and the field "Mb0: Subdev Spec" would be set to e.g. "B:0".

Latest revision as of 00:15, 12 November 2017

Disasterradio banner with subtitle icon sunflip.png

Introduction

DisasterRadio is an off-grid (solar-powered) low-bandwidth long-range mesh network built on free and open source software and affordable open hardware.

The nodes are small and entirely self-contained units that can be deployed simply by leaving them in a place with sun. They are intended for either manual or drone-deployment on rooftops or in windows. They use high gain omni-directional antennas on 915 MHz using the LoRa PHY (Chirp Spread Spectrum) to talk to each-other and a downward-pointing/inward-pointing high gain wifi antenna to talk to user devices (phones/tables/laptops) inside the buildings on which they are placed. They use a low-power microcontroller running a web server that lets anyone use the network as long as they have a device with wifi and a web-browser.

Updates

  • Status as of 31 October 2017: User:nanomonkey and fritz received the custom PCB boards they designed. got one working tonight \o/
  • Status as of June 10th 2017: Basic chat between two nodes working. A more fleshed-out website should appear here soon.

Applications

The in-development apps are secure chat and community resource mapping (an offline map that communities can use to add resources, like tidepools).

Technical Specifications

  • Bandwidth: < 2000 kbits/sec.
  • Power: Nodes need at minimum a 6V, 3W solar panel plus a battery capable of 3600mAh

Components

All are initial estimations, probably missing a component or two and haven't scoured for bulk prices on everything Tunabananas:

OR

* Total: ~$40

Documentation

Presentations

juul gave a talk about this at the 2017 BATTLEMESH in Vienna. Slides

User Research

Tunabananas designed use cases and user stories for the decentralized mobile mapping application Tidepools in early 2013, based on open-ended interviews with community residents and various organizations engaged in technology equity and access.

Licensing

  • firmware/: Dual licensed under both GPLv3 and AGPLv3
  • web/: AGPLv3