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

    Alex's Corner - Week 6 - Best Practices for Deployment

    Scheduled Pinned Locked Moved Events
    webinarbest practicespycom
    18 Posts 6 Posters 4.7k Views 6 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.
    • PiAirP Offline
      PiAir
      last edited by

      OK, last one for this video. You create the interrupt handler using:

      def pin_handler(arg):
      

      From this page I understand that arg contains the Pin object. So I would be able to create one handler that handles interrupts from multiple pins, correct?
      On that page, also Pin.IRQ_LOW_LEVEL and Pin.IRQ_HIGH_LEVEL are mentioned. Would I be able to for example use that so set an interrupt that triggers a funciton if the temperature provided by an DHT11 gets to a low or high level?

      The documentation here is a bit outdated? It states that only the Alarm class and the Pin provide the .callback() method while at least the Bluetooth class also supports it.

      Sorry about all these questions after the livestream itself!

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

        @PiAir
        this is about voltage/state indicator
        IRQ_LOW_LEVEL 0
        IRQ_HIGH_LEVEL 1 - 3V3
        IRQ_FALLING - The falling edge of the signal
        IRQ_RISING - The rising edge of the signal

        think about people first, then computers

        PiAirP 1 Reply Last reply Reply Quote 1
        • PiAirP Offline
          PiAir @livius
          last edited by

          @livius Ok...but when would I prefer using IRQ_HIGH_LEVEL over IRQ_RISING in an interrupt? Is it just there for redundancy or are there specific use case that would make you use one or the other?

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

            @PiAir
            You can add or between and fire in both cases :-)
            e.g.

            Pin.IRQ_FALLING | Pin.IRQ_RISING
            

            are there specific use case
            This depend - e.g. how fast signal raisin/falling

            think about people first, then computers

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

              Hi Alex,
              Thank you for posting these tutorial videos, I find them very useful.
              You refer to using a configuration file for wifi password, UUID etc., I would be grateful if you would outline the structure of this file as I would like to use this technique, but am unsure how to create such a file.

              Regards,

              Mervyn

              PiAirP 1 Reply Last reply Reply Quote 0
              • PiAirP Offline
                PiAir @tenspot
                last edited by

                @tenspot have a look at this config.py and this file that uses it.

                Basically the config.py is a .py file where you declare the variables:

                GATEWAY_ID = '11aa334455bb7788'
                
                SERVER = 'router.eu.thethings.network'
                PORT = 1700
                
                NTP = "pool.ntp.org"
                NTP_PERIOD_S = 3600`
                
                WIFI_SSID = 'my-wifi'
                WIFI_PASS = 'my-wifi-password'
                

                Then, if you want to use them in another python file, you import it using:

                import config
                

                After that you can address any variable that you have defined in that config.py file like (for example):

                config.WIFI_SSID
                

                etc

                RobTuDelftR T 2 Replies Last reply Reply Quote 0
                • RobTuDelftR Offline
                  RobTuDelft @PiAir
                  last edited by

                  @tenspot It's also a convention to write the constant 'variables' in all uppercase.

                  Without data you're just another person with an opinion.
                  Hackster | About me

                  1 Reply Last reply Reply Quote 0
                  • T Offline
                    tenspot @PiAir
                    last edited by

                    @PiAir Hi, Thanks for your reply, I didn't realise it was that simple! Thanks to Rob also for your comment on capitalisation of constants. Knowledge of these things all helps to improve my code readability and style.

                    B PiAirP 2 Replies Last reply Reply Quote 0
                    • B Offline
                      bucknall @tenspot
                      last edited by

                      Hi @tenspot, apologies for the delay getting back to you, I have been busy with events this week! Thanks @RobTuDelft and @PiAir for answering these questions!

                      Developer Evangelist - Pycom

                      T 1 Reply Last reply Reply Quote 0
                      • T Offline
                        tenspot @bucknall
                        last edited by

                        @bucknall No problem. Thanks again for the video tutorials.

                        1 Reply Last reply Reply Quote 1
                        • PiAirP Offline
                          PiAir @tenspot
                          last edited by PiAir

                          @tenspot You're welcome. And if you like video tutorials, I can also recommend the ones by Tony DiCola from Adafruit. Although they are not LoPy/Pycom specific (he often uses the Adafruit boards) they are very informative. That is how I learned microPython:

                          https://www.youtube.com/playlist?list=PLjF7R1fz_OOXrI15wuXeESA0aA4VzcWSi

                          T 1 Reply Last reply Reply Quote 2
                          • T Offline
                            tenspot @PiAir
                            last edited by

                            @PiAir Thanks for the link, I will check it out.

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

                            Pycom on Twitter

                            Pycom