There was only one genuine use of this macro, all other places were
using it only as a necessary compensation. While this was fine as long as
it was the first meg of flash which was mapped, it became incorrect and
quite dangerous whenever this assumption did not hold (such as when
running from the second slot in an OTA scenario).
The flash API now uses actual addresses, not translated/mapped
addresses, and the users of this API have been adjusted accordingly.
This makes the flash API work correctly regardless of what flash mapping
is in use.
The old macro is still available under the new name
INTERNAL_FLASH_MAPPED_ADDRESS, and this is used to detect flash writes
where the source is mapped flash (and thus has to be bounced), and to
adjust the _flash_used_end linker symbol when used with
flassh_find_sector() by the filesystem code. The latter usage is not
OTA-proof, but in an OTA scenario the filesystem needs a fixed location
anyway and thus would not use this code path.
* Remove the "0.9.6; deprecated" comment regarding the master branch
* Add a paragraph on enabling debugging
* Clarify (I hope) the conditions under which you need to reformat your flash filesystem.
* Remove trailing blanks
Signed-off-by: Nick Andrew <nick@nick-andrew.net>
Based on @vowstar edits:
* Note that the SDK is the NONOS one
* Add links for NodeMCU devkit v1.0 and distinguish from v0.9
* Remove the ToDo list (as all are complete but for 1 item)
When lua assertions are enabled, normal operation results in many:
lobject.c:88: (((t1)->tt) == 4)
lobject.c:88: (((t2)->tt) == 4)
lobject.c:88: (((t1)->tt) == 4)
lobject.c:88: (((t2)->tt) == 4)
lobject.c:88: (((t1)->tt) == 4)
lobject.c:88: (((t2)->tt) == 4)
It comes from using the pvalue() macro for 3 pointer types, where
pvalue() also checks the type of pointer and complains through the
assertion where the type == 4 (TLIGHTUSERDATA).
Use the correct macro according to the type of data being compared
to eliminate this assertion error.
Signed-off-by: Nick Andrew <nick@nick-andrew.net>
Master contained two OW changes one of which was already reimplemented in dev using the
correct macros. The second was from hazarkarabay (f6d0c0c) that onewire_search()
returns a device address vector even when no device is found. I've reimplemented this
but using the correct index, rom_byte_number, rather than declaring a new temp index i.
List the latest set of modules in the example on disabling modules.
Show which file to edit to tag your firmware to identify it on boot.
Signed-off-by: Nick Andrew <nick@nick-andrew.net>
Put Marcel's online build server first, as this will be the go-to for
new users. Note that they should build 'dev' not 'master'.
Next, list the docker image which will build from your checked-out
repository and possibly including your own changes.
Finally, list the prerequisites if you want to build it all yourself,
including the sequence of commands (same as the docker image uses).
Signed-off-by: Nick Andrew <nick@nick-andrew.net>
The README is presently quite unreadable. The simpler examples of
programming an already-flashed ESP8266 are moved up, to give the
new user the flavor of what is possible with NodeMCU.
Instructions to build the firmware will follow.
Signed-off-by: Nick Andrew <nick@nick-andrew.net>