Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

esp-rfid v2 #605

Merged
merged 316 commits into from
Nov 2, 2024
Merged
Show file tree
Hide file tree
Changes from 250 commits
Commits
Show all changes
316 commits
Select commit Hold shift + click to select a range
e7830e5
Log Maintenance Split, Rollover, View, Delete
frenchie71 Sep 7, 2019
7bbbcef
changes to platformio.ini
frenchie71 Sep 8, 2019
a720fa6
Merge pull request #315 from frenchie71/isr-iram-fix
omersiar Sep 8, 2019
6ff5887
Merge pull request #314 from frenchie71/logfile-fix
omersiar Sep 8, 2019
3bcaaff
Truncate-Write (create) logfile if it does not exist
frenchie71 Sep 8, 2019
0396223
catch json parse error in ui
frenchie71 Sep 8, 2019
91130e4
some cosmetics
frenchie71 Sep 8, 2019
1ab0221
Update CHANGELOG
omersiar Sep 9, 2019
3341447
change hardware relay form for mutiple relays
frenchie71 Sep 9, 2019
f9ee181
add acctype_n columns to user Table
frenchie71 Sep 9, 2019
cf63332
relayform update, read write setup, user columns
frenchie71 Sep 9, 2019
211b08c
backend changes
frenchie71 Sep 9, 2019
de87f93
bugfixes
frenchie71 Sep 9, 2019
c85dcc9
bugfices
frenchie71 Sep 9, 2019
c1f89d3
user modal form
frenchie71 Sep 9, 2019
721adc4
bugfixes
frenchie71 Sep 10, 2019
a30a83c
bugfixes
frenchie71 Sep 10, 2019
f43a15c
bugfixes
frenchie71 Sep 10, 2019
26e157f
bugfixes
frenchie71 Sep 10, 2019
be9cb05
Merge pull request #317 from frenchie71/bugfixes
omersiar Sep 13, 2019
879eee5
Merge pull request #318 from frenchie71/two-relays
omersiar Sep 13, 2019
5775cd0
Made changes suggested in #326 for PIO
omersiar Oct 9, 2019
3b52e2e
adding compiled websources for Two Relays feature
frenchie71 Nov 29, 2019
a12272d
Merge pull request #338 from frenchie71/tworelayfix
omersiar Nov 29, 2019
dfee4e3
Fix for #354 (platform setting breaks buildability)
christofkac Jan 19, 2020
b987a36
Merge pull request #355 from christofkac/dev
omersiar Jan 19, 2020
1315456
Fixed the decoding of Wiegand Keypad - a bug leads to an issue that o…
christofkac Jan 24, 2020
7e8506b
Merge pull request #360 from christofkac/dev
omersiar Jan 25, 2020
84f1a45
Update main.cpp
ingeninge Apr 11, 2020
9bfff87
Update wifi.esp
ingeninge Apr 11, 2020
e7bb9af
Merge pull request #375 from ingeninge/patch-2
omersiar Apr 11, 2020
716c2e9
Merge pull request #374 from ingeninge/patch-1
omersiar Apr 12, 2020
46ffe13
Update Gulp to v4
matjack1 Nov 21, 2020
8f2ecfa
Merge pull request #414 from matjack1/update-gulp
omersiar Nov 21, 2020
0efd0bf
Add doorbell support
matjack1 Nov 21, 2020
5e527fe
Merge pull request #415 from matjack1/doorbell
omersiar Nov 21, 2020
bc5d65e
Adding MQTT documentation
matjack1 Nov 21, 2020
86dc1cb
Add a different way for testing websockets locally
matjack1 Nov 21, 2020
344e3a9
Merge pull request #416 from matjack1/doc
omersiar Nov 22, 2020
bd1fd97
Merge pull request #1 from esprfid/dev
baden03 Nov 28, 2020
5fc39df
expanded MQTT docs
baden03 Dec 19, 2020
e7e6e88
Adjusted formating of MQTT docs
baden03 Dec 19, 2020
beda554
Expanded MQTT docs: Added JSON return formats
baden03 Dec 19, 2020
83665c4
Added method for caculating validuntil times base on now
baden03 Dec 19, 2020
bbf1fbd
Merge pull request #423 from baden03/dev
omersiar Dec 20, 2020
b1a8c4d
added .DS_Store to gitignore
baden03 Dec 21, 2020
1157df1
Added documentaiton on new deletuid command
baden03 Dec 21, 2020
10965c5
added the ability to delete a single user using UID
baden03 Dec 21, 2020
dc944d5
Added missing comma
baden03 Dec 21, 2020
216da93
Merge pull request #424 from baden03/dev
omersiar Dec 22, 2020
f57e807
Add access denied pin
matjack1 Jan 10, 2021
b8e6cbe
Update README-ADDON.md
Feb 9, 2021
1f90bbd
Merge pull request #426 from matjack1/accessdenied-led
omersiar Feb 17, 2021
58a5b85
Merge pull request #430 from Paso94/patch-1
omersiar Feb 17, 2021
8565982
1. Puted things in order in MQTT topics
xyzroe Jul 30, 2021
f389603
Code was beautified and tamper's code started
xyzroe Jul 30, 2021
11476cc
Tamper improvements
xyzroe Aug 2, 2021
012d735
Merge pull request #449 from xyzroe/dev
omersiar Aug 3, 2021
add2e94
Refactor Wiegand reading function
matjack1 Jan 14, 2022
f8d8375
Merge pull request #471 from matjack1/refactor-wiegand
omersiar Jan 14, 2022
0abe34d
Update and clean Gulp frontend generation
matjack1 Jan 17, 2022
2788ae6
Fix receiving MQTT messages
matjack1 Feb 2, 2022
2f6ac26
Merge pull request #475 from matjack1/fix-mqtt-receiving
omersiar Feb 3, 2022
96a66fb
Merge pull request #473 from matjack1/update-gulp
omersiar Feb 3, 2022
ad75375
MQTT reading cleanup
matjack1 Feb 3, 2022
1a73247
Adding pincode functionality on the esp-side
matjack1 Jan 17, 2022
dde1ec0
Add pincode functionality on web interface
matjack1 Jan 17, 2022
ec774b3
Recompiled frontend
matjack1 Jan 17, 2022
9e1903e
Fix bugs, clean and add test data to wsemulator
matjack1 Jan 17, 2022
93a7c1a
Merge pull request #476 from matjack1/fix-mqtt-receiving
omersiar Feb 4, 2022
b58f063
Merge pull request #477 from matjack1/add-pincode
omersiar Feb 4, 2022
77cd79e
Create platformio-build.yml
matjack1 Feb 4, 2022
389dcec
Save artifacts
matjack1 Feb 4, 2022
60f7208
Remove Travis
matjack1 Feb 4, 2022
1e3c67e
Build on every push
matjack1 Feb 4, 2022
a2e2cb3
Merge pull request #478 from FablabTorino/github-actions
omersiar Feb 4, 2022
41ebd30
Github action to generate webfilesbuilder binaries
matjack1 Feb 8, 2022
3911cae
Automatically build tools on every commit
matjack1 Feb 9, 2022
40654e2
Merge pull request #482 from FablabTorino/pkg
omersiar Feb 10, 2022
e51eca7
Upgrade to ArduinoJSON v6
matjack1 Feb 14, 2022
e0a20b2
Merge pull request #483 from FablabTorino/arduinojson-v6
omersiar Feb 15, 2022
d3b73db
Extract MQTT message processing
matjack1 Feb 22, 2022
4a4d9fa
Merge branch 'dev' into fix-mqtt
matjack1 Feb 22, 2022
2262419
Merge pull request #484 from esprfid/fix-mqtt
omersiar Feb 24, 2022
3893638
Extract configuration
matjack1 Feb 25, 2022
f22e28e
Merge pull request #485 from FablabTorino/extract-config
omersiar Feb 26, 2022
5d74047
Implement MQTT message queue
matjack1 Mar 3, 2022
091c317
Send MQTT message when done processing one
matjack1 Mar 5, 2022
0245e01
Merge pull request #487 from esprfid/mqtt-queue
omersiar Mar 9, 2022
022c116
Trigger every relay on MQTT open door
matjack1 Mar 9, 2022
ab17643
Revert comment, sorry!
matjack1 Mar 9, 2022
afd4d4b
Adding LED and beeper, plus refactor
matjack1 Mar 17, 2022
0368ce2
Merge pull request #488 from esprfid/fix-mqtt-open
matjack1 Mar 18, 2022
e01c389
Merge branch 'dev' into led-beeper-refactor
matjack1 Mar 21, 2022
1699e55
Refactor and fix rfidLoop
matjack1 Mar 9, 2022
615c625
Fix type
matjack1 Mar 23, 2022
a8275ca
Merge pull request #491 from esprfid/refactor-rfid
omersiar Apr 1, 2022
0524b6c
Refactor WiFi connection
matjack1 Apr 3, 2022
203c12b
Merge pull request #495 from esprfid/refactor-wifi
omersiar Apr 4, 2022
92fff15
Improve Wiegand keypad support
matjack1 Apr 5, 2022
591dac4
Move websocket messages out of main
matjack1 Apr 5, 2022
5fd7162
Little wifi improvements
matjack1 Apr 5, 2022
f405b9e
little bugfix
giutrec Apr 5, 2022
8edc840
Add opening hours with an hourly granularity
matjack1 Apr 5, 2022
dff6a31
MQTT refactor and documentation
matjack1 Apr 9, 2022
bf95241
Try reconnecting websocket connection when drops
matjack1 Apr 9, 2022
b1adb07
Update doorbell.esp
Aleks130699 Apr 11, 2022
d65548c
Merge pull request #496 from esprfid/keypad-support
omersiar Apr 11, 2022
b7298b9
Merge pull request #497 from esprfid/wifi-2
omersiar Apr 11, 2022
e592ad5
Merge pull request #498 from esprfid/fix-open-relay
omersiar Apr 11, 2022
7150e98
Merge pull request #499 from esprfid/office-hours
omersiar Apr 11, 2022
fac91c6
Merge pull request #501 from esprfid/mqtt-docs
omersiar Apr 11, 2022
83b8eb8
Merge pull request #503 from Aleks130699/patch-1
omersiar Apr 11, 2022
caf5e12
Merge branch 'dev' into ws-reconnect
omersiar May 7, 2022
b7f22a1
Merge pull request #502 from esprfid/ws-reconnect
omersiar May 7, 2022
d221cbd
wifi enable log on mqtt only if disconnected (#512)
giutrec Jun 7, 2022
ecae93c
platformio.ini: use common for most settings
mtfurlan Jun 21, 2022
74b8227
Escape should abort pincode entry
mtfurlan Jun 21, 2022
9bc250e
support max open time=0
mtfurlan Jun 21, 2022
4c42790
Merge pull request #516 from mtfurlan/cleanup-platformio.ini
omersiar Jun 22, 2022
6e93254
Merge pull request #517 from mtfurlan/pincode-escape-abort
omersiar Jun 22, 2022
b4a78e7
Merge pull request #519 from mtfurlan/fix-tamper-disable
omersiar Jun 22, 2022
713ef41
Fix bugs in opening hours
matjack1 Jun 29, 2022
2f350a2
Merge pull request #521 from esprfid/fix-openinghours
omersiar Jul 3, 2022
e595a64
fix: send websocket command result when removing user
mtfurlan Jul 8, 2022
dca1ccc
Merge pull request #525 from mtfurlan/fix/ws-remove-user-response
matjack1 Jul 8, 2022
875da78
Remove officialboard build flag
matjack1 Oct 18, 2022
1263726
Fix wrong logging
matjack1 Oct 19, 2022
290f13b
Merge pull request #534 from esprfid/fix-logging
matjack1 Oct 22, 2022
93b2f65
Merge pull request #533 from esprfid/remove-officialboard
matjack1 Oct 22, 2022
3c3f17a
Prepare docs for release
matjack1 Apr 9, 2022
59f6f14
Force MQTT disconnect on Wifi disconnect
matjack1 Jun 29, 2022
17e2da4
Improve WiFi/MQTT reliabilty
matjack1 Oct 23, 2022
0664c68
Fix ignored timezone in web UI
matjack1 Oct 26, 2022
5998410
Merge pull request #540 from esprfid/fix-timezone
matjack1 Oct 28, 2022
c0a747b
Mark development version
matjack1 Nov 4, 2022
ec07bc1
Merge pull request #535 from esprfid/prepare-release
matjack1 Nov 6, 2022
d4c343c
Merge pull request #536 from esprfid/fix-wifi-connect
matjack1 Nov 6, 2022
94c2999
Remove unused interface for logfile settings
matjack1 Oct 23, 2022
9dcd426
Merge pull request #537 from esprfid/clean-unused-ui
matjack1 Nov 6, 2022
bc40596
Fix fallbackmode radio
matjack1 Nov 16, 2022
0317616
Merge pull request #555 from esprfid/fix-fallbackmode-radio
matjack1 Nov 17, 2022
766f70c
Fix autorestart and add custom restart time
matjack1 Nov 11, 2022
aa86426
Merge pull request #552 from esprfid/fix-restart
matjack1 Nov 22, 2022
24722b5
Add pin code only option to open door
matjack1 Nov 11, 2022
aa12b6a
Allow pin code to enter rfid card id
matjack1 Nov 14, 2022
aba6f43
Support users with no pin, when pin required
matjack1 Nov 22, 2022
e95c38d
Merge pull request #551 from esprfid/pin-code-only
matjack1 Nov 23, 2022
7111891
Fix Home Assistant integration
matjack1 Nov 10, 2022
9e9316a
Fix support for readers other than Wiegand
matjack1 Nov 7, 2022
128f612
Fix bug with old configurations
matjack1 Nov 7, 2022
be0b7ad
Use one topic per esp-rfid, for HA
matjack1 Nov 27, 2022
d3ebcab
Add valid since date, for user validity
matjack1 Nov 17, 2022
469ab45
Merge pull request #547 from esprfid/fix-readers
matjack1 Dec 4, 2022
dd0b953
Merge pull request #559 from esprfid/fix-hass
matjack1 Dec 4, 2022
52d007e
Merge branch 'dev' into valid-since
matjack1 Dec 4, 2022
4af7679
Merge pull request #562 from esprfid/valid-since
matjack1 Dec 4, 2022
dc0103d
Read/write configuration via MQTT
matjack1 Dec 6, 2022
0674504
Little refactor for coherence of hardware settings
matjack1 Dec 10, 2022
d392d6a
MQTT auto-topic for auto configuration
matjack1 Dec 10, 2022
b8b567e
Fix bug
matjack1 Dec 11, 2022
f62ffe4
Merge pull request #565 from esprfid/update-conf-mqtt
matjack1 Dec 18, 2022
60c68e3
Merge pull request #566 from esprfid/auto-topic
matjack1 Dec 18, 2022
64e04ac
Regenerate JS
matjack1 Jan 9, 2023
b11800e
Fix default values for pincode
matjack1 Jan 23, 2023
4c3c90c
Fix getuserlist users
matjack1 Jan 23, 2023
9bb3b03
Increase version number to help troubleshoot
matjack1 Jan 27, 2023
f14ee82
Merge pull request #578 from esprfid/fix-pin-false
matjack1 Mar 8, 2023
dd3e2ed
Merge pull request #579 from esprfid/fix-mqtt-getuserlist
matjack1 Mar 8, 2023
ac78761
Extend options of Wiegand card bits
matjack1 Feb 14, 2023
b30f5ff
Add option to retain parity bits in Wiegand read
matjack1 Mar 24, 2023
5543625
Merge pull request #582 from esprfid/fix-hid-readers
matjack1 Mar 28, 2023
abd0e66
Fix read with MFRC522
matjack1 Mar 28, 2023
bac45b8
Fix missing check on MQTT cmd
matjack1 Mar 28, 2023
b323fbc
Fix doc for PN532
matjack1 Mar 28, 2023
a7fd61e
Merge pull request #589 from esprfid/fix-docs
matjack1 Mar 28, 2023
3b3d23d
Merge pull request #586 from esprfid/fix-MFRC522-read
matjack1 Aug 23, 2023
7c1704e
Merge pull request #588 from esprfid/mqtt-cmd-fix
matjack1 Aug 23, 2023
eedf9c1
Add door name support
matjack1 Jun 29, 2022
5714e7b
Merge pull request #598 from esprfid/doorname
matjack1 Sep 29, 2023
37159db
Fix bug when open lock not set
matjack1 Sep 29, 2023
b3888e3
Fixes on MQTT output for multiple doors
matjack1 Oct 4, 2023
eef5b26
Check for existing key to ensure compatibility
matjack1 Oct 6, 2023
08c1db4
Add debugging docs
matjack1 Oct 10, 2023
ce59506
Fix when additional relays config is not present
matjack1 Oct 10, 2023
0e419a5
Process websocket requests in asyncronous queue
matjack1 Jan 9, 2023
583ef72
Send websocket messages only to one client
matjack1 Jan 9, 2023
ed5aebe
Increase version number to help troubleshoot
matjack1 Jan 27, 2023
b997715
Little cleaning
matjack1 Jan 28, 2023
dad70a3
Change pagination table for users
matjack1 Jan 28, 2023
c904038
Improve queue handling for websockets
matjack1 Aug 26, 2023
84c4c9b
Reduce memory usage and microcleaning
matjack1 Oct 6, 2023
6abf6db
Paginate WS responses on test server
matjack1 Oct 10, 2023
fee4b91
Restore pagination as it was implemented before
matjack1 Oct 12, 2023
4bb84b8
Merge pull request #577 from esprfid/fix-websockets
matjack1 Oct 25, 2023
ae19b71
Support configuration and users from v1
matjack1 Nov 7, 2023
3f03c33
Fix a couple of bugs with MQTT connection and logging
matjack1 Nov 7, 2023
d16a310
Update documentation for v2
matjack1 Nov 7, 2023
104a4d6
Add timezone support
matjack1 Oct 13, 2023
2191b6e
Support for old config and feature in docs
matjack1 Nov 4, 2023
e31113c
Merge pull request #604 from esprfid/timezone
matjack1 Nov 14, 2023
648b3e2
Improve defaults to make it more compatible with V1
matjack1 Nov 14, 2023
b72d26c
Merge branch 'stable' into dev
matjack1 Nov 14, 2023
48b329c
V2
matjack1 Nov 14, 2023
973cdc3
Fix old config compatibility for timezone
matjack1 Nov 14, 2023
20e4dcb
Update rfid.esp
plex3r Dec 19, 2023
81cbd9c
Merge pull request #1 from plex3r/plex3r-patch-2
plex3r Dec 19, 2023
2215b18
Fix websocket retry logic
matjack1 Dec 19, 2023
95beda0
Merge pull request #613 from plex3r/dev
matjack1 Jan 16, 2024
ec627f3
Only retry NTP sync every 10 seconds
croggero Mar 3, 2024
e5d5c5e
don't process JSON past the end of the buffer
mcnewton Mar 9, 2024
e655e76
need to get acctype setting from the user data before using it
mcnewton Mar 9, 2024
8c1f85a
simplify relay activation code
mcnewton Mar 9, 2024
ceec94d
Use correct label for extra relays when editing user
mcnewton Mar 13, 2024
1e97724
Allow old v1 UID format to work for compatibility
mcnewton Mar 17, 2024
e9ffc6e
tidy inc. whitespace
mcnewton Mar 17, 2024
c0f8fdd
Merge pull request #619 from mcnewton/jsonbuffer
matjack1 Mar 24, 2024
7e2ac41
Merge pull request #620 from mcnewton/relayactivate
matjack1 Mar 24, 2024
9e970bf
Merge pull request #624 from mcnewton/doorlabelfix
matjack1 Mar 24, 2024
56c0fb9
Merge pull request #625 from mcnewton/uid-v1-compat
matjack1 Mar 24, 2024
9c19fa2
rework if tests in genericRead to make the logic simpler to read
mcnewton Mar 9, 2024
195d29d
add some comments
mcnewton Mar 9, 2024
5f54e88
Merge remote-tracking branch 'upstream/dev' into dev
croggero Mar 26, 2024
d7be1a4
Merge pull request #621 from mcnewton/rfidesptidy
matjack1 Apr 9, 2024
17e198b
Merge pull request #626 from croggero/dev
matjack1 Apr 9, 2024
142dc5b
Fixes
matjack1 Apr 9, 2024
c7d2c43
Fix opening door while disconnected
matjack1 Apr 23, 2024
3c9b4be
Merge pull request #633 from esprfid/fix-admin-open
matjack1 May 9, 2024
54e4405
Fix access logs and visualization
matjack1 Apr 23, 2024
cc56a95
v2.0.2: more MQTT Messages and some other minow changes
wasn-eu Jun 5, 2024
33a44b7
Merge pull request #632 from esprfid/fix-accesslog
matjack1 Jun 11, 2024
8c9ff93
Fix pincode reading in websocket
matjack1 Jun 11, 2024
1a65540
Merge pull request #645 from esprfid/fix-pincode
matjack1 Jun 11, 2024
1c91a0d
Squashed commit of the following:
pvtex Jun 11, 2024
04f5d2e
cleanup
pvtex Jun 11, 2024
2e21579
version back to 2.0.0
pvtex Jun 11, 2024
f2ce1d0
Merge branch 'dev' into v2.0.x
pvtex Jun 11, 2024
e67c683
gitignore: added ESP-Debug
pvtex Jun 11, 2024
b2f4944
deletet folder pio and ESP-Debug
pvtex Jun 11, 2024
c7d9df1
added systenname to menu, uptime human readable, mqtt accesstime huma…
pvtex Jun 11, 2024
8b058b4
deleted Exception.txt
pvtex Jun 11, 2024
bc51c82
fixed update api url
pvtex Jun 11, 2024
2cf5478
Small code review
matjack1 Sep 21, 2024
8f14702
Updated MQTT documentation
matjack1 Sep 21, 2024
703e799
Merge pull request #654 from esprfid/v2.0.x
matjack1 Sep 21, 2024
3a6c37e
Using a SoftwareSerial to communicate with RDM6300
teodino93 Apr 12, 2023
69ba0b3
Make RDM6300 on software serial configurable
matjack1 Jul 30, 2024
85e74bb
Fix deprecation warning from Platformio
matjack1 Sep 21, 2024
5a22a8f
Merge pull request #655 from esprfid/rdm6300-mj
matjack1 Sep 21, 2024
7a2e0d9
Updated changelog
matjack1 Nov 2, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
31 changes: 31 additions & 0 deletions .github/workflows/platformio-build.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Platformio build

on: push

jobs:
build:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Set up Python 3.10
uses: actions/setup-python@v2
with:
python-version: "3.10"
- name: Install Platformio
run: |
python -m pip install --upgrade pip
pip install platformio
if [ -f requirements.txt ]; then pip install -r requirements.txt; fi
- name: Run Platformio builds
run: |
platformio run -e generic -e debug
- name: Export bins
uses: actions/upload-artifact@v2
with:
name: bins
path: |
bin/generic.bin
bin/forV2Board.bin
bin/debug.bin
32 changes: 32 additions & 0 deletions .github/workflows/tools-build-lin.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Tools build for Linux

on: push

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: '16'
- name: Install pkg
run: npm i -g pkg
- name: Generate webfilesbuilder binaries
run: |
cd tools/webfilesbuilder
npm install
pkg -t node16-linux -C GZip .
- name: Generate wsemulator binaries
run: |
cd tools/wsemulator
npm install
pkg -t node16-linux -C GZip .

- name: Export Linux binary
uses: actions/upload-artifact@v2
with:
name: bins
path: |
tools/webfilesbuilder/webfilesbuilder
tools/wsemulator/wsemulator
32 changes: 32 additions & 0 deletions .github/workflows/tools-build-mac.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Tools build for Mac

on: push

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: '16'
- name: Install pkg
run: npm i -g pkg
- name: Generate webfilesbuilder binaries
run: |
cd tools/webfilesbuilder
npm install
pkg -t node16-mac -C GZip .
- name: Generate wsemulator binaries
run: |
cd tools/wsemulator
npm install
pkg -t node16-mac -C GZip .

- name: Export Mac binary
uses: actions/upload-artifact@v2
with:
name: bins
path: |
tools/webfilesbuilder/webfilesbuilder
tools/wsemulator/wsemulator
32 changes: 32 additions & 0 deletions .github/workflows/tools-build-win.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
name: Tools build for Windows

on: push

jobs:
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: actions/setup-node@v2
with:
node-version: '16'
- name: Install pkg
run: npm i -g pkg
- name: Generate webfilesbuilder binaries
run: |
cd tools/webfilesbuilder
npm install
pkg -t node16-win -C GZip .
- name: Generate wsemulator binaries
run: |
cd tools/wsemulator
npm install
pkg -t node16-win -C GZip .

- name: Export Windows binary
uses: actions/upload-artifact@v2
with:
name: bins
path: |
tools/webfilesbuilder/webfilesbuilder.exe
tools/wsemulator/wsemulator.exe
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@
.piolibdeps
.clang_complete
.gcc-flags.json
.pio

# esp-rfid
src/websrc/css/required.css
Expand Down Expand Up @@ -85,3 +86,4 @@ typings/
.vscode/c_cpp_properties.json
.vscode/launch.json
.vscode/*
.DS_Store
21 changes: 0 additions & 21 deletions .travis.yml

This file was deleted.

100 changes: 91 additions & 9 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,88 @@
# Change Log
All notable changes to this project will be documented in this file.

## [2.0.0] - 2023-11-14

#### Breaking changes
- [firmware] Removed build flag for `OFFICIALBOARD` #533 @matjack1
- [firmware] MQTT endpoints have been changed to be more consistent and complete #501 @matjack1

#### Added
- [firmware] Moved to native Arduino support for timezone and NTP to support daylight saving time #604 @matjack1
- [firmware] Added door name, to send via MQTT access type and door name for setups with multiple doors #598 @matjack1
- [firmware] Added more options for Wiegand readers on which bits to read #582 @matjack1
- [firmware] Added support for MQTT auto-topic with topic postfixed with 6 characters from MAC address #566 @matjack1
- [firmware] Added support to read/write configuration via MQTT #565 @matjack1
- [firmware] Added valid-since date for user validity #562 @matjack1
- [firmware] Added support for pincode only option to open door #551 @matjack1
- [webui] Improved support for websocket reconnection #502 @matjack1
- [firmware] Added opening hours with an hourly granularity #499 @matjack1
- [firmware] Added LED to signal that we are waiting for pincode and beeper support #490 @matjack1
- beeper for valid, denied or admin access
- [firmware] Added different pincode for each user after a card swipe #477 @matjack1
- [firmware] Improvements in MQTT including AutoDiscovery for the Home Assistant #449 #559 @xyzroe
- [firmware] Added anti-tamper support #449 @xyzroe
- [firmware] Added pin to give users feedback when access denied #426 @matjack1
- [firmware] Added ability to delete a single user over MQTT via UID #424 @baden02
- [docs] improved MQTT documentation #416 #423 @matjack1 @baden03
- [firmware] added doorbell support #415 @matjack1
- [firmware] improved decoding of Wiegand keypresses #360 @christofkac
- [firmware] added support for multiple relays #318 @frenchie71
- [firmware] optional BSSID for wifi connections #307 @frenchie71
- [firmware] Initial support for Wiegand Keypads @frenchie71
- [firmware] Initial support for OTP (TOTP) @frenchie71
- [webui] Added Download function for log files @frenchie71
- [webui] Log file options on WebUI @frenchie71
- [firmware] Log Maintenance Split, Rollover, View, Delete @frenchie7
- [firmware] Added button to open door and door status pin @nardev

#### Changed
- [firmware] Changed timezone support to add daylight saving management #604 @matjack1
- [firmware] Refactor WiFi connection #495 #497 #536 @matjack1
- Option to disable access point mode for production usage
- Automatic retries when connection drops
- [firmware] Refactor configuration #485 @matjack1
- [firmware] Upgrade to ArduinoJSON v6 #483 @matjack1
- [tools] Added Github Actions instead of Travis CI for building esp-rfid and ancillary tools #478 #482 @matjack1
- [firmware] Improved MQTT support #475 #476 #484 #487 #488 @matjack1
- added queue for message processing to avoid watchdog timeout
- ACK message on processing, to enable throttling of incoming messages
- better reconnection on WiFi reconnections
- [firmware] Refactor RFID reading #471 #491 #496 @matjack1
- separate reading card, reading pincode, processing
- better support for external feedback, LEDs, beeper
- [tools] updated Gulp scripts for building web UI #414 #473 @matjack1
- [firmware] improved wifi handling #374 #375 @ingeninge
- [firmware] Wi-Fi connection routine is now improved @frenchie71
- [firmware] Log file operations are now more robust @frenchie71

## [1.3.3] Test-Release 2019-06-22
#### Fixed
* PlatformIO **ISR not in IRAM!** Hotfix

## [1.3.1] Test-Release 2019-06-21
#### Added
- [firmware] Support for Door Status tracking with log and mqtt options @nardev
- [firmware] adding mqtt_publish_info, generateUid functions @nardev
- [firmware] MQTT functionality is greatly improved thanks to @marelab

Reading all user data over MQTT
Sending User data to RFID-DOOR/ESP-RFID over MQTT
Sending door open command over MQTT
Sending door status over MQTT as event
Sending Sync of a RFID-DOOR (IP/Hostname) over MQTT
Configure Sync interval over ESP-RFID GUI
Deleting all User of a ESP-RFID device over MQTT
Sending log event & access data over MQTT

#### Changed
- [firmware] Renaming some variable names @nardev
- [firmware] order of settings in web and hr lines @nardev

#### Fixed
- [webui] Make possible to connect WebUI behind NAT-ed network @Pako2 @abdulhanananwari
- [firmware] Issue #240 "Backup User Data only returns some users" @nardev

## [1.0.2] 2019-01-28

### BREAKING CHANGES (These changes will break your data on device, please make sure made a backup, also you can not use your old settings on this release but only can restore user data)
Expand All @@ -13,7 +95,7 @@ All notable changes to this project will be documented in this file.
- [firmware] #189 Flash layout changed to 2MB Firmware / 2MB SPIFFS Data @Pako2
- [firmware] Support for RDM6300 RFID readers (125kHz, UART) #163 @arduino12 / concurrently by @Pako2
- [firmware] debug firmware for debugging purposes
- [tools] executables for tools (no longer need to have node js and gulp for web ui development - **only lightly tested**)
- [tools] executables for tools (no longer need to have node js and gulp for web ui development - **only lightly tested**)
- [firmware] LED_BUILTIN lights up while wifi connected and flashes when it waits for wifi @Pako2
- [webui] IP address choice option in AP mode @Pako2
- [webui] favicon.ico @Pako2
Expand All @@ -26,14 +108,14 @@ All notable changes to this project will be documented in this file.
- [firmware] avoid double Serial.begin @Pako2
- [firmware] removing redundant terminating null character @Pako2
- [firmware] fix the loadconfiguration loop @Pako2
- [firmware] not able to connect MQTT server #157 @fivosg
- [firmware] a MQTT message typo #157 @wamboin23
- [webui] some breaks on web pages
- [firmware] not able to connect MQTT server #157 @fivosg
- [firmware] a MQTT message typo #157 @wamboin23
- [webui] some breaks on web pages
- [webui] usage of !important CSS rule
- [firmware] #191 relay type inversion @Pako2
- [firmware] #190 Increase PN532::WaitReady debug level @Pako2
- [firmware] validuntil is being ignored #151
- [firmware] the boot loop when ssid is empty on configuration file (actually more a workaround than a fix) #154
- [firmware] the boot loop when ssid is empty on configuration file (actually more a workaround than a fix) #154

#### Changed
- [firmware] unify output format debug print of PICC @Pako2
Expand All @@ -57,22 +139,22 @@ All notable changes to this project will be documented in this file.

#### Changed
- [firmware] do not initialize serial output unless we are debugging
- [build] slice main.cpp to multiple parts for better readability
- [build] slice main.cpp to multiple parts for better readability
- [webui] Access Type Active to Always
- [firmware] more reliable activation of relay

## [0.8.0]
#### Breaking Changes
- [firmware] Flash partition is changed to 1+3 !!! You need to backup your settings and users before updating to this version
- [firmware] For wiegand readers card id's changed hexadecimal to decimal !!! You need to change hexadecimal values to decimal values on your user backup file
- [firmware] For wiegand readers card id's changed hexadecimal to decimal !!! You need to change hexadecimal values to decimal values on your user backup file

#### Added
- [build] Optimize code for official board
- [build] Optimize code for official board
- [firmware] mqtt boot, hearthbeat, access message added

#### Fixed
- [firmware] #128 Do not retain MQTT publishes
- [firmware] Compiller warnings fixed
- [firmware] Compiller warnings fixed

#### Changed
- [webui] Default wifi type to AP
Expand Down
52 changes: 52 additions & 0 deletions CONTRIBUTING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
# How to contributo to esp-rfid

If you want to contribute, first of all, thank you very much!

## If you want to contribute some code

### Bug fix

In case of a bug fix you can open a PR on the `stable` branch.


### New feature

For new features please open a PR on the `dev` branch which will be merged on `stable` when a new release will be launched.

Remember to add documentation in the main readme and in the changelog. If MQTT is affected, please also update the README-MQTT.md file.

When touching the configuration file, you should make sure that the old file will be supported by the new version and that your feature should work also with the old config file format.

### Frontend

You cannot simply edit Web UI files because you will need to convert them to C arrays, which can be done automatically by a gulp script that can be found in tools directory or you can use compiled executables at the same directory as well (for Windows PCs only).

If you want to edit esp-rfid's Web UI you will need (unless using compiled executables):
* NodeJS
* npm (comes with NodeJS installer)
* Gulp (can be installed with npm)

Gulp script also minifies HTML and JS files and compresses (gzip) them.

To minify and compress the frontend, enter the folder ```tools/webfilesbuilder``` and:
* Run ```npm install``` to install dependencies
* Run ```npm start``` to compress the web UI to make it ready for the ESP

In order to test your changes without flashing the firmware you can launch websocket emulator which is included in tools directory.
* You will need to Node JS for websocket emulator.
* Run ```npm install``` to install dependencies
* Run emulator ```node wserver.js```

There are two alternative ways to test the UI
1. you can launch your browser with CORS disabled:
```chrome.exe --args --disable-web-security -–allow-file-access-from-files --user-data-dir="C:\Users\USERNAME"```
and then open the HTML files directly (Get more information [here](https://stackoverflow.com/questions/3102819/disable-same-origin-policy-in-chrome))
2. alternatively, you can launch a web server from the ```src/websrc``` folder, for example with Python, like this:
```python3 -m http.server```
and then visit ```http://0.0.0.0:8000/```

When testing locally, use the password ```neo``` for admin capabilities.

## TODO

Explain more ways to help that are not code-related
17 changes: 17 additions & 0 deletions DEBUGGING.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Debugging

When the ESP crashes and it's connected to the serial port in debug mode, you can get its stacktrace.

But then you need to decode it to see what's going on. To do that you need to:

- install https://github.com/janLo/EspArduinoExceptionDecoder/

- save the stacktrace in a file, e.g. debug.txt

- run `python3 ~/.platformio/packages/toolchain-xtensa/decoder.py -e .pio/build/debug/firmware.elf debug.txt -s`

References:
- https://github.com/esp8266/Arduino/blob/master/doc/faq/a02-my-esp-crashes.rst
- https://arduino-esp8266.readthedocs.io/en/latest/exception_causes.html
- https://arduino-esp8266.readthedocs.io/en/latest/Troubleshooting/stack_dump.html

Loading
Loading