2024-08-31 23:18:46 +02:00
2024-09-01 10:54:48 +02:00
2024-09-01 15:22:37 +02:00
2024-08-27 15:39:57 +02:00
2024-08-27 00:38:12 +02:00

## Serial Interface

  Instead of polling for input we use an interrupt vector
  to write data to a rx ring buffer when it's available.

  We parse commands using a state machine so we can deal
  with small chunks of characters at a time and spit out
  the parsed command when the transmission has finished.

  NOTE: System clock frequency should be a multiple of
  1.8432MHz for perfect USART. This means we would need
  an external crystal oscillator.

### Supported Commands

  - RUN
  - STOP
  - TEMP <num>
  - DEWP <num>

  Decimal point for numbers is currently not supported.
  Make sure you have disabled hardware flow control on
  the client side.

### Web Interface Example

  There is an example https and websocket server (written
  in Python) which serves a simple Javascript shell that
  controls your box. Its main purpose is to give you a
  demonstration on how you can write a custom bridge or
  interface.

  Check out the directory "/opt/webgui" under the project
  root. You may need to run the following command to load
  optional submodules if you can't see the webgui folder:

    $ git submodule update --init

  First you need to generate a self signed certificate to
  ensure SSL encryption. Run the following command in the
  webgui root directory:

    $ ./configure

  To manually start the server you can use the Makefile
  (but it's recommended to run the server automatically
  as a daemon when the host machine starts):

    $ make run
Description
Prototype that monitors and controls environmental parameters for automated drying.
Readme 30 MiB
Languages
C 91.3%
Makefile 8.7%