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

    Features wish list

    Scheduled Pinned Locked Moved Announcements & News
    48 Posts 23 Posters 25.7k Views 25 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
      Colateral @daniel
      last edited by

      @daniel Wifi rssi() is important in IOT.

      1 Reply Last reply Reply Quote 3
      • L Offline
        livius @daniel
        last edited by livius

        @daniel
        Will be good to have built in DTMF generator :)

        think about people first, then computers

        1 Reply Last reply Reply Quote 1
        • B Offline
          beyonlo @alexander
          last edited by

          @alexander said in Features wish list:

          Direct hardware access (similar to the examples on Micropython speed), i.e. the Viper code emitter or some other approach to allow high speed digital IO

          I agree.

          1 Reply Last reply Reply Quote 1
          • B Offline
            beyonlo @Roosted
            last edited by

            @Roosted said in Features wish list:

            @jasonriedy said in Features wish list:

            • Enterprise WPA support

            802.11X is the feature i'm really waiting for!
            I've seen Wi-Fi marked as 'done' somewhere, but it is not usable in enterprise/educational environments...

            For as far as I know 802.11X is supported in the ESP-IDF, so it would 'just' need to be implemented in python - right?

            Thanks for steady development pace! :)

            I think you are talking about 802.1x, correct?

            Thanks.

            1 Reply Last reply Reply Quote 0
            • G Offline
              gertjanvanhethof Pybytes Beta
              last edited by

              @daniel One important feature to bring the xxPy devices to a higher enterprise ready plan is to add functionality to do firmware updates and software updates over-the-air.
              Are there plans to add this?

              1 Reply Last reply Reply Quote 1
              • D Offline
                daniel
                last edited by

                @gertjanvanhethof yes, there are plans for this.

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

                  @daniel BLE multipoint it is a MUST.

                  B 1 Reply Last reply Reply Quote 1
                  • B Offline
                    beyonlo @Colateral
                    last edited by

                    @Colateral said in Features wish list:

                    @daniel BLE multipoint it it MUST.

                    Yes, that is a very good feature.

                    1 Reply Last reply Reply Quote 0
                    • guyG Offline
                      guy
                      last edited by

                      Must have:

                      • Encryption of login details on the module - currently I have to hard-code login details (eg. so WiFi on the LoPy can get in to my home network) in plain text. I imagine it's similar situation with any other login details on the device - unless I'm missing something? I can 1-way encrypt, but then can't use the encrypted details to log in to my wifi router.

                      Should have:

                      • Remotely update modules (firmware and scripts) via internet, and also suggest a best practice blueprint for doing updates offline (eg. via USB, SD and maybe even BT?)
                      • Number the pins on the module and the headers on the expansion board the same - very confusing currently

                      Nice to have:

                      • Some easy way for end-user to put their wifi login details on to the module (a good example is electric imp), ideally from mobile phone or USB.
                      • Possibly some way to kill threads when a script exists (currently they seem to linger)
                      L 1 Reply Last reply Reply Quote 1
                      • L Offline
                        livius @guy
                        last edited by livius

                        Will be good for developing to have option like save errors to flash
                        e.g. if we are connected to the board with UART then we can see errors like guru mediation printed.
                        But when we are not connected by UART we do not know what was the error message
                        and after reboot we lost any info

                        Will be good to have option e.g.

                        machine.SaveErrors=True
                        

                        and it save errors to flash to file e.g. LastError.log

                        But i do not know if this is simple to accomplish and if any possible?

                        think about people first, then computers

                        1 Reply Last reply Reply Quote 1
                        • B Offline
                          BetterAuto Pybytes Beta @daniel
                          last edited by

                          @daniel said in Features wish list:

                          @gertjanvanhethof yes, there are plans for this.

                          Daniel does the team have a road map for OTA? Approximate timeline. In every new firmware announcement that's the first thing I look for :-)

                          I was grateful to see the WDT fix. Just in time.

                          Also I second the rssi request.

                          1 Reply Last reply Reply Quote 0
                          • R Offline
                            RichardTXD @daniel
                            last edited by

                            @daniel
                            For me, I need 'survivability'. I really would like to know a crash has happened, the reason, and then be able to recoiver from it instead of going back to REPL.
                            Crashing is bad, non-recovery and not knowing what caused it is a lot worse.
                            For boards that are used remote and are really difficult to get back to update firmware etc - anything that makes them more reliable is a huge bonus.
                            Maybe a flag that causes reset on crash? Maybe more return-cause values from a reset? Maybe a stronger exception mechanism, a global one? Maybe a small list of functions that were executed prior to the crash that would help diagnose the fault?
                            Yes, I suspect that a crash may recur because the same code may be executed time and again. At least these options would allow some kind of diagnoastic later. PArticularly if the crash returned a list of functions that could be saved to SD on reset.
                            Thanks - Richard

                            B 1 Reply Last reply Reply Quote 0
                            • B Offline
                              bucknall @RichardTXD
                              last edited by

                              Hi @RichardTXD, you might want to check out the Watch Dog Timer, which is intended to help resolve the crashing issue you might be concerned with. https://docs.pycom.io/pycom_esp32/library/machine.WDT.html?highlight=watchdog

                              Let me know if this is what you're after!

                              Developer Evangelist - Pycom

                              R 1 Reply Last reply Reply Quote 0
                              • R Offline
                                RichardTXD @bucknall
                                last edited by

                                @bucknall
                                Hi and thanks for taking the time.
                                Yes and no. WDT on the same silicon is a-maybe but I prefer an external WDT. Same for Brown Out Detection (BOD). I think WDT has only just now become available. Not sure on BOD.
                                Silicon latchup is something I had to deal with on older CPUs and we tackled that by down powering and indeed it was the only way. Typically this happened at about the 0.6 volt VCC level - despite a 90 day run time on batteries, users let the product go flat - but they were an old CPU without BOD or a good POR etc.
                                I am still of the opinion it would be nice to know what caused a crash. A queue of function calls that can be unraveled and then used to get an idea of where a crash happened. We do this in a legacy product and store it in I2C for later. We'll probably implement that for our application at least during debugging.
                                Thank you for your attention - Richard

                                1 Reply Last reply Reply Quote 0
                                • robert-hhR Offline
                                  robert-hh @daniel
                                  last edited by

                                  @daniel For the good of all of us who re-flash frequently:

                                  • a jumper on the Expansion Board to connect GPIO0 (G23) and GND, or the two transistor logic that makes use of the logic of esptool.py for firmware flashing (see wemos D1, Huzzah feather, ...).
                                  1 Reply Last reply Reply Quote 0
                                  • D Offline
                                    daniel
                                    last edited by

                                    @robert-hh we are doing better than that. There will be an auto-program logic that won't require a jumper. This functionality is also possible on Pytrack/Pysense and we will enable it shortly.

                                    R 1 Reply Last reply Reply Quote 1
                                    • R Offline
                                      redimo @daniel
                                      last edited by

                                      @daniel How far are you with the:
                                      bluetooth.get_adv() returns a list of all received advertisements in the FIFO instead of just one.
                                      ?

                                      We are experiencing problems were 2 WiPy 2.0 can be next to each other, but one will NEVER find anything at all whilst the other is constantly reporting found ADVs. Is there any fix for this or schedule? Its kinda worrysome as we've been having this issue for Months and have yet to receive anything from you, even after having e-mail contact with your devs.

                                      1 Reply Last reply Reply Quote 0
                                      • D Offline
                                        daniel
                                        last edited by

                                        @redimo sorry about that. Please explain what is your feature request... You want get_adv() to return a list instead of just one, correct?

                                        Also, that problem that you describe with the 2 WiPy's can you elaborate more? Thanks.

                                        R 1 Reply Last reply Reply Quote 0
                                        • R Offline
                                          redimo @daniel
                                          last edited by redimo

                                          @daniel This is our Code:

                                          from network import Bluetooth
                                          import binascii
                                          import dataStore

                                          class bluetooth:
                                          data = dataStore.DataStore ()
                                          bluetooth = Bluetooth()
                                          bluetooth.init()

                                          def __init__(self,data,):
                                              #Init Bluetooth and enable Scanning
                                              self.data = data 
                                              if not self.bluetooth.isscanning():
                                                  self.bluetooth.start_scan(-1)
                                            
                                          
                                          def scan(self):
                                              adv =self.bluetooth.get_adv()       
                                              try: 
                                                  #look if the receved mac is in the data store
                                                   for x in range(0, (self.data.getAnzahlTokens())):                
                                                      if str(binascii.hexlify(adv.mac)) == str(self.data.getnextMac()): 
                                                              #lay down the RSSI value to the DataStore
                                                              print('*********************************************')
                                                              print("Geraete Mac Adresse = {}".format(binascii.hexlify(adv.mac)))
                                                              print("Geraete Sendestaerke = {}".format(adv.rssi)) 
                                                              data_stream= str(adv.data)
                                                              self.data.setRssi(binascii.hexlify(adv.mac), adv.rssi)
                                                              self.data.setDaten(binascii.hexlify(adv.mac), data_stream.replace("\\", ";"))
                                                              break
                                              except:
                                                  pass
                                          

                                          We use to look for a certain MAC. Sometimes we get plenty of Results, sometimes we dont....and when we dont, we usually will never get any Data from that WiPy and it will need several restarts before it finds anything again.

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

                                            @daniel said in Features wish list:

                                            Encryption of Python scripts to protect code.

                                            Do you have any info about above feature?

                                            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
                                            • 2 / 3
                                            • First post
                                              Last post

                                            Pycom on Twitter

                                            Pycom