nRF5 action!
-
@Mike_Lemo said in nRF5 Bluetooth action!:
Also If I want to change the UART pins to other pins would it work without errors or If I want to use 2 or more UARTS? same with I2C
The Chip has a lot of periphery on it. You can connect most components to pins. There is only one hardware UART, which can be connected. Please look at the Infocenter The arduino-nrf5 port is limited to things are implemented with arduino-samd by the author. This is the reason I have implemented an extension for hwPinMode() in MySensors.
Another fine thing is the implementation of Shortcuts and the PPI. You can do a lot without using the CPU.
@Mike_Lemo said in nRF5 Bluetooth action!:
Also what are the debugging options available sins the RS232 is not connected to the MCU like in an arduino how would I set stop points or peek at variables values to see if the code runs as expected?
Debugging depends on your programmer and flashing tool. I think you can start by search for "openocd gdb". OpenOCD is the flashing tool in arduino-nrf5 for all supported programmers.
@d00616 said in nRF5 Bluetooth action!:
@Mike_Lemo said in nRF5 Bluetooth action!:
Also If I want to change the UART pins to other pins would it work without errors or If I want to use 2 or more UARTS? same with I2C
The Chip has a lot of periphery on it. You can connect most components to pins. There is only one hardware UART, which can be connected. Please look at the Infocenter The arduino-nrf5 port is limited to things are implemented with arduino-samd by the author. This is the reason I have implemented an extension for hwPinMode() in MySensors.
Another fine thing is the implementation of Shortcuts and the PPI. You can do a lot without using the CPU.
@Mike_Lemo said in nRF5 Bluetooth action!:
Also what are the debugging options available sins the RS232 is not connected to the MCU like in an arduino how would I set stop points or peek at variables values to see if the code runs as expected?
Debugging depends on your programmer and flashing tool. I think you can start by search for "openocd gdb". OpenOCD is the flashing tool in arduino-nrf5 for all supported programmers.
What is that MySensors thing you were talking about?
-
@NeverDie I just made the antenna on my PCB stick out so there is no fiber glass under the antenna even.
Also what is a good library for using NFC and the bluetooth peripheral of that MCU?
I came across that library:https://github.com/sandeepmistry/arduino-BLEPeripheral
but the page doesn't seem to support the BLE capability of the NRF52832
and no luck for the NFC@Mike_Lemo said in nRF5 Bluetooth action!:
I just made the antenna on my PCB stick out so there is no fiber glass under the antenna even.
Yeah, that's what I opted for on Version 2 of my breakout board for the Ebyte nRF52832 module. Seems like the cleanest solution.
The MDBT42Q is a lot smaller than the Ebyte module, so although I was bashing it for its performance on the Adafruit (which in their case may turn out to be ground plane related), that might be an acceptable trade-off for the smaller size.
You have lots of good questions. Keep asking! I'm hoping to learn from the answers too.
-
OK, here's my plan:
-
It's possible the connections on my first attempt were a bit dodgy. I'll try again, but this time soldering a fresh new module to a prototype PCB so that they won't be mechanically stressed as I interconnect wires. Not as ideal as my breakout board will be, but I'll have to make do until it arrives.
-
If it still fails to program after step #1, then I'll check to confirm whether or not the oscillators are, uh, oscillating, at the proper frequency by using an oscilliscope after powering it up. I'm assuming they are, but it's at least easy to check and then cross off the list of suspects.
-
If still no clues, then what's next? Logic probe on the two SW lines for a compare/contrast against a successful programming of a sparkfun nRF52832 board? That's sure to generate at least some palpable data as to where the problem is occurring.
I welcome other suggestions though on how to proceed. The above is just my best guess, and I'm sure others here are better at troubleshooting this than I am.
-
-
@Mike_Lemo said in nRF5 Bluetooth action!:
I just made the antenna on my PCB stick out so there is no fiber glass under the antenna even.
Yeah, that's what I opted for on Version 2 of my breakout board for the Ebyte nRF52832 module. Seems like the cleanest solution.
The MDBT42Q is a lot smaller than the Ebyte module, so although I was bashing it for its performance on the Adafruit (which in their case may turn out to be ground plane related), that might be an acceptable trade-off for the smaller size.
You have lots of good questions. Keep asking! I'm hoping to learn from the answers too.
@NeverDie said in nRF5 Bluetooth action!:
@Mike_Lemo said in nRF5 Bluetooth action!:
I just made the antenna on my PCB stick out so there is no fiber glass under the antenna even.
Yeah, that's what I opted for on Version 2 of my breakout board for the Ebyte nRF52832 module. Seems like the cleanest solution.
The MDBT42Q is a lot smaller than the Ebyte module, so although I was bashing it for its performance on the Adafruit (which in their case may turn out to be ground plane related), that might be an acceptable trade-off for the smaller size.
You have lots of good questions. Keep asking! I'm hoping to learn from the answers too.
Yeah well at least I managed to flash a blink program to my pcb and confirm that it works but now I'm planning to abanded from Arduino anyways sins alot of functionality isn't supported.
-
@NeverDie said in nRF5 Bluetooth action!:
@Mike_Lemo said in nRF5 Bluetooth action!:
I just made the antenna on my PCB stick out so there is no fiber glass under the antenna even.
Yeah, that's what I opted for on Version 2 of my breakout board for the Ebyte nRF52832 module. Seems like the cleanest solution.
The MDBT42Q is a lot smaller than the Ebyte module, so although I was bashing it for its performance on the Adafruit (which in their case may turn out to be ground plane related), that might be an acceptable trade-off for the smaller size.
You have lots of good questions. Keep asking! I'm hoping to learn from the answers too.
Yeah well at least I managed to flash a blink program to my pcb and confirm that it works but now I'm planning to abanded from Arduino anyways sins alot of functionality isn't supported.
@Mike_Lemo said in nRF5 Bluetooth action!:
sins alot of functionality isn't supported
If your abandoning from Arduino, what will you be abandoning to?
-
@Mike_Lemo said in nRF5 Bluetooth action!:
sins alot of functionality isn't supported
If your abandoning from Arduino, what will you be abandoning to?
@NeverDie said in nRF5 Bluetooth action!:
@Mike_Lemo said in nRF5 Bluetooth action!:
sins alot of functionality isn't supported
If your abandoning from Arduino, what will you be abandoning to?
Probably eclipse
-
@NeverDie said in nRF5 Bluetooth action!:
@Mike_Lemo said in nRF5 Bluetooth action!:
sins alot of functionality isn't supported
If your abandoning from Arduino, what will you be abandoning to?
Probably eclipse
@Mike_Lemo said in nRF5 Bluetooth action!:
@NeverDie said in nRF5 Bluetooth action!:
@Mike_Lemo said in nRF5 Bluetooth action!:
sins alot of functionality isn't supported
If your abandoning from Arduino, what will you be abandoning to?
Probably eclipse
I'm rather hazy on the differences. I guess that way you can use all the Nordic libraries the way they were intended?
-
Eclipse is just an IDE ;) like Arduino IDE, or VS etc.
I think he means he wants to leave arduino core (mysensors rely on arduino core) to use nordic sdk with other ide (like eclipse, mbed, keil etc..). Because using eclipse with arduino core won't unlock features. It still needs coding. -
Eclipse is just an IDE ;) like Arduino IDE, or VS etc.
I think he means he wants to leave arduino core (mysensors rely on arduino core) to use nordic sdk with other ide (like eclipse, mbed, keil etc..). Because using eclipse with arduino core won't unlock features. It still needs coding. -
Bluetooth is everywhere, and that's great, but I'm developing the impression that Bluetooth is rather arduous to program in its "native" format. Maybe this is an opportunity to build something simpler/easier that runs on top of Bluetooth, and yet can still interact with normal bluetooth devices in the native bluetooth that they understand? I think the Arduino's wide acceptance more or less proves that "easy is good."
-
Bluetooth is everywhere, and that's great, but I'm developing the impression that Bluetooth is rather arduous to program in its "native" format. Maybe this is an opportunity to build something simpler/easier that runs on top of Bluetooth, and yet can still interact with normal bluetooth devices in the native bluetooth that they understand? I think the Arduino's wide acceptance more or less proves that "easy is good."
-
OK, here's my plan:
-
It's possible the connections on my first attempt were a bit dodgy. I'll try again, but this time soldering a fresh new module to a prototype PCB so that they won't be mechanically stressed as I interconnect wires. Not as ideal as my breakout board will be, but I'll have to make do until it arrives.
-
If it still fails to program after step #1, then I'll check to confirm whether or not the oscillators are, uh, oscillating, at the proper frequency by using an oscilliscope after powering it up. I'm assuming they are, but it's at least easy to check and then cross off the list of suspects.
-
If still no clues, then what's next? Logic probe on the two SW lines for a compare/contrast against a successful programming of a sparkfun nRF52832 board? That's sure to generate at least some palpable data as to where the problem is occurring.
I welcome other suggestions though on how to proceed. The above is just my best guess, and I'm sure others here are better at troubleshooting this than I am.
@NeverDie said in nRF5 Bluetooth action!:
OK, here's my plan:
-
It's possible the connections on my first attempt were a bit dodgy. I'll try again, but this time soldering a fresh new module to a prototype PCB so that they won't be mechanically stressed as I interconnect wires. Not as ideal as my breakout board will be, but I'll have to make do until it arrives.
-
If it still fails to program after step #1, then I'll check to confirm whether or not the oscillators are, uh, oscillating, at the proper frequency by using an oscilliscope after powering it up. I'm assuming they are, but it's at least easy to check and then cross off the list of suspects.
-
If still no clues, then what's next? Logic probe on the two SW lines for a compare/contrast against a successful programming of a sparkfun nRF52832 board? That's sure to generate at least some palpable data as to where the problem is occurring.
I welcome other suggestions though on how to proceed. The above is just my best guess, and I'm sure others here are better at troubleshooting this than I am.
I executed step #1 of my plan with no change in results on the second attempt of programming. The module is definitely getting 3.3v power on the VCC pin.
So, I executed step #2. I don't see any oscillation at all on the 32.7khz oscillator. The faster oscillator is mostly quiet, but it periodically gives short little bursts of activity--here's a screenshot of one:

