As the title says... Chat on...

User avatar
By marcelstoer
#56339
flagtrax wrote:I've been here in the past and somehow gotten out if it.


Yes, it was earlier in this thread.

Code: Select allrf_cal[0] !=0x05,is 0xFF


That's your clue, it means the esp init data is not where it's expected by the SDK (in terms of memory address). We pointed you to documentation that explain how and where to flash it.

To simplify things a PR was contributed and merged to our dev branch a few days ago: https://github.com/nodemcu/nodemcu-firmware/pull/1527. So, if you get a build from the dev branch and flash it to your device you shouldn't have to worry about init data any more.
User avatar
By flagtrax
#56345
marcelstoer wrote:
flagtrax wrote:I've been here in the past and somehow gotten out if it.


Yes, it was earlier in this thread.

Code: Select allrf_cal[0] !=0x05,is 0xFF


That's your clue, it means the esp init data is not where it's expected by the SDK (in terms of memory address). We pointed you to documentation that explain how and where to flash it.
.


Marcel, I think you misunderstood me. When I said I'd been here in the past, I was referring to a session (not anything to do with this thread) in the past when I had the same type of issue. I did indeed read and understand the flash instructions you "pointed" me to and execute them. I reflashed this module after that last post successfully (as far as I can tell at this point.) The problem seems to be that when it flashed on this occasion, it was corrupted. One thing I've noticed is that no matter which USB-serial converter I use, at higher speeds I can sometimes see errors even when I try to upload sketches after a good flash. I will say I am not in a "lab" environment, and as such there are many variables, such as extraneous noise, flakey breadboard connections, unshielded cables and things of that nature that effect transmission of data. That being said raising the default speed to 115200 seems to exacerbate the problem. I apologise if you think I don't read, read and read more, but the information out there is contradictory, and confusing, sometimes ambiguous, and quite frankly incomplete. Add to that the fact that this is not a full time thing for me and as such I don't have as much time to dedicate as others. When you point to data and say "that's your clue" it doesn't mean much to me as a beginner in this realm without telling me where I might find information on how to decipher that output. There is a saying where I come from that says "How smart or how dumb you are depends on where your standing". I've stood in many places in my career from satellite communications, fiber optics, microprocessors, and many others. This is simply a "new" place. I appreciate your help, and ask at the same time a bit of patience. As I said, I put these post up so that others who experience the same things I do, (and believe me there are many, just google the internet) and are looking for answers. I know enough now to know some of the answers given are incorrect. But I didn't know until I gained experience. Cheers
User avatar
By marcelstoer
#56368
flagtrax wrote:I think you misunderstood me.


English not being my mother tongue that may very well be, sorry. I did neither suggest nor (intentionally) imply you being dumb. Frankly, however, I don't think you meant I did... digital communication is hard.

