1. 09 Jun, 2020 4 commits
  2. 21 Jul, 2019 1 commit
    • Johny Mattsson's avatar
      Major cleanup - c_whatever is finally history. (#2838) · 526d21da
      Johny Mattsson authored
      The PR removed the bulk of non-newlib headers from the NodeMCU source base.  
      app/libc has now been cut down to the bare minimum overrides to shadow the 
      corresponding functions in the SDK's libc. The old c_xyz.h headerfiles have been 
      nuked in favour of the standard <xyz.h> headers, with a few exceptions over in 
      sdk-overrides. Again, shipping a libc.a without headers is a terrible thing to do. We're 
      still living on a prayer that libc was configured the same was as a default-configured
      xtensa gcc toolchain assumes it is. That part I cannot do anything about, unfortunately, 
      but it's no worse than it has been before.
      
      This enables our source files to compile successfully using the standard header files, 
      and use the typical malloc()/calloc()/realloc()/free(), the strwhatever()s and 
      memwhatever()s. These end up, through macro and linker magic, mapped to the 
      appropriate SDK or ROM functions.
      526d21da
  3. 19 May, 2019 1 commit
  4. 01 May, 2019 1 commit
  5. 05 Apr, 2019 2 commits
    • Terry Ellison's avatar
      SDK 3.0 release (#2692) · 9a471079
      Terry Ellison authored
      * Rebaseline firmware to non-OS SDK version 3.0
      * Note that SDK version 3.0 introduces the concept of a Flash Partition Table(PT).  This is located at Flash offset 0x10000 in our firmware build.
      * The firmware is now PT aware with both LFS and SPIFFS taking their partition size and location from the PT
      * A new tool `tools/nodemcu-partition.py` is now used to initialise these data and can also download LFS and SPIFFS images to these partitions.
      9a471079
    • Natalia's avatar
      I2C sw driver with support of multiple buses, Slow, Fast, FastPlus, and... · ab61e9c0
      Natalia authored
      I2C sw driver with support of multiple buses, Slow, Fast, FastPlus, and user-defined speed selection (#2465)
      
      * I2C driver speed-up, i2c.SLOW, i2c.FAST and user-defined speed selection
      
      * - Multiple buses (up to 10) with different speeds on each bus
      - Standard(Slow, 100kHz), Fast(400kHz) and FastPlus(1MHz) modes or an 
      arbitrary clock speed
      - Sharing SDA line over multiple I²C buses to save available pins
      - GPIO16 pin can be used as SCL pin, but it does not support clock 
      stretching and selected bus will be limited to FAST speed.
      
      * Dynamic memory allocation, error checks, simplification, timing tweaks.
      
      * Separated the code of old driver for better compatibility and simplicity
      
      * Change of driver interface
      
      * Add bus status check in setup(); simplify getDC(); remove unnesessary lines in ACK read/write
      
      * Fix for moved doc file and trailing whitespaces
      ab61e9c0
  6. 17 Feb, 2019 1 commit
  7. 22 Jun, 2018 1 commit
  8. 17 Mar, 2018 2 commits
  9. 28 Feb, 2018 1 commit
  10. 23 Feb, 2018 1 commit
  11. 13 Feb, 2018 1 commit
  12. 17 Dec, 2017 1 commit
  13. 01 Mar, 2017 1 commit
  14. 06 Feb, 2017 1 commit
  15. 10 Jan, 2017 1 commit
  16. 04 Jan, 2017 1 commit
  17. 24 Dec, 2016 1 commit
    • Philip Gladstone's avatar
      Various minor bits of cleanup (#1647) · feab8b22
      Philip Gladstone authored
      * Check the return code of the read function when doing crypto.fhash so that we don't pass negative lengths to the hashing functions
      *  Fix various assert failures in the LVM arising from rotables. No functional change
      * Add the gpio interrupt time to the callback (and pass it from the interrupt handler)
      * Get the PC right in the perf module
      * Make the headers static in the websocket module
      * Fix the documentation
      feab8b22
  18. 11 Dec, 2016 1 commit
  19. 05 Sep, 2016 1 commit
    • Arnim Läuger's avatar
      Add FatFs and SD card support (#1397) · ecf8bd98
      Arnim Läuger authored
      * Add FatFs
      * enable BUILD_FATFS for all-module build
      * push vfs into rest of firmware
      * align maximum filename length
      * increase timeout for acmd41 during card initialization
      * switch from DOS to Unix path semantics chdrive() is substituted by chdir()
      * update to fatfs R.012a incl. patches 1-6
      * add callback for rtc provisioning in file
      * update docs
      ecf8bd98
  20. 05 Jun, 2016 1 commit
    • Arnim Läuger's avatar
      Add pcm module. (#1255) · d4166489
      Arnim Läuger authored
      * Add pcm module.
      * Add network streaming example.
      * document hw_timer dependency with pwm
      * Add vu peak callback.
      d4166489
  21. 16 Mar, 2016 1 commit
  22. 02 Mar, 2016 1 commit
  23. 01 Mar, 2016 1 commit
  24. 29 Feb, 2016 1 commit
    • philip's avatar
      Squashed commit of the following: · d40ee50a
      philip authored
      commit 2c7c3fc3985cc32866e8af496abea9971eaee90a
      Merge: 9179dae 41022c3b
      Author: philip <philip@gladstonefamily.net>
      Date:   Sun Feb 28 14:47:47 2016 -0500
      
          Merge remote-tracking branch 'upstream/dev' into rotary_2
      
      commit 9179dae0824e6b35ad09e5113aacc26dc91692c0
      Author: philip <philip@gladstonefamily.net>
      Date:   Fri Feb 26 20:53:27 2016 -0500
      
          Review comments
      
      commit 67741170e20ccb2b636e701f0664feff2aafbb4c
      Author: philip <philip@gladstonefamily.net>
      Date:   Fri Feb 26 20:59:49 2016 -0500
      
          Squashed commit of the following:
      
          commit 8c9a64731c4a8b9aedda18a399b433b173d2199f
          Merge: 085935f 19d3c1d5
          Author: philip <philip@gladstonefamily.net>
          Date:   Fri Feb 26 20:58:10 2016 -0500
      
              Merge remote-tracking branch 'upstream/dev' into rotarymod
      
              Conflicts:
              	app/platform/platform.c
      
          commit 085935fc56986d607ff5e05d1663970331959c34
          Author: philip <philip@gladstonefamily.net>
          Date:   Fri Feb 26 20:53:27 2016 -0500
      
              Review comment
      
          commit 7732fd2d1044f28b8fcf5b0aa0f76d76fe80f449
          Author: philip <philip@gladstonefamily.net>
          Date:   Sat Feb 20 12:10:38 2016 -0500
      
              Module to handle rotary decoders
      
              Eliminate ROTARY_DEBUG
      
              Remove unused file
      
      Eliminate a malloc call
      
      Cleaned up the register code. Now 0x114 bytes
      
      Fix bug with clearing bits in one case
      
      Fix the type in the #define name
      d40ee50a
  25. 25 Feb, 2016 1 commit
  26. 18 Feb, 2016 2 commits
  27. 17 Feb, 2016 1 commit
    • TerryE's avatar
      Add New Tasking I/F and rework GPIO, UART, etc to support it · 49733f6f
      TerryE authored
      As with the last commit this rolls up the follwowing, but include the various
      review comments on the PR.
      
      -   **Documentation changes**. I've added the taks FAQ as a stub new Extension
      developer FAQ, and split the old FAQ into a Lua Developer FAQ and a Hardware
      FAQ.
      
      -   **Tasking I/F**.  New `app/task/Makefile`, `app/task/task.c`,
      `app/include/task/task.h` and `app/Makefile` as per previous commit.  Cascade
      changes to `app/driver/uart.c`, `app/include/driver/uart.h`,
      `app/user/user_main.c` and `app/modules/node.c`
      
      -   **GPIO Rework** to `app/modules/gpio.c` and `pin_map.[hc]`, `platform.[hc]`
      in `app/platform`
      
      -   **Other Optimisations** Move the `platform_*_exists()` from
      `app/platform/common.c` to static inline declarations in `platform.h` as
      this generates faster, smaller code. Move lgc.a routines out of iram0.
      49733f6f
  28. 15 Feb, 2016 1 commit
  29. 09 Feb, 2016 1 commit
  30. 22 Jan, 2016 1 commit
  31. 20 Jan, 2016 1 commit
  32. 21 Dec, 2015 1 commit
  33. 12 Dec, 2015 2 commits
    • Johny Mattsson's avatar
      d84a24fc
    • Johny Mattsson's avatar
      Cleaned up all uses of INTERNAL_FLASH_START_ADDRESS. · c4e8b04f
      Johny Mattsson authored
      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.
      c4e8b04f