How to give AIS messages inside OpenCPN and display the course of the vessel on screen? - nmea

I am trying to provide Open CPN with !AIVDM and !AIVDO messages. I would like to also make use of the NMEA 2000 protocol if anyone has an idea how. I am doing this for a project and the information on internet is beyond scarce for this subject in terms of directions to take. I have access only to a Raspberry Pi.
I have tried searching on internet how to upload AIS messages inside OpenCPN but nothing showed up.

Related

Stream audio from place 1 to place 2 over the internet

So I'm kinda stuck here.
I have a radio station, but we are mobile. So I have a studio on wheels. The problem is, we have an antenna, but we always have to place that really close to our studio. Now I want to make an device that can stream the audio from the audio mixer to the internet and can be received by another device in another network and send that signal to the antenna (audio output).
to make this clear, I made a schema with raspberry pi's;
I want this to be plug and play So I only have to plug in the device in the modem (or network we have) on both sides and the devices should find each other.
I don't know HOW I can do this, so I need to know a couple of things:
What hardware should I use?
What software should I use?
What is the best configuration to accomplish this?
Can I use 2 raspberry pi's?
How can I let the devices find each other over the internet?
There need to be some features;
The system needs to be able to buffer the audio for 5-10 seconds
It needs to be direct, so it's live and not a file that needs to be played
The system must be failless (beside the fact the internet can die).
Plug and play is a must, I don't want to have a really messy configuration to do. (if possible, without any kind of portforwarding).
I would really appreciate help and a decent explaination.
regards,
Robin
Well, it depends on your capabilities as a programmer.
If you're really fixated on the RPi for it's convenient form factor, there's a ton of community support, so I'd start with something like this project to kick start you in the right direction. If you already know python pretty well, modify away and have fun.
If you have no programming experience, you'll probably want to put a desktop in place of the RPi and launch some instances of VLC. It's not necessarily plug n play, but you can get close enough by getting a command line VLC to launch at startup.
Either way, the more difficult problem here is the "over the internet" part. This would really need to be a server-client model, but who is your server depends on who is more stationary (I'm guessing Location 2?) because the client will need to know the IP address of the server somehow. There are dozens of ways to make this happen, but at the end of the day, you'll want to use sockets accomplish the
It needs to be direct, so it's live and not a file
... which unfortunately gets complicated. See this answer for confirmation. Would love to help with some tips on implementation, but we need more information about your willingness to "dig into the code", the necessity of the RPi, and whether the stationary location has a static web address.

How to broadcast the audio of a web page to an Icecast server?

I'd like to broadcast the audio provided by a web page which, in my case, contains YouTube videos synced with all the other people on this page at the same time.
I'd like to do that with a Debian 8 server without any graphical interface or sound card.
First, I thought I could manage that with Liquidsoap but I didn't find any way to deal with it.
I didn't find anyone trying to do the same thing as me while searching on Google.
Does anyone have an idea?
Thanks.

Trying to make an application that can communicate with other phones nearby

I have been tirelessly trying to decide on the best option for getting phones to talk to each other that are nearby, I need something with the ability to broadcast and receive. It is kind of like NFC with more range, I'd like to be able to send messages 30 to 50 feet away using nothing but a phone.
Bluetooth cannot broadcast and receive to more than 8 devices still, there might be changes to that in Apple's new OS but Android and Windows are still going to be lacking, so Bluetooth is out of the question.
I was thinking of maybe trying to use Wifi, but I have not found very many good resources on how I would go about doing that without making a virtual server, I'd much rather not go that route if possible.
I could even use GPS although with the power consumption of GPS and having to be an always on feature I am not certain I would like to use GPS if I can avoid it.
The one I really want to use, uses sounds made and received by the phone. I have been playing around with a listener that converts different frequencies to 1's and 0's, but with all things sound, it gets increasingly hard if lots of people are talking, or there is music playing, or if there are objects in the way, the Doppler effect and more. Is there someone out there who has already made a filter for this? Some other problems would be, what is the range sound travels at 20khz through air? I can also not find much good documentation anywhere for devices whose speakers can make sound above 20khz but it seems most can, the problem then is what microphones can hear sounds above 20khz.
I would really love to use sound as I think it is interesting, and it would make the app work without any internet or phone connection which I think is pretty cool. This is a side-project I am working on, and really don't want to spend hours down a path that will ultimately fail.
If anyone thinks it's possible to do this with sound over other devices, I'd much rather like to do it that way, I think there is a lot of interesting things you could do with that technology, I just don't know how viable it is over using wifi or bluetooth or even GPS.
At ios you have no controll to low level "things". You can read the current connected wlan ssid, but not all wlan ids which the operation system can see.
I would first try the location services approach. Settig to 1000m acuarcy will usually disable GPS, but enable cell-tower an wlan locationing.
Especially the wlan locationing gives an indirect hint that the persons are near the same wlan

Node.js and Arduino

I am new to arduino, however I have experience in web development, lately I have been using, meteor js and the mean stack for different projects. I am open to trying any language though.
What I am trying to do is build a simple application to control the led on the arduino over the web.
I am working with another person and the arduino will be behind a firewall so I am not sure how to access it via the internet. I do have access to a arduino yun that I can use for testing at home which does have linio connected via bridge, which I dont quite understand what that does.
Ive also heard of this, https://www.yaler.net/ but would like to stay away from third party builds as much as possible if I can do it myself.
Whats the common way to do this with a arduino behind a firewall. and how do i do this with a arduino yun, is it easier with a yun?
So this is kind of a vague question, because we don't know exactly what your setup is and what's up with your firewall. But I'll try to help you out.
What I am trying to do is build a simple application to control the
led on the arduino over the web.
So this means you will need a web server running on the Arduino with a REST http client perhaps. You can easily find a dozen ways to do this by googling Arduino and REST, but here is one way you might go about it. Honestly though, I really wouldn't want to set up a REST server without a library.
From there, you simply set up a REST endpoint that when called, turns on the LED.
Whats the common way to do this with an Arduino behind a firewall.
This isn't remotely constrained to Arduinos. All (?) servers are behind a firewall. You will need to talk with your network administrator and have them open up the 80 port (for instance) and have it forward the call on the public port to the local Arduino server.
is it easier with a yun?
It doesn't matter what Arduino board you're running. It obviously has to have an ethernet or wireless port/shield but otherwise it doesn't matter.
I shouldn't even bring up the fact that googling "arduino rest controlled led" brought this link up... Besides the firewall, that appears to be exactly what you're looking for or will at least get you going.

How can I know what bluetooth stacks are installed in my cellphone and how to they works?

I want to send almost 4k size data to any cellphone by using bluetooth.
Firstly to do this, I need to find what stacks are in my phone and what stacks are acting when I send a data.
I really struggle to find the way; however, it is really hard.
If you know how to find it, please give me some information!!
See http://32feet.NET if you are talking about Windows Mobile. It is a managed library for Bluetooth, OBEX, and IrDA. We support both the Microsoft stack, but also have support for Widcomm. And now also Bluesoleil and Stonestreet One Bluetopia.
You can either send and receive the data as an OBEX message, or over a simple bluetooth connection. See a copy of the user's guide at http://www.alanjmcf.me.uk/comms/bluetooth/32feet.NET%20—%20User’s%20Guide.html
Goto "https://www.bluetooth.org/tpg/listings.cfm" type the name of your mobile. This will give you information on the Bluetooth stack inside and the profiles supported.

Resources