Skip to content

Commit

Permalink
v1.1.0 - Grainfather & Taplistio Support
Browse files Browse the repository at this point in the history
  • Loading branch information
thorrak committed Jan 13, 2022
2 parents f0ed2cf + 10f2434 commit fc43fee
Show file tree
Hide file tree
Showing 41 changed files with 1,552 additions and 246 deletions.
67 changes: 67 additions & 0 deletions .github/workflows/build-devel.yml
@@ -0,0 +1,67 @@
name: Build (devel)

on:
push:
branches:
- devel

pull_request:
types: [ open, synchronize, edited, reopened, closed ]

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- run: git fetch --prune --unshallow

- name: Cache pip
uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Cache PlatformIO
uses: actions/cache@v2
with:
path: ~/.platformio
key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }}

- name: Set up Python
uses: actions/setup-python@v2

- name: Install PlatformIO
run: |
python -m pip install --upgrade pip
pip install --upgrade platformio
- name: Build all environments
run: |
pio run
pio run --target buildfs
sh ./copy_bins.sh
- name: "Update development release"
uses: "marvinpinto/action-automatic-releases@latest"
# if: github.event.pull_request.merged == true
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest-devel"
prerelease: true
title: "Development Build"
files: |
LICENSE
bin/*.bin
- name: "Publish tagged release"
uses: "marvinpinto/action-automatic-releases@latest"
if: startsWith(github.ref, 'refs/tags')
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
prerelease: false
files: |
LICENSE
bin/*.bin
68 changes: 68 additions & 0 deletions .github/workflows/build.yml
@@ -0,0 +1,68 @@
name: Build

on:
push:
branches:
- master
tags:
- "v*"
pull_request:
types: [ open, synchronize, edited, reopened, closed ]

jobs:
build:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- run: git fetch --prune --unshallow

- name: Cache pip
uses: actions/cache@v2
with:
path: ~/.cache/pip
key: ${{ runner.os }}-pip-${{ hashFiles('**/requirements.txt') }}
restore-keys: |
${{ runner.os }}-pip-
- name: Cache PlatformIO
uses: actions/cache@v2
with:
path: ~/.platformio
key: ${{ runner.os }}-${{ hashFiles('**/lockfiles') }}

- name: Set up Python
uses: actions/setup-python@v2

