make readme a bit more real.

1.2-legacy
geeksville 2020-02-15 08:19:55 -08:00
rodzic 4483bd7f2b
commit befb06bdd9
3 zmienionych plików z 36 dodań i 5 usunięć

Wyświetl plik

@ -1,5 +1,35 @@
# meshtastic-esp32
# Meshtastic-esp32
[![Join the chat at https://gitter.im/Meshtastic/community](https://badges.gitter.im/Meshtastic/community.svg)](https://gitter.im/Meshtastic/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge)
This is the device side code for the [meshtastic.org](https://www.meshtastic.org) project.
You probably don't want this yet.
Meshtastic is a project that lets you use
inexpensive GPS mesh radios as an extensible, super long battery life mesh GPS communicator. These radios are great for hiking, skiing, paragliding -
essentially any hobby where you don't have reliable internet access. Each member of your private mesh can always see the location and distance of all other
members and any text messages sent to your group chat.
The radios automatically create a mesh to forward packets as needed, so everyone in the group can receive messages from even the furthest member. The radios
will optionally work with your phone, but no phone is required.
Typical time between recharging the radios should be about eight days.
This project is currently pre-alpha, but if you have questions please join our chat: [![Join the chat at https://gitter.im/Meshtastic/community](https://badges.gitter.im/Meshtastic/community.svg)](https://gitter.im/Meshtastic/community?utm_source=badge&utm_medium=badge&utm_campaign=pr-badge&utm_content=badge).
This software is 100% open source and developed by a group of hobbyist experimenters. No warranty is provided, if you'd like to improve it - we'd love your help. Please post in the chat.
## Meshtastic Android app
The source code for the Meshtastic Android app is [here](https://github.com/geeksville/Meshtastic-Android).
Soon our first alpha release of will be released here:
[![Download at https://play.google.com/store/apps/details?id=com.geeksville.mesh](https://play.google.com/intl/en_us/badges/static/images/badges/en_badge_web_generic.png)](https://play.google.com/store/apps/details?id=com.geeksville.mesh&referrer=utm_source%3Dgithub%26utm_medium%3Desp32-readme%26utm_campaign%3Dmeshtastic-esp32%2520readme%26anid%3Dadmob&pcampaignid=pcampaignidMKT-Other-global-all-co-prtnr-py-PartBadge-Mar2515-1)
## Build instructions
This project uses the simple PlatformIO build system. You can use the IDE, but for brevity
in these instructions I describe use of their command line tool.
1. Purchase a suitable radio (about $30 from aliexpress)
2. Install [PlatformIO](https://platformio.org/).
3. Download this git repo and cd into it.
4. pio run -t upload (This command will fetch dependencies, build the project and install it on the board via USB).
5. Platform IO also installs a very nice VisualStudio Code based IDE, see their tutorial if you'd like to use it.

Wyświetl plik

@ -5,6 +5,7 @@ Items to complete before the first alpha release.
* retest BLE software update for both board types
* first alpha release, article writeup for hackaday
* send note about Adafruit Clue
* send note to the guy who designed the cases
* send pr https://github.com/ThingPulse/esp8266-oled-ssd1306 to tell them about this project
# Medium priority
@ -26,10 +27,10 @@ Items to complete before the first beta release.
* How do avalanche beacons work? Could this do that as well? possibly by using beacon mode feature of the RF95?
* use std::map<NodeInfo*, std::string> in node db
# Low power consumption tasks
General ideas to hit the power draws our spreadsheet predicts. Do the easy ones before beta, the last 15% can be done after 1.0.
* we currently poll the lora radio from loop(), which is really bad because it means we run loop every 10ms. Instead have the rf95 driver enqueue received messages from the ISR.
* platformio sdkconfig CONFIG_PM and turn on modem sleep mode
* keep cpu 100% in deepsleep until irq from radio wakes it. Then stay awake for 30 secs to attempt delivery to phone.
* have radiohead ISR send messages to RX queue directly, to allow that thread to block until we have something to send

Wyświetl plik

@ -224,7 +224,7 @@ inline double toRadians(double deg)
}
/**
* Computes the bearing in degrees between two points on Earth.
* Computes the bearing in degrees between two points on Earth. Ported from my old Gaggle android app.
*
* @param lat1
* Latitude of the first point