It would still feel pretty good without the suffering.The more you suffer the better it feels when it's done
You can also reverse the value on the Android side if you wish.
I was reading back over this thread, and this post from last November popped out at me.Somewhat related Joey, MCP recommends to make available the 4 specific pins used in the factory for tests in case the module has to be checked. It seems that an approval could be needed requiring a such a test.
Sorry Joey, it was a mistake. I confused the RN42 (I was starting to deal with it at the moment) with your RN4020.I was reading back over this thread, and this post from last November popped out at me.
@atferrari, do you have an appropriate link you can refer me to?
I've finally had a chance to try out the 1.23 firmware. Yes, it fixes the above problem.I am not as dumb as I thought.
Back in post #106, I detailed the problem I was seemingly having with bandwidth. I assumed that I was trying to send data faster than was possible, so I added the indications to slow things down. But, in the back of my mind, I knew I was not sending so much data as to swamp the connection. Adding indications did ensure that data was not transmitted faster than the radio connection could handle, and eliminated the errors I was getting, so that had to be the cause of the problem, right?
Wrong. And, no, there was not a bug in my code.
The RN4020 has a problem. And it has to do with the BLE standard battery service. It seems that if the first private characteristic I add has the notify/indicate bit set, any write to that characteristic causes 1) data corruption of the value of the battery service and 2) a stream of battery service notifications to central, thus swamping the connection.
This problem is eliminated if the first private characteristic does not have the notify/indicate bit set.
As a second clue there is something wrong with the RN4020 battery service, I should be able eliminate the service entirely through the SS command. When I do this, the battery service still shows up as available on the Android. This should not be the case.
I cannot believe how many hours I wasted because of this bug.
FYI: The RN4020 I have is firmware version 1.10. The latest is 1.23 (which I'll be using for production), but I don't have one. This may have been fixed, but I've seen no errata on 1.10 that mentions this as a problem.
That says something about the quality of the firmware's code of version 1.10It turns out that the 1.23 firmware is much faster than the 1.10,
Yes. 1.10 is riddled with bugs and was replaced sometime back. I started with it because that's what I had. In fact, there is a 1.33 that I am going to production with.That says something about the quality of the firmware's code of version 1.10
It also tells me something about the enormous pressure there must've been on the developers to rush the product into the market.Yes. 1.10 is riddled with bugs and was replaced sometime back. I started with it because that's what I had. In fact, there is a 1.33 that I am going to production with.
Yes. Going through the Microchip forums, it has been a bit of a fiasco.It also tells me something about the enormous pressure there must've been on the developers to rush the product into the market.
Congratulations!My customer has been testing the first beta unit. He is thrilled.
His words: "Best product I will ever have sold."
And BTW, may I suggest an excellent alternative to Guinness next time you celebrate? :
I "invented" a use for this over the past few days:I made a new 'discovery' yesterday, and it is nothing less than earth shaking for me.
Keep in mind until a few weeks ago, I knew absolutely nothing about BLE. Now, I am learning more every day, and it is fascinating.
Did you know that BLE has a broadcast mode? Technically speaking, BLE broadcasting is sending an "undirected" "unconnectable" advertisement, which can be received by "observers". The advertisement can contain up to 25 bytes of data.
Why is this neat? Because it allows one BLE device to communicate (small amounts of) data to potentially hundreds of other devices within about a 100m radius -- all at the same time.
Me? I think this is pretty awesome, and something I think I can find lots of use for.
FYI, the RN4020 supports both broadcaster and observer roles -- and with some code, simultaneously.
Edit: and by "simultaneously" I mean the radio can be switched, on the fly, between broadcaster and observer roles.
In this particular case, the instruments are connected to a source, the value of which is known only through measurement via a (off-the-shelf) reference instrument. IOW, calibration is not necessary performed at the same reference point(s) each time -- those points can vary, but are known via the reference.Sounds very interesting.
However, I don't quite understand. If you connect a unit to a known source, the source (since it is known) can tell the unit what it is connected to, so the unit has all the information to calibrate itself. By multiplexing the calibrating sources, you can completely automate the calibration within the test site. Since the test site already has all the information that is needed for the calibration, why does it need to connect to other test sites?
| Thread starter | Similar threads | Forum | Replies | Date |
|---|---|---|---|---|
| P | Microchip MCC not usable | Programming & Languages | 16 | |
|
|
What is a T/R package in Microchip | Microcontrollers | 5 | |
| C | Making Microchip example code run on STM32 | Microcontrollers | 9 | |
|
|
Small microchip with a beeping fob (2) | General Electronics Chat | 3 | |
|
|
about Microchip RN4020 | Wireless & RF Design | 38 |