Skip to content
Snippets Groups Projects
Select Git revision
  • webserver
  • master default
  • patch-1
  • ES-GUI-WORK
  • ES-gui-work
  • GUI
  • dependabot/npm_and_yarn/minimist-1.2.6
  • web-components
  • ventosAPI
  • respiraworks_integration
  • web_components
  • v0.3T
12 results

app.py

Blame
  • user avatar
    Ben Coombs authored
    vent control panel is added using jQuery. Succesfully sends request/response to Arduino via Flask server
    707e36dd
    History
    app.py 989 B
    from flask import Flask, render_template, request, send_from_directory, jsonify
    import serial;
    import time;
    
    app = Flask(__name__)
    
    def serial_conn():
        ser = serial.Serial('COM4', 112500, timeout=1)
        print(ser.name)
        ser.flushInput()
        ser.write(b'A')
        time.sleep(0.1)
        #need to wait and read the bytes back properly
        ser_bytes = ser.readline()
        print(ser_bytes)
        #s = ser_bytes.decode('utf-8')
        s = "".join(map(chr, ser_bytes))
        print(s)
        return s
           
    
    @app.route('/')
    def render():
        if 'rr' in request.args:
            a = request.args.get('rr')
            print("rr: " + a)
    
            b = serial_conn()
            resp = jsonify(success=b)
            resp.status_code = 200
            return resp
        else:
            return "Invalid args", 400
    
    
    @app.after_request
    def add_header(response):
        response.headers['Access-Control-Allow-Origin'] = '*'
        return response
    
    if __name__=='__main__':
        app.run(debug=True)