Reading GPS and Scan for Ble on Node-red

I have a project where i want a gps module connect to raspberry pi and read the lat long on node-red, also i want to do a ble scan and get the result on node-red also, the issue here is i cant read the gps data coming from the gps module using the serial node data like this"$1�j� �������b�1&Bb�r�b���,0601�|-,N*43", tried changing the buad rate but same and also i cant find a working node to scan for ble devices, i have tried every possible one i could find but all not working....

Thanks..

What about does your gps module has, is it Rs232 or ttl?
And how did you connected it to the raspberry, to the serial pins on the gpio header or with an usb to serial or ttl adapter?
It could be that the signal is inverted due making a wrong level connection.
Rs232 is inverted and ttl not.

I wrote back to you in Slack also ...

@Abdul Azeez @shrickus actually the GPS is producing NMEA 0183 protocol (https://en.wikipedia.org/wiki/NMEA_0183) and per the specs "All transmitted data are printable ASCII characters between 0x20 (space) to 0x7e (~)". The baud rate can change, but the string appears to have some bad corruption. They always start with "$", and the checksum at the end "*43" is in the right format.

In slack you indicated it is this unit? https://www.adafruit.com/product/746

How have you connected this to the Raspberry Pi?

The GPS module is an Adafruit Ultimate GPS which uses a TTL serial at 9600 baud, i have connect it to serial pin pf the gpio header, i connected the(gpio14)tx of the pi to tx of the gps and same with the rx(gpio15) i tried the reverse also that is tx of pi to rx of gsp and rx of pi to tx, this didnt show any character at all which means it was a wrong connection.

So GPIO 14 and 15 are physical pins 8 and 10 - just checking


And you have it set to 9600 baud 8 bits, 1 stop bit and no parity ? and split on \n line ends.
In theory that should work.
Though the default baud rate for a lot of NMEA devices is mostly 4800.