In many environments you can go into a debugger and poke around. We don’t have that ability in CircuitPython, though. If you’re like this author, you sprinkle tactical print statements as needed.
Afterwards you probably go through and remove them or comment them out. Sometimes you miss some. Sometimes you’d like to leave them in place and be able to turn them on and off. There are times when you’d like to see some debugging information, and other times when you want to be notified of critical errors only.
A logging framework will let you do all that and more.
Specifically, the logging framework described in this guide will:
let you output messages at one of several levels of priority,
ignore messages below a specific priority,
automatically add a timestamp to messages,
provide the string format method support for building messages,
give you convenience methods for the outputting at standard priority levels,
control where messages go, and
make it easy to add new places for messages to go.
This guide will go over the use of the framework, walk through the implementation, and work through an example of adding a new destination capability.
Adafruit publishes a wide range of writing and video content, including interviews and reporting on the maker market and the wider technology world. Our standards page is intended as a guide to best practices that Adafruit uses, as well as an outline of the ethical standards Adafruit aspires to. While Adafruit is not an independent journalistic institution, Adafruit strives to be a fair, informative, and positive voice within the community – check it out here: adafruit.com/editorialstandards
Stop breadboarding and soldering – start making immediately! Adafruit’s Circuit Playground is jam-packed with LEDs, sensors, buttons, alligator clip pads and more. Build projects with Circuit Playground in a few minutes with the drag-and-drop MakeCode programming site, learn computer science using the CS Discoveries class on code.org, jump into CircuitPython to learn Python and hardware together, TinyGO, or even use the Arduino IDE. Circuit Playground Express is the newest and best Circuit Playground board, with support for CircuitPython, MakeCode, and Arduino. It has a powerful processor, 10 NeoPixels, mini speaker, InfraRed receive and transmit, two buttons, a switch, 14 alligator clip pads, and lots of sensors: capacitive touch, IR proximity, temperature, light, motion and sound. A whole wide world of electronics and coding is waiting for you, and it fits in the palm of your hand.
Have an amazing project to share? The Electronics Show and Tell is every Wednesday at 7:30pm ET! To join, head over to YouTube and check out the show’s live chat and our Discord!
Python for Microcontrollers – Adafruit Daily — Select Python on Microcontrollers Newsletter: PyCon AU 2024 Talks, New Raspberry Pi Gear Available and More! #CircuitPython #Python #micropython @ThePSF @Raspberry_Pi
EYE on NPI – Adafruit Daily — EYE on NPI Maxim’s Himalaya uSLIC Step-Down Power Module #EyeOnNPI @maximintegrated @digikey