blog

Categories     Timeline     RSS

Furlbachtal und Furlbachpfad

The Iron

I’ve added “The Iron” by Henry Rollins to archive.

Reverse geolocation lookup

Ich habe mal den Quellcode für Reverse Geolocation Lookup per Nominatim, den ich für Freifunk-Knoten genutzt habe, von dem Rest getrennt und unter https://git.fireandbrimst.one/aw/ReverseGeoLookup gepackt.

Ulanzi TC001 Hello World

Compatible board in Arduino: NodeMCU-32S

Pinout

Pin (GPIO) Function
14 Button 3
15 Buzzer
21 I2C SDA
22 I2C SCL
26 Button 1
27 Button 2
32 WS2812 Pin 1
34 ADC In (Battery)
35 ADC Illuminance

8x32 LEDs

The rows are connected with alternating base indices (i.e. row 0 starts at 0 and ends at 31, row 1 starts 63 and ends at 32) - in serpentine fashion, if you like.

Hello World

Shifting one red pixel through the LED matrix.

You need the NeoPixelBus library by Makuna (installable inside the Arduino IDE).

#include <NeoPixelBus.h>

#define ROWS 8
#define COLS 32
#define NUM_PIXELS (ROWS*COLS)
#define WS2812_PIN 32

NeoPixelBus<NeoGrbFeature, NeoWs2812xMethod> ulanzi(NUM_PIXELS, WS2812_PIN);
RgbColor red(255,0,0);
RgbColor black(0,0,0);

void setup() {  
  ulanzi.Begin();
  pinMode(15, OUTPUT);
  digitalWrite(15, 0);
}

void loop() {
  int i = 255;
  while (true) {
    ulanzi.SetPixelColor(i, black);
    ulanzi.SetPixelColor((i+1)%256, red);
    ulanzi.Show();
    i++;
    i = i % 256;
  }
}

Bridging to a SIM800L with a Raspberry Pico

Send GSM-AT commands from a computer via serial console > Raspberry Pi Pico > SIM800L in order to phone home.

Pins

SIM800L Raspberry Pi Pico
RX UART1_TX / GP8 / Pin 11
TX UART1_RX / GP9 / Pin 12
GND GND / Pin 38
VCC VBUS

Caution: Voltage is a little above spec this way, but it suffices for tests.

Bridge

#define S2_TX 8
#define S2_RX 9

UART Serial2(S2_TX,S2_RX,0,0);

void setup() {
  Serial.begin(9600);
  Serial2.begin(9600);
}

void loop() {
  while (Serial2.available() > 0) {
    Serial.print(Serial2.readString());
    delay(10);
  }
  while (Serial.available() > 0) {
    Serial2.print(Serial.readString());
    delay(10);
  }
}

Then open a serial console (e.g. inside the Arduino IDE)

Typical interaction

Command Meaning
ATI Get info about the SIM800L board, make sure it’s connected
AT+CSQ Check signal quality, answer: +CSQ: FLOATVAL, everything above 10,0 is OK
AT+COPS? Check net login (e.g. D1)
ATD+49123456789; Call +49 1234 56789 (mind the semicolon)
ATH Hang up

< Older

Newer >