Giter Site home page Giter Site logo

anthonyerr / firmware Goto Github PK

View Code? Open in Web Editor NEW

This project forked from black-lager/firmware

0.0 0.0 0.0 41.14 MB

Black Lager device firmware

Home Page: https://black-lager.github.io

License: GNU General Public License v3.0

Shell 0.99% C++ 67.24% Python 1.98% C 26.65% Assembly 2.93% Batchfile 0.20%

firmware's Introduction

Black Lager Firmware

Overview

This repository contains the device firmware for the Black Lager project. In order to use the Black Lager messaging application, you must flash one of the supported devices with the firmware found in this repo.

Supported Hardware

  • LILYGO Lora v2.1-1.6
  • LILYGO T-Beam

Flashing Instructions

Install Prerequisite Software

python3 and pip must be installed on the computer used to flash the device. Check if you have python3 and pip installed with the following commands:

python3 --version
pip3 --version

Install esptool

pip3 install --upgrade esptool

Confirm Communication With Chip

Connect the radio to your computer using a data USB cable. Confirm your device is talking to your computer using the following command:

esptool chip_id

You should see a result similar to this:

mydir$ esptool chip_id
esptool.py v2.6
Found 2 serial ports
Serial port /dev/ttyUSB0
Connecting....
Detecting chip type... ESP32
Chip is ESP32D0WDQ6 (revision 1)
Features: WiFi, BT, Dual Core, 240MHz, VRef calibration in efuse, Coding Scheme None
MAC: 24:6f:28:b5:36:71
Uploading stub...
Running stub...
Stub running...
Warning: ESP32 has no Chip ID. Reading MAC instead.
MAC: 24:6f:28:b5:36:71
Hard resetting via RTS pin...

Download the Firmware

Download the latest release from this repository. Unzip the firmware zip file.

Navigate to Firmware

cd into the directory where you unzipped the latest release. For example:

cd ~/Downloads/firmware/

Install Firmware

bin/device-install.sh -f FIRMWARE_PATH.bin

Note: Be careful to install the correct firmware for your device.

Developers

This repository is forked from the Meshtastic firmware repository. The main branch is the default branch for Black Lager development, while the master branch is used to sync updates from the Meshtastic repo.

Development Environment

PlatformIO is used as a development environment for the firmware.

  1. Instructions on how to install PlatformIO can be found here.

  2. Clone the Meshtastic Firmware repository

git clone https://github.com/black-lager/firmware.git

or

git clone [email protected]:black-lager/firmware.git
  1. Protocol buffer messages are defined in a central protobufs repository. To update the repository's submodules, run the following command inside of the firmware repo:
git submodule update --init

Local Build Instructions

To build a custom version of the firmware after making changes to the firmware code, follow the instructions here. Devices can be flashed with this build for testing.

CI/CD

The main branch of this repo is protected. In order to push code to main, you must make a pull request which must pass code review. Automatic CI/CD is set up to make a new release of the firmware when code is pushed to the main branch. This is automated through GitHub actions.

firmware's People

Contributors

geeksville avatar mc-hamster avatar caveman99 avatar thebentern avatar sachaw avatar mkinney avatar a-f-g-u-c avatar crossan007 avatar professr avatar guvwaf avatar ahmedkadd avatar osmanovv avatar markbirss avatar prampec avatar costonisp avatar lewisxhe avatar joshpirihi avatar vfurman-gh avatar girtsf avatar matyaskrizek avatar beardywalrus avatar dafeman avatar syund avatar garthvh avatar linagee avatar andrekir avatar neilhao avatar claesg avatar slavino avatar mrvdb avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.