Navigation

    Welcome to the Pycom forum

    Forum

    • Login
    • Search
    • Categories
    • Recent
    • Tags
    • Popular
    1. Home
    2. Popular

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

    Log in to post
    • All categories
    • Announcements & News
    •      Beta Announcements & Development News
    •      Announcements only for members
    • Helium Hotspot
    •      Support
    • Pylife
    • Pybytes IoT platform
    •      Announcements & News
    •      Ideas
    •      Support & Troubleshooting
    • Getting Started
    •      Discussion
    •      WiPy 2&3
    •      LoPy
    •      SiPy
    •      GPy
    •      FiPy
    •      Pymakr
    •      Pymate
    •      Expansion Board
    •      MicroPython
    • Tutorials
    •      Projects
    •      Guides
    • Firmware
    •      Discussion
    •      Enhancements
    •      Issues & Bugs
    • Wireless Technologies
    •      WiFi
    •      Bluetooth
    •      LoRa
    •      Sigfox
    •      Cellular
    • Software Tools
    •      Discussion
    •      Enhancements
    •      Issues & Bugs
    • Events
    • Comments & Feedback
    • Jobs at Pycom
    • PyGo
    • All Topics
    • New Topics
    • Watched Topics
    • Unreplied Topics
    • All Time
    • Day
    • Week
    • Month

    • A

      pytrack sample code
      Getting Started • pytrack • • abhishek2101  

      32
      0
      Votes
      32
      Posts
      4110
      Views

      dan

      @abhishek2101 they're linked below in @jcaron's post: ... You should probably try to dump more information from the GPS chip so see what's going on. Also note that the L76GNSS.py module is pretty basic (for instance it only parses GPS data, while the chip is capable of using other GNSS). You should explore alternatives, such as: micropyGPS this alternative L76GNSS module
    • T

      GY-87 micropython library
      Discussion • lopy4 micropython gy-80 • • tttadam  

      32
      0
      Votes
      32
      Posts
      5126
      Views

      robert-hh

      @tttadam Updated code. The name of the methods are changed to reflect PEP8. SO readRaw() -> read_raw and a new read_scaled(), which returns the values as Gauss and °C. The constructor has an optional second argument for the temperature offset in °C . # # initial code by Sebastian Folz, M.Sc. at # http://nobytes.blogspot.com/2018/03/qmc5883-magnetic-field-sensor.html # which, I assume, was itself ported from C-Code # See also https://github.com/RigacciOrg/py-qmc5883l # # Changes and Additions: # - port to micropython's I2C methods # - add method read() for scaled values # - reading register values into a static buffer # - parsed register values in one single struct call # - changed method names according to PEP8 # - apply PyLint and fixed bugs & warnings reported by it # import time import struct from machine import idle class QMC5883: #Default I2C address ADDR = 0x0D #QMC5883 Register numbers X_LSB = 0 X_MSB = 1 Y_LSB = 2 Y_MSB = 3 Z_LSB = 4 Z_MSB = 5 STATUS = 6 T_LSB = 7 T_MSB = 8 CONFIG = 9 CONFIG2 = 10 RESET = 11 STATUS2 = 12 CHIP_ID = 13 #Bit values for the STATUS register STATUS_DRDY = 1 STATUS_OVL = 2 STATUS_DOR = 4 #Oversampling values for the CONFIG register CONFIG_OS512 = 0b00000000 CONFIG_OS256 = 0b01000000 CONFIG_OS128 = 0b10000000 CONFIG_OS64 = 0b11000000 #Range values for the CONFIG register CONFIG_2GAUSS = 0b00000000 CONFIG_8GAUSS = 0b00010000 #Rate values for the CONFIG register CONFIG_10HZ = 0b00000000 CONFIG_50HZ = 0b00000100 CONFIG_100HZ = 0b00001000 CONFIG_200HZ = 0b00001100 #Mode values for the CONFIG register CONFIG_STANDBY = 0b00000000 CONFIG_CONT = 0b00000001 # Mode values for the CONFIG2 register CONFIG2_INT_DISABLE = 0b00000001 CONFIG2_ROL_PTR = 0b01000000 CONFIG2_SOFT_RST = 0b10000000 def __init__(self, i2c, offset=50.0): self.i2c = i2c self.temp_offset = offset self.oversampling = QMC5883.CONFIG_OS64 self.range = QMC5883.CONFIG_2GAUSS self.rate = QMC5883.CONFIG_100HZ self.mode = QMC5883.CONFIG_CONT self.register = bytearray(9) self.reset() def reset(self): self.i2c.writeto_mem(QMC5883.ADDR, QMC5883.RESET, 0x01) time.sleep(0.1) self.reconfig() def reconfig(self): # print("{0:b}".format(self.oversampling | self.range | self.rate | self.mode)) self.i2c.writeto_mem(QMC5883.ADDR, QMC5883.CONFIG, self.oversampling | self.range | self.rate | self.mode) time.sleep(0.01) self.i2c.writeto_mem(QMC5883.ADDR, QMC5883.CONFIG2, QMC5883.CONFIG2_INT_DISABLE) time.sleep(0.01) def set_oversampling(self, x): self.oversampling = x self.reconfig() def set_range(self, x): self.range = x self.reconfig() def set_sampling_rate(self, x): self.rate = x self.reconfig() def ready(self): status = self.i2c.readfrom_mem(QMC5883.ADDR, QMC5883.STATUS, 1)[0] # prevent hanging up here. # Happens when reading less bytes then then all 3 axis and will end up in a loop. # So, return any data but avoid the loop. if status == QMC5883.STATUS_DOR: print("Incomplete read") return QMC5883.STATUS_DRDY return status & QMC5883.STATUS_DRDY def read_raw(self): try: while not self.ready(): idle() self.i2c.readfrom_mem_into(QMC5883.ADDR, QMC5883.X_LSB, self.register) except OSError as e: print ("OSError", e) pass # just silently re-use the old values # Convert the axis values to signed Short before returning x, y, z, _, t = struct.unpack('<hhhBh', self.register) return (x, y, z, t) def read_scaled(self): x, y, z, t = self.read_raw() scale = 12000 if self.range == QMC5883.CONFIG_2GAUSS else 3000 return (x / scale, y / scale , z / scale, (t / 100 + self.temp_offset))
    • A

      FiPy firmware upgrade failed - Cat M1
      FiPy • pytrack firmware update cat m1 sqnsupgrade • • ArnaudP  

      32
      2
      Votes
      32
      Posts
      5644
      Views

      rskoniec

      @john-baird Can you try this? https://forum.pycom.io/topic/4022/unable-to-update-gpy-modem-firmware/4
    • D

      Firmware release 1.1.0.b1
      Announcements & News • • daniel  

      32
      5
      Votes
      32
      Posts
      12016
      Views

      F

      @bmarkus It can be a LoRaWAN nano gateway listening to one channel at a time. Be mindful that this is not LoRaWAN compliant but is very useful in certain conditions. We will release the full firmware with this functionality early Feb.
    • soren

      Firmware update, not possible on either windows or mac osx...
      LoPy • lopy firmware firmware update usb firmware upgrad • • soren  

      32
      0
      Votes
      32
      Posts
      14151
      Views

      soren

      @robert-hh hello robert, thanks for all the great help - it's really awesome!! I managed to figure out, when booting in safe mode - that i can temporarily connect via ftp again (because the boot.py is bypassed).. and thus make changes to the boot.py. soo.. the thing is though, that it seems the lopy does not care AT ALL about what I put into the boot.py script now, even after unplugging the short between G28 and 3v (which I assume should make it go back to loading boot and main). EDIT tinkering more about, it turned out I had to set the heartbeat to false in order to use the rgbled onboard the lopy. well done soren. anyway, it is indeed responding now, but setting up the thing with custom wlan configuration is really difficult. this topic has become pretty messy. I tried to change the topic name, but got a message that i couldn't.. it is pretty misleading atm. are there any admins on here?
    • C

      Guru Meditation Error & Magnetic Interference (EMI/RFI)
      FiPy • fipy pytrack pysense guru meditation • • combaindeft  

      32
      0
      Votes
      32
      Posts
      4681
      Views

      J

      Seems like this is related to WIFI in some way. When turning off WIFI (pycom.wifi_on_boot(False)) problem goes away. I am not using WIFI in any way, but maybe powerlines or WIFI accesspoint makes my W01 panic? This is the application I have been running during the test: from machine import Pin import utime LED.append(Pin('P3', mode=Pin.OUT)) while True: LED.value(1) utime.sleep_ms(100) LED.value(0) utime.sleep_ms(100) I havent been able to decode the core dumps, can I send them to someone for investigation? This forum didn´t allow me to post it here.
    • D

      New firmware release 1.3.0.b1
      Announcements & News • • daniel  

      32
      7
      Votes
      32
      Posts
      13957
      Views

      Z

      If bluetooth was not working, than that could be blamed on tight loop without opportunity to release processor (sleep), but that is not the case. Following code takes few minutes to get to green light: import pycom from network import Bluetooth bluetooth = Bluetooth() pycom.heartbeat(False) # disable the heartbeat LED pycom.rgbled(0xff0000) pycom.rgbled(0x00ff00) pycom.rgbled(0x0000ff) It seems that same resource (line?) driving BLE is used for bit banging LED in 1.3... There is change about it in 1.4.0, so maybe this will be fixed.
    • J

      FiPy LTE not connecting after Upgrade Firmware
      FiPy • fipy firmware modem sequans • • Jordan Reyes  

      32
      1
      Votes
      32
      Posts
      5183
      Views

      I

      @steve-williams , I did some power mesurements here on the same setup I mentioned in my previous post to give you a clear picture about the current consumption while the modem is trying to attach so as to help you identifying the problem , in first trial I intentionally powered off the CAT-M1 network in office and run a script on GPY trying to attach you can see that the modem current consumption increases after sending attach request and keep trying to attach periodically, you can see that the Avg.current consumption when trying to attach can reach 285mA (150mA more than normal). The following image is when CAT-M1 network is back online and attaching is successful :
    • D

      New firmware release v1.11.0.b1 and new updater tool version v1.1.4.b1 (FiPy and GPy support)
      Announcements & News • firmware • • daniel  

      32
      2
      Votes
      32
      Posts
      8065
      Views

      D

      @Smeedy it will be available in a new release today or tomorrow.
    • robert-hh

      pymakr does not start
      MicroPython • • robert-hh  

      31
      0
      Votes
      31
      Posts
      11750
      Views

      robert-hh

      That's a point, but then pymakr should work reliably, like the Arduino UI does, as long as you stick with standard boards. At least, I never had any issues with installing Arduino on Linux or Windows. AFAIK, the Windows version of pymakr has no installation problems, but I just tried an early version for a few moments.
    • C

      DS18B20 on WiPi reading "none"
      WiPy 2&3 • • cbourne  

      31
      0
      Votes
      31
      Posts
      92
      Views

      optimho

      @cbourne Well done!
    • Roberto

      LoPy Nano-Gateway Extended (Timeout and Retry)
      Guides • • Roberto  

      31
      1
      Votes
      31
      Posts
      19681
      Views

      A

      @roberto I have used the above code and the communication between the one node and gateway is generated, but the device id and package. What is the procedure to get the exact connected device.Please update as soon as possible your help will be appreciable. Thank You
    • Don-iot

      Protecting your code
      Discussion • • Don-iot  

      31
      0
      Votes
      31
      Posts
      248
      Views

      Don-iot

      @jcaron Gotcha, we will perform new tests and get back. Thanks a lot.
    • M

      New order of LoPy - deep sleep issues?
      LoPy • lopy deep sleep • • mahe  

      31
      1
      Votes
      31
      Posts
      10438
      Views

      S

      I'm using an Lopy4 powered by a Lifepo4 battery. For testing purposes I'm reading a sensor (bme280), sending the data using lora and then going to sleep for about 10 minutes.
    • S

      LoPy4 change uplink channels by itself?
      LoPy • • sheng  

      31
      0
      Votes
      31
      Posts
      144
      Views

      Gusti Made Arya Wijaya

      @robert-hh Okay thanks, I will try this firmware, and test lora.remove_channel(i), then add channel AS923-2 freqs (921.4MHz & 921.6MHz ).
    • K

      boot.py reliability
      GPy • gpy deepsleep boot.py • • kjm  

      30
      0
      Votes
      30
      Posts
      3871
      Views

      A

      @robert-hh Thanks for the reply! So basically an unstable power supply can lead to flash errors. Good to know. (And you had it, I was using a Li-Ion 3.6V battery. I'll make sure to mention that next time)
    • nespressif

      Power supply issue by Vin on Sipy + Deep Sleep Shield
      SiPy • sipy power supply vin • • nespressif  

      30
      0
      Votes
      30
      Posts
      4790
      Views

      nespressif

      To close this post, I wanted to say that the issues I found in the deep sleep shield, have already been reported before in this forum. My mistake was not to do an exhaustive search before posting. Conclusion: the deep sleep shield has quite a few problems when powered by a lipo battery. *bradnz hace 12 meses For any one interested, or has this issue in the future I have resolved this by doing the following: Rolled back firmware to 1.7.9.b3 Used version 1.0.0 of the deepsleep.py file from github. Works fine now.* post1 post2 post3
    • T

      pysense: lots of invalid temp/hum values
      Getting Started • pysense temperature humidity • • thomas  

      30
      0
      Votes
      30
      Posts
      10527
      Views

      G

      @catalin Thank you for the response. Can you please provide the link to the forum thread debating this?
    • robert-hh

      LoPy and nanogateway example: Inaccurate timing prevent OTAA join
      LoPy • lopy ttn otaa timing • • robert-hh  

      30
      1
      Votes
      30
      Posts
      8912
      Views

      robert-hh

      @livius I made a version in which you can control the join behaviour. It is just a handful of code lines. You'll find it here: https://github.com/robert-hh/pycom-micropython-sigfox/tree/otaa I added an optional parameter to join. Edit: While testing it came again to my mind to me that you can achieve the same thing with the standard SW: step1: do an otaa join step2: take the parameters from the web console, use them as ABP parameters and use ABP join then with just the single frequency in the list of channels. If you then save the state to nvs_ram, you do not have to call join again. The keys will be restored by nvs_restore(), which you must call anyhow to set the counters.
    • B

      Helium Hotspot Miner - Batch 1 Available for Pre-order. Ships June 2022
      Helium Hotspot • • Bettina  

      29
      3
      Votes
      29
      Posts
      500
      Views

      A

      I guess there are multiple people asking the same question. It would be great if you can update us with the shipping dates for batch 1 miners since early June is already over and we never heard anything from you
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 5 / 10