- name: Install PlatformIO
run: |
python -m pip install --upgrade pip
pip install --upgrade platformio
- name: Build all environments
run: |
pio run
pio run --target buildfs
sh ./copy_bins.sh
- name: "Update development release"
uses: "marvinpinto/action-automatic-releases@latest"
# if: github.event.pull_request.merged == true
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
automatic_release_tag: "latest-${{ github.event.pull_request.base.ref }}"
prerelease: true
title: "Development Build"
files: |
LICENSE
bin/*.bin
- name: "Publish tagged release"
uses: "marvinpinto/action-automatic-releases@latest"
if: startsWith(github.ref, 'refs/tags')
with:
repo_token: "${{ secrets.GITHUB_TOKEN }}"
prerelease: false
files: |
LICENSE
bin/*.bin
6 changes: 6 additions & 0 deletions Json Models/Configuration JSON.md
Expand Up @@ -70,6 +70,8 @@
"localTargetPushEvery":9999,
"brewstatusURL":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"brewstatusPushEvery":99999,
"taplistioURL":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"taplistioPushEvery":99999,
"scriptsURL":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"scriptsEmail":"XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX",
"brewersFriendKey":"XXXXXXXXXXXXXXXXXXXXXXXXX",
Expand Down Expand Up @@ -161,6 +163,8 @@ doc["localTargetURL"] = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
doc["localTargetPushEvery"] = 9999;
doc["brewstatusURL"] = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
doc["brewstatusPushEvery"] = 99999;
doc["taplistioURL"] = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
doc["taplistioPushEvery"] = 99999;
doc["scriptsURL"] = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
doc["scriptsEmail"] = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX";
doc["brewersFriendKey"] = "XXXXXXXXXXXXXXXXXXXXXXXXX";
Expand Down Expand Up @@ -247,6 +251,8 @@ const char* localTargetURL = doc["localTargetURL"];
int localTargetPushEvery = doc["localTargetPushEvery"]; // 9999
const char* brewstatusURL = doc["brewstatusURL"];
long brewstatusPushEvery = doc["brewstatusPushEvery"]; // 99999
const char* taplistioURL = doc["taplistioURL"];
long taplistioPushEvery = doc["taplistioPushEvery"]; // 99999
const char* scriptsURL = doc["scriptsURL"];
const char* scriptsEmail = doc["scriptsEmail"];
const char* brewersFriendKey = doc["brewersFriendKey"]; // "XXXXXXXXXXXXXXXXXXXXXXXXX"
Expand Down
1 change: 1 addition & 0 deletions README.md
Expand Up @@ -18,6 +18,7 @@ TiltBridge automatically logs your data to the following cloud data services:
* [Brewfather](https://brewfather.app)
* Google Sheets
* [Brewstatus](https://brewstat.us)
* [Taplist.io](https://taplist.io)
* [MQTT](https://mqtt.org/) Broker

#### Features
Expand Down
Binary file removed bin/d32_pro_tft_firmware.bin
Binary file not shown.
Binary file removed bin/d32_pro_tft_partitions.bin
Binary file not shown.
Binary file removed bin/d32_pro_tft_spiffs.bin
Binary file not shown.
Binary file removed bin/lcd_ssd1306_firmware.bin
Binary file not shown.
Binary file removed bin/lcd_ssd1306_partitions.bin
Binary file not shown.
Binary file removed bin/lcd_ssd1306_spiffs.bin
Binary file not shown.
Binary file removed bin/tft_espi_firmware.bin
Binary file not shown.
Binary file removed bin/tft_espi_partitions.bin
Binary file not shown.
Binary file removed bin/tft_espi_spiffs.bin
Binary file not shown.
1 change: 1 addition & 0 deletions copy_bins.sh
Expand Up @@ -9,3 +9,4 @@ copy_binary () {
copy_binary "d32_pro_tft"
copy_binary "lcd_ssd1306"
copy_binary "tft_espi"
copy_binary "m5stickc"
120 changes: 120 additions & 0 deletions data/gsheets.htm
@@ -0,0 +1,120 @@
<!doctype html>
<html lang="en" class="h-100">

<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">

<meta name="description" content="TiltBridge is designed to allow your Tilt Hydrometer to connect directly to WiFi.">
<meta name="author" content="John Beeler">

<title>TiltBridge</title>

<link rel="apple-touch-icon" sizes="180x180" href="/apple-touch-icon.png">
<link rel="icon" type="image/png" sizes="192x192" href="/android-chrome-192x192.png">
<link rel="icon" type="image/png" sizes="32x32" href="/favicon-32x32.png">
<link rel="icon" type="image/png" sizes="16x16" href="/favicon-16x16.png">
<link rel="manifest" href="/site.webmanifest">
<link rel="mask-icon" href="/safari-pinned-tab.svg" color="#5bbad5">
<link rel="shortcut icon" href="/favicon.ico" type="image/x-icon">
<link rel="icon" href="/favicon.ico" type="image/x-icon">
<meta name="apple-mobile-web-app-title" content="TiltBridge">
<meta name="application-name" content="TiltBridge">
<meta name="msapplication-TileColor" content="#da532c">
<meta name="msapplication-TileImage" content="/mstile-144x144.png">
<meta name="theme-color" content="#ffffff">

<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootswatch/4.5.2/sandstone/bootstrap.min.css"
integrity="sha384-zEpdAL7W11eTKeoBJK1g79kgl9qjP7g84KfK3AZsuonx38n8ad+f5ZgXtoSDxPOh" crossorigin="anonymous">

<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css"
integrity="sha384-B4dIYHKNBt8Bc12p+WXckhzcICo0wtJAoU8YZTY5qE0Id1GSseTk6S+L3BlXeVIU" crossorigin="anonymous">

<link rel="stylesheet" href="/common.css">

</head>

<body class="d-flex flex-column h-100">

<header>
<nav class="navbar navbar-expand-lg navbar-dark bg-primary">

<a class="navbar-brand" href="/">
<img src="/logo.png" width:34px;height:25px;>TiltBridge
</a>
<button class="navbar-toggler" type="button" data-toggle="collapse" data-target="#navbarColor01"
aria-controls="navbarColor01" aria-expanded="false" aria-label="Toggle navigation">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarColor01">
<ul class="navbar-nav mr-auto">
<li class="nav-item">
<a class="nav-link active" href="/">Home <span class="sr-only">(current)</span></a>
</li>
<li class="nav-item">
<a class="nav-link" href="/settings/">Settings</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/calibration/">Calibration</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/help/">Help</a>
</li>
<li class="nav-item">
<a class="nav-link" href="/about/">About</a>
</li>
</ul>
</div>
</nav>
</header>

<main role="main" class="flex-shrink-0">

<div class="container" id="404app"><!-- Container -->

<div class="card border-dark mb-3"><!-- TiltBridge 404 Card -->

<div class="card-header bg-light border-primary">
<h5 class="card-title">Google Sheets Pending</h5>
</div>

<div class="card-body">

<p>
Your system has not yet received a URL for your configured Google Sheet.
</p>
<p>
This may be because you just set it up, or if this lasts for several
minutes, it may be because you entered an improper URL. If this is the
case, <a href="/settings/#googlesheets">check your configuration</a>
and try again.
</p>

</div>
</div> <!-- TiltBridge 404 Card -->

</div> <!-- Container -->

</main>

<footer class="footer mt-auto py-3 bg-light">
<div class="container text-center">
<span class="text-muted">Copyright © 2018-2021, John Beeler</span>
</div>
</footer>

<script src="https://code.jquery.com/jquery-3.4.1.min.js"
integrity="sha256-CSXorXvZcTkaix6Yvo6HppcZGetbYMGWSFlBw8HfCJo=" crossorigin="anonymous">
</script>

<script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.14.7/umd/popper.min.js"
integrity="sha384-UO2eT0CpHqdSJQ6hJty5KVphtPhzWj9WO1clHTMGa3JDZwrnQq4sF86dIHNDz0W1" crossorigin="anonymous">
</script>

<script src="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/js/bootstrap.min.js"
integrity="sha384-JjSmVgyd0p3pXB1rRibZUAYoIIy6OrQ6VrjIEaFf/nJGzIxFDsf4x0xIM+B07jRM" crossorigin="anonymous">
</script>

</body>

</html>
2 changes: 1 addition & 1 deletion data/index.htm
Expand Up @@ -99,7 +99,7 @@ <h6 class="card-title empty">RSSI: {{sensor.rssi}}</h6>
</div>
<div class="row">
<div class="col-7 d-flex flex-column text-left pr-0">
<h6 class="card-subtitle empty"><a :href="sensor.gsheets_link" target="_blank">{{sensor.gsheets_name}}</a></h6>
<h6 class="card-subtitle empty"><a :href="sensor.glink" target="_blank">{{sensor.gsheets_name}}</a></h6>
</div>
<div class="col-5 d-flex flex-column text-right pl-0">
<h6 class="card-subtitle empty">{{sensor.battery}}</h6>
Expand Down
7 changes: 7 additions & 0 deletions data/index.js
Expand Up @@ -60,6 +60,13 @@ var vm = new Vue({
cardData['title'] = "Tilt";
}

// Make a gracefull landing if we have no GSheets URL
if (cardData['gsheets_link']) {
cardData['glink'] = cardData['gsheets_link']
} else {
cardData['glink'] = "/gsheets/"
}

self.sensors.push(cardData);
});
}
Expand Down

0 comments on commit fc43fee

Please sign in to comment.