I want to send sensor data from MyRIO to XBee3 Mesh - sensors

I want to send sensor data from MyRIO to XBee3 Mesh. I have been looking at the XBee's documentation to check where the UART port is, but I have not found this simple information, instead, I found DIOs and PWM pins.
We tried to send data using the USB port and we were unable to do so.
Can anybody help us out with it? Any help, even just a direction would be greatly appreciated!
Thank you,
AIMS

Page 11 of the Digi XBee 3 RF Module documentation shows the following pins for the TTL-level UART:
UART pins XBee 3 Device pin number
micro-mount surface-mount through-hole
DOUT/DIO13 3 3 2
DIN/CONFIG/DIO14 4 4 3
CTS/DIO7 24 25 12
RTS/DIO6 27 29 16

Related

Do MCASP input pins need to be in order?

I am using a Circular Microphone Board that has 4 I2S outputs with 8 channels in total and getting this audio into a Beaglebone AI. I am able to input 2 channels and record (arecord) the audio right now with mcasp1_axr0 interface.
However I want to record the 8 channels now, so I need 4 interfaces and my question is: must these interfaces be mcasp1_axr0, mcasp1_axr1, mcasp1_axr2 and mcasp1_axr3. Or can they be for exaple, mcasp1_axr0, mcasp1_axr1, mcasp1_axr10 and mcasp1_axr11?
Thanks in advance

Send data from Adafruit Feather 32u4 Bluefruit LE to Teensy 3.6

I am trying to send data from Send data from an Adafruit Feather 32u4 Bluefruit LE to Teensy 3.6. I am trying to get data over Bluetooth to the Feather, then send that data to the Teensy. I have tried many different ways of Serial connections, but they have not worked. What is the best way to do this, and if it is Serial, how do I do this properly. Thank you!
I’m case this helps anyone, I have figured it out. I ended up using the 31 and 32 pins on the Teensy 3.6 using the command “Serial4.begin”, then I used the RX TX pins on the adafruit board and the command “Serial1.begin”
The Serial numbers ie. “Serial4” are very important for this, and now it works perfectly.

Bluetooth Low Energy [4.2 and later] - characteristics greater than 20 bytes with Qt on Linux

I'm not sure this would be better on Electronics Stack Exchange.
I've seen a few questions similar to this, but pre BLE 4.2 days, before it was possible to have characters of greater than 20 bytes, but these questions are outdated now.
To anyone who's not aware, from BLE 4.2 onwards, you have been able to send far more than 20 bytes in a characteristic. So, if you've not come across this, I have successfully been transferring characteristics of 240 odd bytes between iOS and a Silicon Labs device for well over a year.
I have recently set up a Nordic embedded device and knocked up a Qt GUI to transfer data between the Nordic device and the Qt app running on Linux, using the Bluez stack. It will transfer 20 byte characteristics just fine.
So, I increased the Nordic's characteristics to 40 bytes, but Qt is not playing at all with it.
I am confident things are right at the Nordic end because if I use a little Android app and query the 40 byte characteristic it reads all 40 bytes. This makes me think that the issue is at the Laptop end.
I have various unknowns:
Is my laptop really BT4.2. It's hard to know as Linux calls it an unknown device and its USB vendor and type number tell me it's an Intel device, yet the IDs seem to give me multiple possibilities.
hciconfig tells me that I am running HCI Version 4.2 and LMP Version 4.2. That, to me, suggests larger characteristics should work.
Can Linux itself cope with characteristics of greater than 20 bytes?
Can Qt cope with characteristics of greater than 20 bytes?
I am running Mageia 6 and Qt Creator 4.2.1 with Qt 5.9.4 kit.
I have no Windows or iOS device with LE new enough for larger characteristics. Also, Windows is a bit of a pain when it comes to LE...
Edit:
btmon gives this when it receives a 40 byte chatacteristic:
ACL Data RX: Handle 3585 flags 0x02 dlen 27 #1026 [hci0] 577.032058
ATT: Handle Value Notification (0x1b) len 22
Handle: 0x0010
Data: 35303120546869732069732061206c6f6e672063
This is sending out a string from the Nordic:
"%1 This is a long characterstic %1",Messno,MessNo
MessNo gets incremented every time the Noridic sends out a message. This gets truncated to xxxx This is a long
So, this suggests to me that it's getting truncated either by the BT stack on the assumption that this is what the Qt app is digesting.
You should increase the MTU size from the nordic device. It has nothing to do with Qt.

HM10 BLE 4.0 Chip limit for number of discovered nearby devices

I am working with HM10 BLE chip with Arduino. I am able to establish serial communication between the two. In the manufacturer manual from jnhuamao.cn, it says that for AT+DISC? , "...Before V535 max results is 6, Since V535 not limit"
AT+DISC? is the AT command for scanning nearby BLE devices. The firmware for my chips are V539 and V540.
However, I am only able only received maximum 6 devices as scan result in the serial monitor. And they are different everytime. (I have 8 chips powered up nearby). Has anyone ran into the same problem? What could be the problem? What might be the solutions?
THANKS A LOT
the number of discoverable devices for hm-10 is 6 devices in one go.
its in their datasheet.
Even im facing a similar issue.
Im looking for something that will give me upto 20 devices in the scann results.

Arduino 1.05 SoftwareSerial Library

I am new to Arduino and I have 2 issues when I tried the BluetoothShieldDemo.
I can only send data from bluetooth module(through serial monitor) to phone but I cannot send from phone to bluetooth module(to display it in serial monitor). I used oscilloscope to check there is signal in the Arduino board RX pin but no data display in the serial monitor. I suspect it is an IO issue so I changed the IO from digital pin 6 and 7 to digital pin 2 and 3, then digital pin 4 and 5. But it is still not working. Then I change the code to use hardware serial (Serial1) and it is working now. I just wonder why it is not working with the SoftwareSerial.
Although I can send and receive data, I cannot change the bluetooth name. The bluetooth module has no response when the below commands are sent. Is it the bluetooth module is in some kind of locked mode? Or the command is different from manufacturer? The bluetooth module that I got has a single CSR 31A2 chip on it. But the other shield that I saw on the web has 2 chips and it is with CSR BC417.
Codes:
blueToothSerial.print("\r\n+STWMOD=0\r\n");
blueToothSerial.print("\r\n+STNA=BluetoothSlave\r\n");
blueToothSerial.print("\r\n+STOAUT=1\r\n");
blueToothSerial.print("\r\n+STAUTO=0\r\n");
delay(2000);
blueToothSerial.print("\r\n+INQ=1\r\n");
Thanks in advance!
1- When using SoftwareSerial, how are you declaring the pins (Input/Output)?, Are you pulling serial data right (giving it enough time between data transmission, but reading at the right time)?
2- Find the datasheet of your module and see what commands does it support.

Resources