Not sure if this is normal or not, but that's what is going on. -
-
@scalz arduino.org ble library that's based on sandeepmistry's one seems very extensive.
I believe one need pretty substantial reasons to migrate from arduino unless you are a professional developer -
So, for comparison, I measured the Sparkfun nRF52832 board, because (unlike the adafruit with its Raytac module), both oscillators are exposed for measurement. Unfortunately, it is already programmed, so it is not a true apples-to-apples comparison, but, anyway, the measurements were definitely different. First of all, the 32.7Khz oscillator was continuously oscillating at around 32.9Khz:

and the faster oscillator was also continuously oscillating:

I guess to have an apples-to-apples I would have to completely erase the firmware on the Sparkfun board.Anyhow, I think I'm getting the urge to order some Raytac modules.... It sounds as though they are not such a mystery.
-
One thing I notice on the Ebyte module is that no RESET pin is exposed. Isn't that a bit odd?
Also, there appears to be a typo on the silkscreen, where there are two pin 7's on the silkscreen, but probably one of them is actually pin 6.
-
By the way, those short bursts on activity on the Ebyte module's fast oscillator happen pretty regularly, about every 22ms or so:

-
@Toyman what is that libray? I think of you refer to bel peripheral v0.3 it might not support the nrf52832 as I was asking before.
http://www.arduino.org/learning/reference/ble
This is their "homework" in anticipation of Primo launch. It does support nrf52
-
Ok, so after posting some questions to CDSENET Aliexpress store(in regards to the E73-2G4M04S module):
1. Is the nrf52832 IC DEC1 pin decoupled with a 100nF capacitor as per Nordic datasheet recommendations? 2. Is the nrf52832 IC DEC2 pin decoupled with a 100pF capacitor as per Nordic datasheet recommendations? 3. Are all the power pins of the nrf52832 IC decoupled as per Nordic datasheet recommendations? 4. Are the external components already provided so that the internal DC-DC converter can be used?I received this part of schematic:

The module that I bought is this one: CDSENET E73-2G4M04S
I hope that it helps demystify some things in regards to this module. Maybe @NeverDie can confirm this by checking his module connections as seen in the above schematic. I'm saying this because Chinese support is well..not so user friendly in my experience and I don't know if the above schematic is indeed what they used on their module or they just provided me an example schematic of how to use the NRF52832 IC in general instead.
-
@Mike_Lemo @Toyman
BLEPeripheral lib from sandeep is working fine with nrf52832, as i'm using it ;)Regarding the sch above, it looks like a classic circuit (in LDO mode, not surprising as DCDC mode is optional). I'm not using same values but this should work..