Write me the Arduino code that does the following. I have a BN220 GPS that communicates via UART at a speed of 9600bps. The TX of the GPS is connected to Arduino pin 3 (RXD0 )and the RX of the GPS connected to Arduino pin 1(TXD0)of a wemos d1 mini esp 8266. To the wemos di mini esp8266 is a 0.96" oled connected to it over I2C. The SCL of the oled is connected to D1 (GPIO5) and the SDA of the oled is connected to D2(GPIO4) of the wemos d1 mini esp8266. I want to see the current satalites that the gps is locked to in the top left corner. in the middle the current gps speed should be displayed in big. The resolution of the oled is 128px x 64px
You have misunderstood the work of this forum. It's not a free give away toy shop.
The goal is to help members learn and grow in programming.
There is a section were You can pay an interested helper to make code. My price is 100 USD per hour....
I have moved your Topic to Project Guidance ....Please try not to post in Uncategorized again, If you are unsure about the categories refer to this guide or to the stickies for each category.
Thank You.
okay 100usd/h is fine how long do you need?
As it appears now that you want to pay someone to write your code I have again moved your topic to the appropriate forum category.
Dam 100, your cheap LOL
Is this a homework project ?
Looks like
LOL first stop ChatGPT, failing that the forums. SIgn of the times.
How does the answer is?
It does not, it is a bit of tongue in cheek humour.
thank you
#include <Wire.h>
#include <Adafruit_SSD1306.h>
#include <TinyGPS++.h>
#include <SoftwareSerial.h>
// Define your OLED display settings
#define SCREEN_WIDTH 128
#define SCREEN_HEIGHT 64
#define OLED_RESET -1
Adafruit_SSD1306 display(SCREEN_WIDTH, SCREEN_HEIGHT, &Wire, OLED_RESET);
// Define the GPS module
SoftwareSerial gpsSerial(3, 1); // RX (GPS) - D3, TX (GPS) - D1
TinyGPSPlus gps;
void setup() {
// Initialize the display
if(!display.begin(SSD1306_I2C_ADDRESS, SDA, SCL)) {
Serial.println(F("SSD1306 allocation failed"));
for(;;);
}
// Set up the GPS module
gpsSerial.begin(9600);
display.display(); // Display startup message
delay(2000);
display.clearDisplay();
}
void loop() {
while (gpsSerial.available() > 0) {
if (gps.encode(gpsSerial.read())) {
display.clearDisplay();
// Display the number of locked satellites
display.setTextSize(1);
display.setTextColor(SSD1306_WHITE);
display.setCursor(0, 0);
display.print("Satellites: ");
display.print(gps.satellites.value());
// Display GPS speed in the middle
display.setTextSize(2);
display.setCursor(0, SCREEN_HEIGHT / 2 - 8);
display.print(gps.speed.kmph());
display.print(" km/h");
display.display();
}
}
}
Thank you
This topic was automatically closed 180 days after the last reply. New replies are no longer allowed.