Welcome to the Pycom forum Forum
    • \[\[global:header.categories\]\]
    • \[\[global:header.recent\]\]
    • \[\[global:header.tags\]\]
    • \[\[global:header.popular\]\]
    • Login

    Explore Pybytes | Official Documentation | Report a Firmware Bug/Issue | GitHub

    New firmware release 1.4.0.b1

    Scheduled Pinned Locked Moved Announcements & News
    65 Posts 15 Posters 40.7k Views 14 Watching
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • C Offline
      crankshaft @jmarcelino
      last edited by

      @mohpor, @jmarcelino, @livius - Thanks for the suggestions regarding MQTT and BME280 and memory etc.

      Compared to the Si7021 AND SHT21, the BME requires a lot more code in the driver library to extract the data, probably 3 times as much as for the S* devices, which are really simple and is what I am using now.

      Other than getting data about the environment, I need to get data from other sensors, and really need to provide a simple HTTP server so that the device can initially be configured (an maintained) from a web browser and a few other things too.

      My code needs to be very robust as once it is deployed (on the other side of the world) it needs to look after itself, and manage any and all errors, and with the limited code space right now I simply cannot do this.

      I know that if I strip down to bare functionality, I could get the basics to work, but that's not what I am after, I need much more than I have now in order for this project to succeed.

      If I were to use a 8266 device (nodeMCU or micropython) then I believe I can get it all in, and my expectations were that I would be able to do more on the ESP32 rather than less.

      I don't really require any help with the programming side of things right now, just need more space to breathe :-)

      L 1 Reply Last reply Reply Quote 0
      • L Offline
        livius @crankshaft
        last edited by

        @crankshaft
        you can compile py file it use then much less memory
        but still this require custom firmware build with enabled option for compiled modules

        look here:
        https://forum.pycom.io/topic/486/v-1-8-7-micropython-released-support-importing-compiled-mpy-files-more-ram/2
        and here - detile how to do this:
        https://forum.pycom.io/topic/453/memoryerror-memory-allocation-failed-allocating-2048-bytes-lopy-1-2-0-b1/2

        think about people first, then computers

        1 Reply Last reply Reply Quote 0
        • T Offline
          tholden
          last edited by

          machine.idle is not working.

          I am executing it as the first thing in the code, but it still continues execution

          R 1 Reply Last reply Reply Quote 1
          • R Offline
            robrush @tholden
            last edited by

            @tholden agree with you. See my comment below

            1 Reply Last reply Reply Quote 0
            • M Offline
              mohpor
              last edited by

              @sakis

              Now I can see why everybody submit their issues here.

              I have opened an issue on Github's repo, no one even acknowledges my issue there. People get way more attention from posting here.

              1 Reply Last reply Reply Quote 0
              • C Offline
                Colateral @livius
                last edited by

                @livius Have you succeed to get data from BMP180 . I am always get "I2C bus error" when I am trying to instantiate bmp180.
                Debuging, I2C bus scan displays 119 address available, but when I simply read the bmp180 chip id, with i2c.readfrom_mem(119, 0xD0, 2) I am getting "I2C bus error".

                This is happening always on LoPy.

                L 1 Reply Last reply Reply Quote 0
                • L Offline
                  livius @Colateral
                  last edited by

                  @Colateral
                  yes i can read data from it but fix is not clear to me - i still can not diagnose what is crux of the problem.

                  I can not work with BMP180 alone i must have something more on bus like e.g. light sensor BH1750
                  if i reverse sensors initialization order i got always I2C bus error
                  it looks like i must write something one to i2c and then i can read from it or vice versa.
                  It is not connected with the resistance or the capacitance.

                  I do not know if i2c is now hardware or still software implementation

                  think about people first, then computers

                  J C 2 Replies Last reply Reply Quote 0
                  • J Offline
                    jmarcelino @livius
                    last edited by

                    @livius said in New firmware release 1.4.0.b1:

                    I do not know if i2c is now hardware or still software implementation

                    i2c is still done in software.

                    Is anyone using external pull-up resistors on their I2C? I see the internal ESP32 pull-ups are enabled in the code, but have not seen any reference to what the resistance value is like or attempted to measure it.

                    L 1 Reply Last reply Reply Quote 0
                    • L Offline
                      livius @jmarcelino
                      last edited by

                      @jmarcelino said in New firmware release 1.4.0.b1:

                      I tested with and without resistors but "nothing" change
                      only reverse order of initialization of sensors help

                      difference between sensors is that in light sensor first is memwrite
                      in bm180 first is memread

                      and problem appear in 1.4 version of firmware - previously all work without any problem
                      i do not dig what was changed on esp-idf in the mean time

                      think about people first, then computers

                      1 Reply Last reply Reply Quote 0
                      • C Offline
                        Colateral @livius
                        last edited by

                        @livius Using the same board and connectivity, I can tell you that I succeed to read BME280 (alone) without any resistors or etc.

                        I have 2 BMP180 sensors from 2 different providers. BME280 and these 2 sensors, I can read them with Arduino ... but not at all with the PyCom I2C stack. This make me think that something is "nasty" with in the I2C implementation...

                        Which rate are did you configured your I2C baudrate in order to read BMP180?
                        Using your BMP180, If you run: print(i2c.readfrom_mem(119, 0xD0, 2)) ... can you got the chip id?

                        L 1 Reply Last reply Reply Quote 0
                        • L Offline
                          livius @Colateral
                          last edited by livius

                          @Colateral
                          bus = I2C(0, I2C.MASTER, baudrate=100000, pins=("P19", "P20"))

                          return:
                          b'U\x02'

                          print(ubinascii.hexlify(bus.readfrom_mem(119, 0xD0, 1))) 
                          b'55'
                          print(ubinascii.hexlify(bus.readfrom_mem(119, 0xD0, 2))) 
                          b'5502'
                          

                          and chip revision:

                          >>> print(ubinascii.hexlify(bus.readfrom_mem(119,0xd1, 2))) 
                          b'0206'
                          

                          it looks ok 550206

                          think about people first, then computers

                          1 Reply Last reply Reply Quote 0

                          Hello! It looks like you're interested in this conversation, but you don't have an account yet.

                          Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

                          With your input, this post could be even better 💗

                          Register Login
                          • 1
                          • 2
                          • 3
                          • 4
                          • 3 / 4
                          • First post
                            Last post

                          Pycom on Twitter

                          Pycom