Raspberry pi 2 IoT - windows-10

I would like to ask how to connect GSM module pgsm-1 to Raspberry pi 2 running Windows IoT core. We are supposed to connect it to the RasPi 2 via pins RXD and TXD which are labeled as reserved by Microsoft now. How could we do that?

You could use any 'supported' USB-to-Serial adapter to connect to the GSM module. Altough the list of supported hardware offered by MS is a bit of a mess...
I use one with a "Silabs CP2102" chip, but it requires some re-plugging from time to time since it seems to freeze on Win 10 IoT Core...

Related

transfering data between 2 python programs on different devices

I'm working on a project to control a drone using an EEG headset. The EEG headset is connected to my laptop [runnig ubuntu 18.04] and the drone to the raspberry pi [raspbian].
The code for processing the EEG data on the laptop as well as the code to control the drone is written on python 3.6 and work without any problems.
setup:
the EEG headset[ neurosky mindwave mobile 2] and the drone[ parrot mambo] both use BLE[bluetooth low energy] to connect with the devices. since both of them use Bluetooth it would be hard to send and receive data simultaneously to both the devices using a single code and laptop as they require a continuous uninterrupted connection and high data rates. hence the EEG headset is connected to the laptop via BLE and similarly the drone to the raspberry pi 3b+. The laptop takes care of processing the EEG signal and determining the desired command, while the raspberry pi acts as a wireless controller for the drone.
system setup
I need to pass the values between these 2 codes[and devices] so as to control the drone using the EEG signal. For eg, if I want to make the drone go forward after processing the signal I need to send say "1" or "f" to the raspberry pi from the laptop.
A wired connection such as Ethernet cable or USB is preferred over a wireless method.
The data size and rate is very less as a single character is sufficient and it will be sent only once every few seconds.
Which would be the best method to achieve this sort of communication
Use kafka or 0mq to loosely couple the laptop sender to the rasp pi receiver.
If one of them reboots, that's ok, the other will keep plugging away.
In the kafka case, you will enjoy the advantage of being able to replay a laptop publisher session again and again as you tweak and test the rasp pi client code.

Accept inbound Bluetooth pairing request programmatically on an RPi3 running windows IoT

I am using an RPi3 to control a machine which will be able to communicate with android and other bluetooth devices. I used the Rfcomm Bluetooth chat example to establish bluetooth communication. The issue that I am facing right now is that my android app cannot connect to windows app until the two devices pair and I need to go on the windows device portal to accept the pairing request for the RPi. Is there a way to automate this programmatically so that the windows app can accept all inbound pairing requests?
You could programmatically pair/unpair request on RPi3 running with windows IoT. Please refer to scenarios 8 and 9 in this uwp sample: https://github.com/Microsoft/Windows-universal-samples/tree/master/Samples/DeviceEnumerationAndPairing.
It seems that windows 10/ Windows 10 IoT Core does not support DevicePairingKinds.None.I have tested to pair with parameter as DevicePairingKinds.None,it is failed. You can set as DevicePairingKinds.ConfirmOnly to work around.
deviceInfoDisp.DeviceInformation.Pairing.Custom.PairAsync(DevicePairingKinds.ConfirmOnly);

Built in Bluetooth on Raspberry Pi 3 Windows IoT - adapter not found

I have a Raspberry Pi3 running Windows IoT version 10.0.14931.1000. The Raspberry Pi 3 onboard bluetooth adapter is supposed to be supported in this version of Windows IoT.
When I use the web portal to search for Bluetooth devices nothing is found, and my Raspberry Pi does not appear to be discoverable. When use Windows IoT Remote Client to connect to the Raspberry Pi and look at the Bluetooth settings it says: "No usable Bluetooth adapter can be found on this computer: The device is not ready for use. (Excep_FromHResult 0x800710DF)".
Is there something else I need to do to enable Bluetooth on the device?
I could try reinstalling Windows, but before I do that I wanted to know if I'm missing something obvious.
I reinstalled Windows (10.0.14393.0) on the Raspberry Pi 3 and Bluetooth is now working. I can only assume that because I started with an insider build that did not support Bluetooth it has got itself into an unexpected state.
If it was full blown Windows I suspect deleting the device and reinstalling it would have done the trick, but that's not an option on IoT.

Using Bluez/Linux, can I run a daemon broadcasting BLE ibeacons and be connectable using RFCOMM simultaneously?

As stated in the title, can both be ran simultaneously or is a second adapter required? For example, can one adapter run both BLE and BT classic at the same time - the BLE beacon broadcasts the MAC for opportunistic clients to connect to using RFCOMM.
If you are using a common CSR 4.0 Dongle or Ampac AP6212 (which purportedly uses the same Broadcom chip as the RPI3) then this is possible - they are "dual-stack".
Given this, the typical USB CSR chips have a hard limit of two connected RFCOMM clients and the Ampac, 8 or maybe more (tested for sure 8).

How can I send an advertisement from the Genuino and connect to the Galileo via Bluetooth?

I'm trying to send data via bluetooth from an Intel Genuino to an Intel Galileo. The Galileo will act as the Master node in this connection. I have configured the Galileo so that it is discovering bluetooth devices and I have paired my phone to the Galileo via bluetooth.
What I need to do is pair the Genuino with the Galileo. I have tried some of the sample programs that Arduino provides but I cant seem to pair or connect the two devices.
So the question is, if I have my Galileo discoverable and ready to pair, how can I send an advertisement from the Genuino and connect to the Galileo.
Alternatively: if anybody has a link to a site that explains the blePeripheral and bleCentral commands, that would be great.
Cheers
On the Arduino/Genuino 101 board, use CurieBle to create a peripheral. There are some example sketches to get you started. CurieBle works very similar to the Arduino BLEPeripheral library.
You don't need to pair devices. On the Genuino 101, run the sketch that creates the Bluetooth LE Service. On the Galileo, run a program that discovers service running on the 101 and connects to it. You can write the program for the Galileo using noble and Node.js.

Resources