the story behind pi3g
Back in 2012 the story of Maximilian and the Raspberry Pi started. He was excited when he got his first Pi and also saw the great potential for further development in it.
Then PiCockpit was born to make using and managing the Pi easier and more accessible for everyone.
Maximilian has always been interested in computers and believed that they are a lever to improve everything in the world - for example in medicine.
Over the years, Maximilian's work has grown and new fields of expertise have emerged...
working at pi3g
In our blog you can expect blog posts about technology and business topics, of course about the Raspberry Pi, but also a wide variety of topics related to Industrie 4.0, IoT, and machine learning - for example about the popular MQTT protocol, Python and Linux embedded development, and much more. Blog entries are not scheduled and not in particular order - the topics are an eclectic mix of what comes up in real life of a company engaged in machine learning & Raspberry Pi embedded adventures.
We are happy to write about special topics that are not so well-documented elsewhere.
If you have any suggestions, we are happy to discuss current topics with you and are always ready to brainstorm workable solutions with you.
envoy serving a static response
Besides routing and redirecting you can serve static responses with Envoy.In this case I want to serve a forbidden response (403)route_config: virtual_hosts: – name: picockpit domains: [“picockpit.local:443”, “picockpit.local”] routes: – match: { prefix: “/demo” } direct_response: status: 403 body: inline_string: “Forbidden.” – match: {prefix: “/”} route: {cluster: target_picockpit}It can also serve up files from…
read morePython Paho MQTT client self-signed certificates websockets, howto
Using Paho in Python with websockets and self-signed certificates for a https:// websocket connection has a couple of pitfalls, so I’m addressing this with some sample code here: import ssl import time import paho.mqtt.client as mqtt class PCPMQTTClient: def on_connect(self, client, userdata, flags, rc): self.connection_status = rc if rc == 0: self.connected_flag = True self.connection_error_flag…
read moreVerneMQ Docker overwrites my configuration
Situation You edit vernemq.conf, only to find that your configuration is overwritten by VerneMQ on the next start (using the official Docker container). Specifically, the section with the listeners at the end of the file is “forced upon you”. Solution VerneMQ is started using a script (start_vernemq). The script can be seen here: https://github.com/vernemq/docker-vernemq/blob/master/bin/vernemq.sh The…
read moreenvoy not connecting to VerneMQ for MQTT over websockets, error code 503
Some quick background information for anyone running into the same issues, and how to debug them. Error code 503 This is the error code I am getting: Error during WebSocket handshake: Unexpected response code: 503. Set envoy logging to debug Here’s my docker-compose.yaml for envoy: version: ‘3.7’ services: envoy: build: context: ./ dockerfile: Dockerfile container_name:…
read more