Go to phpmyadmin click table and go to SQL query paste this below and go


STM32 (Bluepill) with i2c bme280

Sample code stm32duino upload via stlink

#include <Wire.h>
#include <SPI.h>
#include <Adafruit_Sensor.h>
#include <Adafruit_BME280.h>

Adafruit_BME280 bme;

void setup() 
    bme.begin(0x76); //i2c address must declare,or try i2c scanner first
void loop() 
    Serial.print("Temperat: ");   
    Serial.print("Humidity: ");
    Serial.print("Pressure: ");     

Rumus menghitung panjang antenna LoRa 923 Mhz untuk monopole antenna

Detailnya silahkan lihat video diatas

Dan untuk diindonesia karena menggunakan Freq 920-923 kira kira panjang antena yang digunakan adalah sekitar 7,79 – 7,81 cm

Happy Coding

Salam Ngoprek

5$ DIY radiation shield

I made some fun project for weather monitoring for measuring temperature, humidity, pressure using BME 680, lora modul and my first sensor like this

And after a couple days i realize the sensor measuring temperature is too high maybe because sensor measuring inside the box, after googling and looking other solution and my idea is making radiation shield and i end up with DIY radiation shield using some cheap plastic plates.

I bought 2$ for 8 plastic plates but i only use 6 because my sensor is small, and i also buy some spacer for mounting the plates its 2$ for 20 spacer i’m using 1 inches spacer, and 1$ for other material like cable ties and also spray paint

And this is it my cheap radiation shield 🙂 and i’m happy for the result

Happy Coding

Salam ngoprek

Internet speed monitoring using grafana and telegraf in docker

Clone project here

Edited for running on raspberry pi

Happy codding

Salam ngoprek

Multiple output function in node-red

This is sample flow for multiple output in one function in node-red

[{"id":"5f08a336.d9c24c","type":"function","z":"2aaa7997.d6ad76","name":"","func":"raw = msg.payload.object;\n\nvar msg1 = { payload:raw.analogInput[1]};\nvar msg2 = { payload:raw.analogInput[2]};\nvar msg3 = { payload:raw.analogOutput[3]};\nvar msg4 = { payload:raw.temperatureSensor[3]};\nvar msg5 = { payload:raw.humiditySensor[4]};\nvar msg6 = { payload:raw.barometer[5]};\n\n\nreturn [ msg1, msg2, msg3, msg4, msg5, msg6 ];\n\n// msg.payload ={\n//     battery : raw[1],\n//     solar:raw[2]\n// }\n// return msg;","outputs":6,"noerr":0,"initialize":"","finalize":"","x":520,"y":660,"wires":[["719a5264.f5757c"],["1d8c7f1.9f75281"],["e4b2ebe4.6b0728"],["418e174c.6f7258"],["46ea126c.0ec36c"],["703fee7.477581"]]}]