commita4632bb7ad
Author: A.M. Rowsell <amrowsell@frozenelectronics.ca> Date: Mon Jan 21 20:13:12 2019 -0500 Sanitizing key and wifi Signed-off-by: A.M. Rowsell <amrowsell@frozenelectronics.ca> commit5e3be0f561
Author: A.M. Rowsell <amrowsell@frozenelectronics.ca> Date: Mon Jan 21 19:53:42 2019 -0500 It's alive! New code all working. The OneWire library works. It's a bit hacked together, as neither the software timer or hardware timer APIs would have worked well, because they are implemented terribly by Espressif. The easiest way to get around this was to just use system_get_time() and work off of that for timing in one-wire comms. Split the publish function into two separate functions: one to publish floating point numbers, and one to publish integers. In a language like Lua or C++ you could have these as one function, but in C it's easier to just split them. The main.c has a new function called dataLog that deals with getting the DS18B20 data and then handing that off to pubfloat(). I updated the timer names to be more descriptive. I grabbed some code to convert integers and floats to strings, as I can't be bothered to write that code myself for the millionth time. If something goes wrong and we are disconnected from our TCP connection, all timers are halted so we don't blindly keep trying to send packets over a non-existent link. Unfortunately the onewire library is hardcoded to use pin 5. That will be the next update. Signed-off-by: A.M. Rowsell <amrowsell@frozenelectronics.ca> commit48702bf328
Author: A.M. Rowsell <amrowsell@frozenelectronics.ca> Date: Sun Jan 20 21:13:04 2019 -0500 First version that compiles with new file layout. Had to make many changes to get it to compile across many files, including removing the LOCAL specifier from almost all functions. Edited the Makefile to compile all three files and link them. Haven't tested on hardware yet, that's the next step. Lots of small changes to avoid warnings, now that I have turned -Wall on. This makes the code a bit "better". Signed-off-by: A.M. Rowsell <amrowsell@frozenelectronics.ca> commit1cd8191682
Author: A.M. Rowsell <amrowsell@frozenelectronics.ca> Date: Sat Jan 19 15:25:44 2019 -0500 New branch for my new AIO key. Will have to remember to sanitize before committing to master. Signed-off-by: A.M. Rowsell <amrowsell@frozenelectronics.ca> Signed-off-by: A.M. Rowsell <amrowsell@frozenelectronics.ca>
32 lines
1.2 KiB
Python
Executable file
32 lines
1.2 KiB
Python
Executable file
#!/usr/bin/env python3
|
|
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
#!/usr/bin/python3
|
|
##
|
|
# @file
|
|
# @brief File to create string arrays
|
|
#
|
|
# This file is included to assist the developer using the API in creating the arrays for the username, password, topic name, and client ID strings. It prints both the array itself as well as a variable with the length of the string. These can then be passed to os_memcpy() to copy the information into the mqtt_session_t.
|
|
|
|
###############################################
|
|
# First argument is the value to be encoded, #
|
|
# second argument is the name of the variable #
|
|
# to be used. #
|
|
###############################################
|
|
|
|
import sys
|
|
import os
|
|
|
|
inString = str(sys.argv[1]);
|
|
|
|
print("static const char {0}[{1}] = {{ ".format(sys.argv[2], len(inString)), end='')
|
|
for letter in inString[:-1]:
|
|
p = ord(letter)
|
|
print("{0:#x}, ".format(p), end='')
|
|
|
|
p = ord(inString[-1])
|
|
print("{0:#x} ".format(int(p)), end='')
|
|
print("}; // " + inString)
|
|
print("static const uint8_t {0}_len = {1};".format(sys.argv[2], len(inString)))
|