Communication between MCU and PC - wireless - microcontroller

I am working on a project that requires me to use TI's MSP430F5529 launch pad, CC3100 Booster Pack and CC3100XX Emulator.
The project I would like to do is have the MSP430 log sensor data and to transmit it to a PC wirelessly(Without Internet). I am a beginner in using MCU,s but I can handle the datalogging part. I do not know how to get started with the communication part.
Can someone please direct me to where I could get some good reference material to get this project off the ground and if possible better insight on what I need to do to get started.
Thank you all in advance.

Related

Pairing (security) example for Seeed XIAO nRF52840

I can't find example how to do BLE pairing with Seeed XIAO nrf52840 board. It doesn't matter to me if it will be Arduino or Circuitpython libraries. Is there something like this somewhere?
I would like to use this board for my project, but would like to ensure that anyone cannot read or change values in the BLE services.
My idea of use is that on the server side I select the device I want to pair with and on the device side I confirm the pairing manually e.g. with a button. From that point on, the server can then communicate with the unit and read or change its values.
Thank you
With Arduino you could try this example: https://github.com/adafruit/Adafruit_nRF52_Arduino/tree/master/libraries/Bluefruit52Lib/examples/Peripheral/pairing_passkey
I am actually trying to implement this feature as well. I was trying in CircuitPython, but I could not find a suitable way. I opened an issue, as there was nothing in their documentation to help.
UPDATE 2023-01-03 - In CircuitPython BLE security is not yet implemented, see answer to the issue I opened.

Create the Pairing limitation on HC-05 sensor

I have been trying to set the limit of pairing the Bluetooth device HC-05(interface by Arduino controller) with my smartphone.
I have tried making this solution work with AT command
AT+INQM=<Param>,<Param2>,<Param3>
Example: AT+INQM=1,9,48\r\n
But instead of converting AT commands using serial.h with embedded C, I am looking for any dedicated library which helps to work this kind solution in using Arduino.
Basically, with the help of Bluetooth device connect to Arduino Nano, I want to send the altimeter sensor data to my smartphone.
During the connection, HC-05 should be responding any one device at a time, if another smartphone tries to pair then the error will be shown.
Please share your advice on this.
Yes there are some libraries in arduino but these are only meant for connection and pairing and low energy connections. We don't have any dedicated library from where we can control the mode of operation of HC05 or any bluetooth module. like bypassing or accessing GAP and GATT services of bluetooth. However there is a way to flash HC-05. But we can only use it for updating the firmware of this device. This github repo is dedicated for this purpose . Hope it helps you

How to Enable Linux Kernel Driver for 81ry52 chip for Network over Usb

How do you enable the linux kernel driver for a network adaptor based on a 81ry52 chip?
The development board I'm using states the support is enabled by default. It implies this chip is popular. However it is not working, I can see the USB device is inserted but no network interface is created. And I could not find the adapter/chip model in the kernel source. Nor much information could be found on the net either.
So far, this model of the USB to network adapter does not work for Linux. The comments following the original question have many insights and shared experiences on USB in general. There might be many things to be fixed but not clear for now. I'll keep these in mind and hopefully explore more and find out a solution.
Though if somebody else find out a solution. I'll be very glad to know.

Develop client library for MQTT in C

I want to develop a c client library for MQTT, to make my PIC 8 bit micro-controller to talk to an MQTT broker( say Active MQ). I am relatively new to this field. Can anyone suggest where can i start . I need to implement just CONNECT, SUBSCRIBE,UNSUBSCRIBE, PUBLISH nad DISCONNECT API's to start with.
Thanks in advance
You need to get ethernet working first, then just implement the protocol... :)
A good place to look would be the arduino client (http://knolleary.net/arduino-client-for-mqtt/) that should have solved a lot of what you need to do.
Good luck!
I'm really not sure a AMQP client would be able to run on a limited system like the AVR (but a great system tough).
You will need at least the following:
- The TCP/IP stack;
- Enough memory to hold some frames (4096 bytes or maybe smaller but not often);
If you think the arduino will handle all this, I would start from the rabbitmq-c library and strip it down.
Other option, and if the rabbitmq-c isn't small enough, and your goals are just to publish messages, take a look at STOMP and how to combine it with RabbitMQ or other AMQP. Stomp has a very small footprint and will, probably, be the best shot to give.
Cheers,
You can use XSockets.NET since you can connect any device with TCP/IP to XSockets and then talk to other devices.
It will basically work like this.
Setup a XSockets server somewhere (localhost to start with)
Connect from the Arduino to XSockets
Use XSockets publish/subscribe pattern do send/receive data between arduino and any other device connected to XSockets
Simple vide demo here: Arduino pub/sub with XSockets
If you want to mix in any other tech do it from XSockets since that wil be easier than writing stuff on the Arduino.
EDIT: Just saw that you did not say Arduino... 8-bit PIC micro-controller might be another story :) I have just connected Arduino and Netduino

PIC32 bluetooth

I want to implement bluetooth communication on my final bachelor project, but I'm having a lot of doubts.
One of the requisites of this project is to have a Java application that can talk to the micro via Bluetooth. After a lot of research, I've found one that I think it's very good with a SPP profile, but I still have a lot of questions about it:
All the bluetooth on a PC implements the SPP profile stack?
If you need to develop a Java application that runs on every PC that implements the SPP stack, how would you do it?
We started by trying to use BlueCove and JavaBluetooth.org API, the first one runs great but I don't know if it's just on my PC and the second one sends an error (Stack not initialized). Which one would you use, and why?
We decided to buy this bluetooth module, from Sparkfun, any comments for those of you who already use it?
Thanks
I used a similar product for my senior design project from Sparkfun (RN-41): http://www.sparkfun.com/products/10559
It worked right out of the box as a simple UART. This allowed my team and I to develop a simple C# application that used the .NET SerialPort class (System.IO.Ports) to communicate between an MSP430 and the PC application we were developing. If streaming data is all you care about, these Bluetooth modules work great. Java implements a similar SerialPort class for RS-232 communications. Don't forget that Bluetooth was developed to replace a serial cable.
I hope this answer helps! Good luck.
I personnally achieved to use the Sparkfun's bluesmirf devices to communicate with my own Java application (an Eclipse plug-in). I tested it successfully under Windows, MacOS & Linux based systems.
I used the RXTX Java library to connect to the corresponding serial port once the Bluetooth devices were paired. Under Linux I even achieved to configure rfcomm to automatically pair the Bluetooth devices on demand.
From my experiment I encountered some stability issues... Sometimes it simply fails to connect to the given port even if it exists or refuse to reconnect on it. Sometimes it hangs the whole system...
I never found any good solution to fix those issues that seems to be completely system dependent. I would be interested if any one achieved to use it properly...

Resources