Node Spot Heating
Node for paying for spot heating. It is a variation on the payment terminals used for coffee and beer.
See SpaceTegoed voor een overzicht/plan, Payment and Paring REST protocol for the protocol and [github for code].
Inhoud
What does it do
Swipe ones to get 15 minutes of heating. Swipe twice for 30 minutes; and so on. The display will show 15:00, 30:00 and so on. And then change every second to 14:59, 14:58 and so on.
Once you've swiped - the display changes from the price to a countdown.
During this time the heating is on. Once it reaches 00:00 - the heating switches off.
Trouble shooting
It is possible to 'telnet' into these units (on the normal telnet port #23) and see what normally would come out of the serial port. The units also sent their logging to syslog (to the spaceserver, 192.168.6.1).
Check the firewall, use a [MDNS] [resolver] (or simply the Arduino IDE) to discover their IP address. You can do this from the RaspPi next to the VinylCutter / Vinylsnijder.
MAC | Versie | Mac address | IP address |
---|---|---|---|
NodeSpotHeating | 1.65 | ???? | 192.168.6.??? |
Version deployed as of September 2022: https://github.com/dirkx/makerspaceleiden-payment-node-7segments/releases/tag/v1.06
A typical session looks like:
$ telnet 10.13.0.241 23 4x7-F1-05-430fe4 Serial connected 3C:71:BF:43:0F:E4 Good scan Payment completed successfully. Wed Nov 3 19:02:11 Heap: 181 Kb
Any error message (post joining the Wifi network) will show up here. If the issue is prior to joining WiFi - you will have to connect a USB cable (Baudrate 115200, 8N1). The Raspi has the right drivers installed.
Furthermore - if you connect to space.makerspaceleiden.nl
via MQTT - then you can also see the output:
TOPIC: ac/log/tft-1.04-cbb67c NodeSpotHeating { "rfid_scans": 0, "rfid_misses": 0, "ota": true, "state": 3, "IP_address": "192.168.6.200", "Mac_address": "C8:C9:A3:CB:B6:7C", "Paid": 0, "Version": "1.04", "Firmware": "tft-1.04-cbb67c", "heap": 139667 }
Display messages
- During startup
F X-YY
- version number firmware during booting.CONN
- connecting to WiFiNTP
- getting the timeF CA
- Fetching the Certificate AuthorityF PL
- Fetching the price listFAIL
- failed to connect to WiFi; will reboot.any error message
- scrolling error message & after which either reboot or hang if it unrecoverable.
- At the end of startup (from this point onwards OTA is possible).
----
- fully started up; but have not yet gotten the pricelistno prices
- price list could not be fetched. Will retry for a few minutes every 15 seconds; then reboot.
- In normal payment mode
X.YY
- price to pay when you swipe[--]
- in the process of payingpaid
- you have paidMM:SS
-- a minute and second countdown. Once at zero - the heating switches off.FAIL
- payment failedany error message
- scrolling error message.FAIL -1
- netwerk/wifi error. Powercyle de unit.FAIL -4
- netwerk/wifi error. Powercyle de unit.FAIL 40X
Gebruik je een geldige tag ?FAIL 500
Error op de server; mail noc@.
- During Over the Air reprogramming.
PROG
- start of OTA updateF XX
- OTA; uploading new firmware; XX is the percentage fetchedDONE
- successful end of OTA. Unit will reboot.any error message
- scrolling error message & after which the device will switch back to the old/current firmware
- During initial pairing / post an OTA
REG
Registering with the serverPAIR
requesting to pair; swipe an admin tag.any error message
- scrolling error message.
Code is at https://github.com/MakerspaceLeiden/makerspaceleiden-payment-node-7segments.
Bill of materials
Materialen; duurste onderdelen eerst:
- ESP32: 7 euro - https://www.amazon.nl/AZDelivery-Development-opvolger-compatibel-Inclusief/dp/B074RG86SR/ref=sr_1_9
- PVC Doosje:
- 7 segment display: 2.50 euro - https://www.amazon.nl/Youmile-Display-Gemeenschappelijke-Digitale-Man-vrouw/dp/B082193P1V/ref=sr_1_33
- 1 RFID reader; ~2.50 Euro; (https://www.amazon.nl/gp/product/B074S9FZC5)
- AC/5V transformer: 1.00 euro - https://www.aliexpress.com/item/33012749903.html
- 1 relays - 5 Volt, voor 230 VAC / 2000 watt.
- 3 doorvoerwartel; 12mm: 0.35 euro (voorraad space, https://www.aliexpress.com/item/32866592761.html)
- netsnoer - weggooikast space
- draadjes - electronica hoek
- drie tie-wraps (voorraad space)
Totaal: < 20 euro; 4 uur printen; 30 minuten solderen/assemblage.
Compileren software
- Installeer een recente versie van [[1]].
- Installeer een stable versie van de SDK voor de ESP32 volgens https://docs.espressif.com/projects/arduino-esp32/en/latest/installing.html
- Selecteer in tools het platform ESP32 en dan het board dat je gebruikt (WRover, Devkit)
- Installeer via de 'Library' optie de bibliotheken MFRC522-spi-i2c-uart-async, TM1637TinyDisplay en Arduino_JSON
- Haal een git/zip versie op van https://github.com/MakerSpaceLeiden/makerspaceleiden-payment-node-7segments/
- Zet de #defines met de netwerk namen goed. Kies een unique terminal naam.
Overleg met noc@ voor een 'bearer token' voor toegang als je de productie versie maakt.- Idem voor het OTA wachtwoord.
- Compiler & flash via serial (daarna kan het via OTA).
- Nota bene: with the cheaper boards; it may be needed to press 'BOOT' during the start of the programming.
Versions build
Node Spot Heating
- Wifi-Mac address ends with
XXXX
Current software: https://github.com/dirkx/makerspaceleiden-payment-node-7segments/releases/tag/v1.06