Also, I never really thought you weren't reading enough documentation. Based on you last comment it might rather be you read too much - from possibly questionable sources, leaving you a bit confused. Things in the IoT world move extremely fast. So, an article published half a year ago possibly provides outdated and misleading information today. The only thing we (meaning current NodeMCU firmware maintainers) have under control is the official documentation. I suggest you consider it the only reliable reference. If you find information that is wrong or missing please create an issue on our GitHub list. Keep two things in mind, though: a) it's a reference and not a recipe-style tutorial and b) get the right set of pages for the branch you built the firmware from (switch in the lower left corner, http://nodemcu.readthedocs.io/en/master/ vs. http://nodemcu.readthedocs.io/en/dev/).

I confirmed we had been "here before" because before I posted I had checked that the error sequence 'rf_cal[0] !=0x05' is exactly the same you posted a few days ago (page 3 in this thread IIRC). I don't expect you to know this being the clue btw.

So, to conclude I believe you're now fairly familiar with the flashing process and its potential pitfalls. I also mentioned that it should be much easier in the future with that fix already being available on the dev branch. It'll land on master at the end of November.

flagtrax wrote:The problem seems to be that when it flashed on this occasion, it was corrupted. One thing I've noticed is that no matter which USB-serial converter I use, at higher speeds I can sometimes see errors even when I try to upload sketches after a good flash.


I think that this problem is simply due to Esplorer settings, nothing to do with bad hardware or corrupt firmware(-flash). If the device boots and you see "lua: cannot open init.lua" or so the firmware is usually correctly set up. Besides, while NodeMCU uses 115'200 baud it's also got auto-baud detection built in.
So, I suggest you play around with "Turbo mode" and "Dumb mode" in the Esplorer settings and see how that influences the transmission failure rate. I use "Dumb mode" with 0ms delay on all (most?) my devices.
User avatar
By flagtrax
#56378
marcelstoer="flagtrax wrote:I think you misunderstood me.


English not being my mother tongue [/quote]that may very well be, sorry. I did neither suggest nor (intentionally) imply you being dumb. Frankly, however, I don't think you meant I did... digital communication is hard.

Also, I never really thought you weren't reading enough documentation. Based on you last comment it might rather be you read too much - from possibly questionable sources, leaving you a bit confused. Things in the IoT world move extremely fast. So, an article published half a year ago possibly provides outdated and misleading information today. The only thing we (meaning current NodeMCU firmware maintainers) have under control is the official documentation. I suggest you consider it the only reliable reference. If you find information that is wrong or missing please create an issue on our GitHub list. Keep two things in mind, though: a) it's a reference and not a recipe-style tutorial and b) get the right set of pages for the branch you built the firmware from (switch in the lower left corner, http://nodemcu.readthedocs.io/en/master/ vs. http://nodemcu.readthedocs.io/en/dev/).

I confirmed we had been "here before" because before I posted I had checked that the error sequence 'rf_cal[0] !=0x05' is exactly the same you posted a few days ago (page 3 in this thread IIRC). I don't expect you to know this being the clue btw.

So, to conclude I believe you're now fairly familiar with the flashing process and its potential pitfalls. I also mentioned that it should be much easier in the future with that fix already being available on the dev branch. It'll land on master at the end of November.

flagtrax wrote:The problem seems to be that when it flashed on this occasion, it was corrupted. One thing
I've noticed is that no matter which USB-serial converter I use, at higher speeds I can sometimes see errors even when I try to upload sketches after a good flash.


I think that this problem is simply due to Esplorer settings, nothing to do with bad hardware or corrupt firmware(-flash). If the device boots and you see "lua: cannot open init.lua" or so the firmware is usually correctly set up. Besides, while NodeMCU uses 115'200 baud it's also got auto-baud detection built in.
So, I suggest you play around with "Turbo mode" and "Dumb mode" in the Esplorer settings and see how that influences the transmission failure rate. I use "Dumb mode" with 0ms delay on all (most?) my devices.[/quote]
For the sake of brevity, (which now seems mute). I didn't include several things that would have made my post clearer. I apologize for that. In inverse order,
I think that this problem is simply due to Esplorer settings, nothing to do with bad hardware or corrupt firmware(-flash). If the device boots and you see "lua: cannot open init.lua" or so the firmware is usually correctly set up. Besides, while NodeMCU uses 115'200 baud it's also got auto-baud detection built in.
So, I suggest you play around with "Turbo mode" and "Dumb mode" in the Esplorer settings and see how that influences the transmission failure rate. I use "Dumb mode" with 0ms delay on all (most?) my devices.




Thanks for the reply Marcel
This issue is not exclusive to ESPlorer, (in my reference here). I've tried successfully, and unsuccessfully to communicate with other types of interfaces such as the nodeMCU flasher, lualoader, electrodragon's flasher. I mentioned that "even" when trying to upload sketches (I get errors) only to indicate that is wasn't exclusive to the flashing function. I believe most are intermittent issues. I am fairly certain the problem has to do with noise, bad connections or both. Please do not take that as if I haven't changed things to find it. As far as ESPlorer goes, I'd love to find some documentation on it and it's functions but as far as I can see there is little to be found. I found the basic "getting started" information on Rui Santos' instructionals, but little more. This is one of the items that comes to mind when I referred to "incomplete" information. But I have made some changes that seem to help in loading. IE: Turbo mode.

As far as "official" documentation, as stated before the nodeMCU flasher is indicated as an option for flashing in the "official readthedocs" page, You yourself indicated to me it wouldn't work. (and it doesn't ;) ). Point being that even "official" information is not always absolute.


.. digital communication is hard.


Yes it can be. I've worked in the field most of my career. I do understand the principles. Being now retired I like to keep abreast with technology as a "hobby". I must love torture :lol:

while NodeMCU uses 115'200 baud it's also got auto-baud detection built in.

This confuses me, Are you saying if I set the baud on ESPlorer to a lower baud rate the module will communicate at it? I ask because that has not been my experience. If I change baud rates I simply get garble until I change it back, and sometimes must reset. As I've said, I am not in a sterile lab environment, but then again, I don't think these modules were designed to only work in an absolute clean environment.

If you find information that is wrong or missing please create an issue on our GitHub list.


This is something I am not comfortable in doing, as I would bet most beginners feel. Why? Because, lacking experience, we don't know yet what is "correct" or "incorrect".
I feel that is what forums are for. For example: I belong to many forums on many different subjects. Let's say I find an issue with my car, I go to a forum ask a question hope for a logical reply and test it. It wouldn't work to contact the manufacturer (they wouldn't answer anyway :lol: ) , and the manufacturer has much more to do than answer every question out there. I feel that way about the nodeMCU group. They have much more important things to do. Better for those who have a better understanding to present "bonafide" problems than me presenting something I don't yet understand. I am still learning about "github" and how it works as well. It is another new resource to me.
I would like to add that I have been successful in several projects, some though I must admit I had to migrate over to the arduino IDE to get them to work. ( I think there is an issue in ESPlorer, not relevant here ) but again I don't know enough to make that call.
English not being my mother tongue

Well you do much better than I would at multiple languages. :mrgreen: ! I am envious
So to sum this rambling up, I am here to learn from those who have already been where I am. When I started fooling with this latest generation of MPU's I remember reading in an Arduino article that one should never "re-invent" the wheel, that is what libraries are for. That made sense to me. I've said before that I hope to, at some point to learn enough to be able to contribute, but I don't feel that time is near. :P Cheers