Rodemfr / MicroNav

A Micronet / NMEA bridge for TTGO T-Beam boards
GNU General Public License v3.0
5 stars 3 forks source link

Time/Date not displayed #13

Closed ivicajan closed 8 months ago

ivicajan commented 8 months ago

First of all thanks for the great project !

I am using it on my T-BEAM v1.1 with the Ublox 6M (older board) and non-standard OLED (SH_110X). It is working OK. Haven't tested Micornet 915MHz net yet, but will soon when I get my hands on RayMarine instruments.

The problem I have is with missing data on the display for the page (Date/clock). Data seems valid (I got LON, LAT, time) as I can see them on the serial monitor (see attachment) that GGA is giving. Is there a way to test/debug decoded GGA/RMC buffers and/or the prev and navData.time.valid state?

Thanks in advance and keep on with the great project!

Cheers, Ivica serial_MN display_MN

Rodemfr commented 8 months ago

Thanks for the feedback, I will have a look this week-end

Rodemfr commented 8 months ago

I tested the configuration on my side and it is working properly. Can you give a little bit more information :

ivicajan commented 8 months ago

Strange, I haven't changed anything related to the SX12xx or Ublox NEO xM, so my BoardConfig.h is the same. Shouldn't that NEO 8/6M be the same driver? In other words, where/what should I change if I have 6M instead of 8M? When grep for GNSS in the repo I couldn't find NEO-6M specific definition: grep GNSS /.cpp Config/Configuration.cpp: eeprom.gnssSource = LINK_NMEA_GNSS; GNSS/UbloxDriver.cpp: Purpose: Driver for UBlox GNSS GNSS/UbloxDriver.cpp:const PROGMEM uint8_t UbloxDriver::GNSSSetup[] = {0xB5, 0x62, 0x06, 0x3E, 0x3C, 0x00, 0x00, 0x00, 0x20, 0x07, 0x00, 0x08, 0x10, 0x00, 0x01, 0x00, 0x01, GNSS/UbloxDriver.cpp:#define GNSS_SERIAL_BUFFER_SIZE 512 GNSS/UbloxDriver.cpp:uint8_t gnss_serial_rx_buffer[GNSS_SERIAL_BUFFER_SIZE]; GNSS/UbloxDriver.cpp: GNSS_SERIAL.write(byteread); GNSS/UbloxDriver.cpp: GNSS_SERIAL.println(pubxMsg); GNSS/UbloxDriver.cpp: GNSS_SERIAL.begin(38400); GNSS/UbloxDriver.cpp: GNSS_SERIAL.println(""); GNSS/UbloxDriver.cpp: GPS_SendConfig(GNSSSetup, 68); GNSS/UbloxDriver.cpp: GNSS_SERIAL.println(""); GNSS/UbloxDriver.cpp: GNSS_SERIAL.write(0xFF); GNSS/UbloxDriver.cpp: GNSS_SERIAL.write(SleepMode, sizeof(SleepMode)); NMEA/NmeaBridge.cpp: case LINK_NMEA_GNSS: (base) ivica@omen:~/GIT/MicroNav/src$ grep GNSS *.cpp Globals.cpp:UbloxDriver gM8nDriver; // GNSS Driver Main.cpp: // Init GNSS NMEA serial link Main.cpp: GNSS_SERIAL.begin(GNSS_BAUDRATE, SERIAL_8N1, GNSS_RX_PIN, GNSS_TX_PIN); Main.cpp:#if (GNSS_UBLOXM8N == 1) Main.cpp: CONSOLE.println("Configuring UBlox GNSS"); Main.cpp: // Transmit any incoming data from GNSS link to DataBridge for decoding Main.cpp: while (GNSS_SERIAL.available() > 0) Main.cpp: gDataBridge.PushNmeaChar(GNSS_SERIAL.read(), LINK_NMEA_GNSS);

and looking into .h files: rep GNSS /.h Config/Configuration.h: LINK_NMEA_GNSS, GNSS/UbloxDriver.h: Purpose: Driver for UBlox GNSS GNSS/UbloxDriver.h: static const PROGMEM uint8_t GNSSSetup[]; (base) ivica@omen:~/GIT/MicroNav/src$ grep GNSS .h BoardConfig.h:// NMEA GNSS UART pins BoardConfig.h:#define GNSS_UBLOXM8N 1 // Set to one if your GNSS is a UBLOX M8N/M6N, 0 else. BoardConfig.h:#define GNSS_SERIAL Serial2 BoardConfig.h:#define GNSS_BAUDRATE 9600 BoardConfig.h:#define GNSS_RX_PIN 34 BoardConfig.h:#define GNSS_TX_PIN 12 Globals.h:#endif / GNSSDECODERH /

What is strange is that when I connect via BT serial monitor I can see the stream of GGA. I am using display SH_110X instead of SSD1306 and have changed all to reflect that. The display works well for all menus etc...

Have ordered 2 new displays, hope they will be standard SSD1306 so will try in a few days again.

Cheers, Ivica

ivicajan commented 8 months ago

On the another topic, seems my t-beam is quite old T22 v1.1 20210222 and according to online docs it is based on sx1262 Would it work with tour drivers? During the init phase it didn't complain, said it found sx1276

I have wind t120 and testing with it but no luck, no network nearby...

thanks for your help

ivicajan commented 8 months ago

After digging more (Google), I think that my board -> T22 V1.1 20210222 is SX1272 chip-based at the end. It has only "TTGO 868/915MHz Modle: LORA 32" sticker and according to Google should be SX1272 onit. Other models with stickers on lora chip have at the bottom SX1262 even though they are V1.1 (the same version).

During the init/boot phase, I got: rst:0x1 (POWERON_RESET),boot:0x13 (SPI_FAST_FLASH_BOOT) configsip: 0, SPIWP:0xee clk_drv:0x00,q_drv:0x00,d_drv:0x00,cs0_drv:0x00,hd_drv:0x00,wp_drv:0x00 mode:DIO, clock div:2 load:0x3fff0030,len:1184 load:0x40078000,len:13232 load:0x40080400,len:3028 entry 0x400805e4 MicroNav v0.2.6 Configuring UBlox GNSS Initializing SX1276 ... OK Initializing navigation compass ... NOT DETECTED Initializing display ... Found

MicroNav

0 - Print this menu 1 - Start NMEA conversion 2 - Debug 1 3 - Debug 2

Choice : Starting MicroNav...

Is there a way to get Serial console debug outputs? Seems I can't get any options 0, 1, 2, 3 (and they are not coded 2,3)?

Still no date/time on the first page even it is getting GPS data (can see them via bluetooth)

Then on the config General page: Frequency 915MHz ... Not sure what is RMB Bugfix option used for?

It can't find any network even though I have wind instrument T120 working. Is only T120 wind instrument enough to be connected to the TTGO MicroNet?

Cheers, Ivica

ivicajan commented 8 months ago

After updating FloatDataPage.cpp and Main.cpp as in MicroNav not working on rev. 1.2 of TTGO T-Beam #10 using frgaude's change Display for Date and Time works well.