Giter VIP home page Giter VIP logo

adafruit / adafruit_learning_system_guides Goto Github PK

View Code? Open in Web Editor NEW
987.0 58.0 769.0 516.88 MB

Programs and scripts to display "inline" in Adafruit Learning System guides

License: MIT License

Python 20.08% C 66.62% C++ 10.26% Shell 0.05% JavaScript 0.02% HTML 0.02% Processing 0.19% Assembly 0.18% Ruby 0.03% Jupyter Notebook 1.95% CMake 0.01% OpenSCAD 0.58% Makefile 0.01% C# 0.01% Dockerfile 0.01%
arduino-library

adafruit_learning_system_guides's Introduction

Introduction

This is a collection of smaller programs and scripts to display "inline" in Adafruit Learning System guides.

Adafruit is an Open Source company. To support Adafruit, please consider buying products at adafruit.com.

Starting in 2023, guides using a specific Adafruit board will be placed in a subdirectory with that product name to reduce the number of directories under the main directory. If you are creating a new guide, please check if your Adafruit board falls into one of these groups and make your project code directory in the appropriate subfolder.

  • Flora/
  • ItsyBitsy/
  • MagTag/
  • MEMENTO/
  • NeoTrellis/
  • PyLeap/
  • PyPortal/
  • QTPy/

If a new product or project group is contemplated, contact Learn moderators for guidance.

Issues

Issues with guides should be reported in the guide itself under "Feedback? Corrections?"

Make Your Own Guides

This repo is only for Adafruit approved Learning System Guides. If you'd like to write your own guide, see Create your own content with Adafruit Playground!.

Contributing and Testing

For details on contributing for Adafruit approved guides, see the guide Contribute to the Adafruit Learning System with Git and GitHub and Contribute to CircuitPython with Git and GitHub.

The code here is checked by GitHub Actions against Pylint (for CircuitPython code) or the Arduino compilation process.

Code in directories containing a file called .circuitpython.skip will be skipped by Pylint checks.

Code in directories containing a .[platformname].test file, such as .uno.test will be compiled against the corresponding platform.

Running pylint locally

Install a specific version of pylint under the name "pylint-learn":

pip install pipx
pipx install --suffix=-learn pylint==2.7.1

Then use the pylint_check script to run pylint on the files or directories of your choice (note that your terminal must be in the top directory of Adafruit_Learning_System_Guides, not a sub-directory):

./pylint_check CircuitPython_Cool_Project

Licensing

Adafruit Learning System code files should have author and license information conforming to the open SPDX specification. See this page for more.

Updated November 29, 2023

adafruit_learning_system_guides's People

Contributors

blackbaud-aarondershem avatar blitzcitydiy avatar brentru avatar caternuson avatar cedargrovestudios avatar cogliano avatar collincunningham avatar craigargh avatar dastels avatar dhalbert avatar djecken avatar evaherrada avatar firepixie avatar foamyguy avatar henrygab avatar isaacwellish avatar jedgarpark avatar jepler avatar jerryneedell avatar kattni avatar ladyada avatar lesamouraipourpre avatar makermelissa avatar mikeysklar avatar paintyourdragon avatar siddacious avatar tannewt avatar tekktrik avatar thekitty avatar trevknows avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

adafruit_learning_system_guides's Issues

TFT Gizmo Snow Globe

Testing out snowglobe_fancy.py code with Adafruit CircuitPython 5.0.0-alpha.4 on 2019-09-15; Adafruit Circuit Playground Bluefruit with nRF52840. Using library bundle adafruit-circuitpython-bundle-5.x-mpy-20191024

Error from REPL:

code.py output: Traceback (most recent call last): File "code.py", line 51, in <module> ValueError: color buffer must be 3 bytes (RGB) or 4 bytes (RGB + pad byte)

the snowglobe_simple.py code runs fine, no errors.

link to code:
https://github.com/adafruit/Adafruit_Learning_System_Guides/tree/master/TFT_Gizmo_Snowglobe

Error with Circuit Python Flying Toaster

Getting error with flying toaster code. Itsy Bisy M4 running Adafruit CircuitPython 5.0.0-alpha.4 on 2019-09-15; Adafruit ItsyBitsy M4 Express with samd51g19

Using latest library from circuit python bundle adafruit-circuitpython-bundle-5.x-mpy-20191024

code.py output: Traceback (most recent call last): File "code.py", line 177, in <module> File "code.py", line 120, in advance_animation KeyboardInterrupt:

@dastels

Suggestion for change for reading PMS5003 packet in Python

I ran into a problem where the struct.unpack() was failing on the BeagleBone, (due to how I changed the example to flush the serial buffer, and take measurements at a different interval) and the problem seemed to be that the bytearray object was too long for the format ( ">HH..."). That could be a MicroPython vs Python 2.7 issue, I'm not sure. In any case I ended up with a revised PMS5003 packet reading/parsing function to contribute:

def read_valid_packet_from(ser):
    buffer = bytearray()
    valid_packet = False

    while not valid_packet:
        n = min(32, 32- len(buffer))
        data = ser.read(n)
        data = bytearray(data)
        print("read: ", data)          # this is a bytearray type 
        buffer += data

        # look for packet start
        while buffer:
            if buffer[0] == 0x42:
                if len(buffer) >= 2:
                    if buffer[1] == 0x4d:
                        # found valid packet start
                        break
                    else:
                        buffer = buffer[1:] # re-start parsing on next byte
                        continue
                else:
                    break # might be valid packet start, not enough data
            else:
                buffer = buffer[1:] # re-start parsing on next byte
                continue

        #print("current buffer_len", len(buffer))
        #print("current buffer: ", buffer)

        if len(buffer) < 32:
            print("buffer_len", len(buffer))
            print("buffer: ", buffer)
            continue


        frame_len = struct.unpack(">H", bytes(buffer[2:4]))[0]
        print("frame length", frame_len)
        if frame_len != 28:
            # packet is invalid, yet had valid start pattern
            buffer = buffer[2:] # restart parsing after intitial start pattern
            continue

        checksum = struct.unpack(">H", bytes(buffer[30:]))[0]

        check = sum(buffer[0:30])
        if check != checksum:
            print("checksum didn't match", check, checksum)
            buffer = bytearray() # drop whole packet
            continue
        else:
            print("checksum passed")
            valid_packet = True

    return buffer

Monster M4sk voice changer audio clicking

Awesome work!
Looking forward to it working with the M4_eyes!

I am noticing some audio clicking with the lower pitch changes. Is this similar to the cross-fading issues with the old voice changer on the atmega processors?

SDlistFiles.ino..adapted to ESP8266 seems not working

Hello.
I'm not so expert but I did some sketches for ESP8266 using SD.h library.
I would adapt the SDlistFiles.ino and similar SDWebBrowse sketches found here but in both cases I have the following error compiling with ARDUINO IDE:
error: 'File' does not name a type
File root;
^
Can anyone help me ? I simply changed the CS pin to num. 15.
Thanks:
here the adapted sketch:

/* SDlistFiles

*/
#include <SPI.h>
#include <SD.h>

File root;

void setup() {
// Open serial communications and wait for port to open:
Serial.begin(115200);
while (!Serial) {
; // wait for serial port to connect. Needed for native USB port only
}

pinMode(15, OUTPUT); // set the SS pin as an output (necessary!)
digitalWrite(15, HIGH); // but turn off the W5100 chip

Serial.print("Initializing SD card...");

if (!SD.begin(15)) {
Serial.println("initialization failed!");
return;
}
Serial.println("initialization done.");

root = SD.open("/");

printDirectory(root, 0);

Serial.println("done!");
}

void loop() {
// nothing happens after setup finishes.
}

void printDirectory(File dir, int numTabs) {
while (true) {

File entry =  dir.openNextFile();
if (! entry) {
  // no more files
  break;
}
for (uint8_t i = 0; i < numTabs; i++) {
  Serial.print('\t');
}
Serial.print(entry.name());
if (entry.isDirectory()) {
  Serial.println("/");
  printDirectory(entry, numTabs + 1);
} else {
  // files have sizes, directories do not
  Serial.print("\t\t");
  Serial.println(entry.size(), DEC);
}
entry.close();

}
}

SerialESPPassthrough.ino - neopixel updates interfering with Serial communication on Teensy

I'm trying this sketch with several Teensys: LC, 4.0, 3.5, and found it couldn't even forward the message the ESP32 prints out after resetting to boot mode without dropping characters. Attempting programming with ESPTool.py would fail as it couldn't even get past trying to connect.

If I comment out the pixel* calls in loop(), it works without dropping characters, and programming flash (at least on 3.5 and LC, Teensy 4.0 still has an issue, but it seems unrelated)

Arduino 1.8.9
Teensyduino 1.4.7
Adafruit_Neopixel 1.2.5

alarm clock snooze crash

@dastels Pressing the snooze button while in clock is in"snoozing mode" causes the code to crash. Also happens when going into the settings page while the clock is snoozing.

snooze-crash

PyPortal_Smart_Thermometer fails in displayio with CP 5.0-alpha

This fails for CP5.0-alpha. It works for CP 4.1.0

Press any key to enter the REPL. Use CTRL-D to reload.
Adafruit CircuitPython 5.0.0-alpha.4-167-g0ccab508f on 2019-10-11; Adafruit PyPortal with samd51j20
>>> import thermometer
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
  File "thermometer.py", line 59, in <module>
  File "thermometer_helper.py", line 33, in __init__
ValueError: Group already used
>>> 

clearly something changed in displayio, but I am having trouble finding it.
I suspect there are other similar issues in the guides...

current PyPortal_ArduinoSelfTest using deprecated library and does not work even with it

PyPortal_ArduinoSelfTest/PyPortal_ArduinoSelfTest.ino includes "Adafruit_QSPI_Flash.h", which is not available in the Arduino IDE library manager. https://learn.adafruit.com/adafruit-pyportal/arduino-libraries shows installing library Adafruit QSPI. Online searching found https://github.com/adafruit/Adafruit_QSPI which says it is deprecated and no longer needed.

Commenting out the include, definition and block that references flash got it to run. Initial exploration with manual installation of the deprecated QSPI library, SdFat, or `SdFat - Adafruit Fork' failed various ways too.

PyPortal_ArduinoSelfTest.ino needs some attention, as well as «at least» the web pages https://learn.adafruit.com/adafruit-pyportal/arduino-libraries and https://learn.adafruit.com/adafruit-pyportal/arduino-test that reference the selftest program and needed libraries.

Environment:

PyPortal
Fedora 30: 5.2.7-200.fc30.x86_64
Arduino IDE 1.8.5
flatpak info cc.arduino.arduinoide

Arduino IDE - Open-source electronics prototyping platform

          ID: cc.arduino.arduinoide
         Ref: app/cc.arduino.arduinoide/x86_64/stable
        Arch: x86_64
      Branch: stable
     Version: 1.8.5
     License: LGPL-2.1
      Origin: flathub
  Collection: org.flathub.Stable
Installation: user
   Installed: 445.4 MB
     Runtime: org.freedesktop.Platform/x86_64/18.08
         Sdk: org.freedesktop.Sdk/x86_64/18.08

      Commit: defc1c965961c09ccf1a2eb2deca8b5645b83266cb77eb80e7b682925b8ff382
      Parent: 920a50ca67d0e64cb70ed32311fe5d674e3cbc6ebfe82b431e96fa6536769c0f
     Subject: Update runtime to version 18.08 (0242af5a)
        Date: 2018-11-08 15:20:46 +0000

Adafruit ADT7410 Library by Adafruit Version 1.0.1
Adafruit GFX Library by Adafruit Version 1.5.6
Adafruit ILI9341 by Adafruit Version 1.5.1
Adafruit ImageReader Library by Adafruit Version 2.0.1
Adafruit NeoPixel by Adafruit Version 1.2.4
Adafruit QSPI by Adafruit Version 3.0.0
Adafruit SPIFlash by Adafruit Version 3.1.1
Adafruit TouchScreen by Adafruit Version 1.0.2
Adafruit Zero DMA Library Built-In by Adafruit Version 1.0.4
SdFat - Adafruit Fork by Bill Greiman Version 1.2.1
SdFat by Bill Greiman Version 1.1.0

CircuitPlaygroundExpress_AudioSine.py -- 18 is misleading.

# Generate one period of sine wav.
length = SAMPLERATE // FREQUENCY
sine_wave = array.array("H", [0] * length)
for i in range(length):
    sine_wave[i] = int(math.sin(math.pi * 2 * i / 18) * (2 ** 15) + 2 ** 15)

This only works for frequency near 440. The 18 should be length to be more general.

PyPortal_MQTT_Control: not working on CircuitPython 5.3

It seems the library MiniMQTT has changed. The code in PyPortal_MQTT_Control uses

# Set up a MiniMQTT Client client = MQTT(socket, broker = secrets['broker'], port = 1883, username = secrets['user'], password = secrets['pass'], network_manager = wifi)
But the latest MiniMQTT library from adafruit-circuitpython-bundle-py-20200516.zip
defines a signature of:
def __init__( self, broker, port=None, username=None, password=None, client_id=None, is_ssl=True, log=False, keep_alive=60, ):

Notice that "socket" and "network_manager" are no longer part of the constructor.

Error:
Traceback (most recent call last): File "code.py", line 205, in <module> TypeError: function got multiple values for argument 'broker'
The code seems to be out of date w.r.t to the latest version of minimqtt

List of required Arduino libraries in Adafruit MONSTER M4SK guide is not sufficient.

The pdf overview guide for the Adafruit MONSTER M4SK dated 2019-10-21, as well as the corresponding website lists the following libraries as being required to build M4_Eyes:
Adafruit_GFX, Adafruit_ST7789, Adafruit_ZeroDMA
Adafruit_ZeroPDM, Adafruit_ImageReader, Adafruit_SPIFlash
Adafruit_TinyUSB, SdFat - Adafruit fork (not the standard SdFat fork)
ArduinoJson (not Arduino_JSON)

The above list is not sufficient. The following libraries are also required in order to build:
Adafruit_AM2320_sensor_library
Adafruit_Arcada_Library
Adafruit_TouchScreen
Adafruit_Unified_Sensor
Adafruit_ImageReader_Library
Adafruit_LIS3DH
Adafruit_NeoPixel
Adafruit_ZeroTimer_Library
Adafruit_seesaw_Library

In addition, it was necessary for me to pull the latest Adafruit_ZeroPDM library from GitHub, as the version obtained through the Arduino Library Manager was missing some recent updates.

It would be nice to have the documentation updated to save people time in the future.

a lot of errors when trying to compile for Feather M0 Express

Adafruit is unclear with exactly how to perform this project. I'm trying to compile this for my Adafruit Feather M0 Express Hallowing but I'm finding a lot of errors and being a novice I'm not sure what's wrong, me or the code. Following this guide (https://learn.adafruit.com/hallowing-all-seeing-skull/code-in-arduino) to here.

I did load the libraries and boards instructed but the only thing that wasn't clear was the Programmer. I've tried AVRISP MK II with the following results on Arduino 1.8.8 -

`Arduino: 1.8.8 (Windows 10), Board: "Adafruit Feather M0 Express"

All_Seeing_Skull:290:7: error: stray '\342' in program

   <span aria-hidden="true" class="d-inline-block ml-1 v-align-middle">↵</span>

   ^

Grand Central SD Card library not up to date

code path: Adafruit_Grand_Central_M4_Express/GCM4_SD_Temperature_Logging_Demo.py

Maybe I'm doing something wrong but I formatted the drive as FAT32 and copied and pasted that code onto the board and it outputs that error. I tried using boot.py to allow it to write to its storage but no luck.

Edit:
SD Card: Samsung EVO 32Gb

Edit 2:
Using the fixed (but also raw) adafruit_sdcard.py from SD Cards producing OSError 19 #245 in the circuitpython git repo solved the issue. Thus the new issue is that the fix has not been added to the Grand Central.

Dotstar examples have MOSI and SCK reversed

Hi all,

I was working from an example from the Learning System and found an error in the sample code. Turns out I see it once in the forums as well (but I don't know how to report that). To be honest, I don't remember copying in this code (but I must have, unless some Trinkets shipped with code that includes this error)

Here's the Tutorial for the Mini Pinball Table with Gemma M0:
https://learn.adafruit.com/mini-pinball-table-with-gemma-m0/code-the-gemma-m0-with-circuitpython

And here is sample code in the Forums
https://forums.adafruit.com/viewtopic.php?f=47&t=131600

#set up on board DotStar
pixel = dotstar.DotStar(APA102_MOSI, APA102_SCK, 1, brightness=0.1)
pixel.fill([50, 0, 0]) #color in g - b - r color order
pixel.show()

Note that MOSI and SCK are reversed in this. It leads to bizarre behavior including RGB swapping and general madness

PR builds failing

Hi! I think we need help from an adult here. I believe I've established that something in the cache is wrong, and this is breaking current PR builds. I created #1098 because of the failure we saw on #1084. With no change relative to master branch, the build fails. With an attempt to address the first error-ish text I saw in the build, nothing changes. When disabling the travis cache, the build succeeded.

I believe I could use my credentials on travis-ci to clear the cache but I don't want to do this willy-nilly.

bug with LONNNNNNNG quotes

The code for the FeatherWing Quote Display has a bug that shows up when using a Huzzah32. If the quote happens to more than 261 characters, you get a board fault. The test string on line 195 is about 40 characters too short to demonstrate the issue. The current set of quotes happens to have two that are longer than that test string.

All_Seeing_Skull missing conversion tool

All_Seeing_Skull/README.md says:

Folder 'convert' contains Python sketch for generating graphics header files. Requires Python Imaging Library. Example images are also in this directory.

but these files are not in the repository.

the number of arguments in decode_bits is too damn high!

Adafruit_Learning_System_Guides/Circuit_Playground_Express_and_IR/CPX_IR_Remote_Recieve.py /

Great example, almost perfect. Got me from knowing close to nothing about the circuit playground express to making cool lights and sounds remotely. Love it!

But, first I had to find this bug. Line 15 received_code = decoder.decode_bits(pulses, debug=False) throws an error. Problem is decode_bits(pulses) doesnt like the debug argument.
Could be this is some expert level code magic I dont understand but it works when I delete debug=false... so thats my issue.

For reference, the adafruit_irremote library doesnt have a debug argument either.
https://github.com/adafruit/Adafruit_CircuitPython_IRRemote/blob/master/adafruit_irremote.py

Unable to change pad threshold

Hello Im trying using the Circuit Playground Express with the cpx-expressive-midi-controller v1.2 code and when using alligator clips attached to objects, sometimes the notes are being played before my hand actually touches the object.

I've tried changing
keydown = [False] * 10
to
keydown = [False] * 5
and 20, 15, 1, etc. but nothing really has an effect.

I'm not sure if I'm doing something wrong or if this is not possible with the code?

Thanks in advance for any help.

CircuitPlaygroundExpress_AudioSine.py: loop value doesn't appear to have an effect

Greetings all!

CircuitPlaygroundExpress_AudioSine.py seems to run only once regardless of the value of "loop".

This is on the Circuit Playground Bluefruit from ADABOX 14.

The loop=True doesn't appear to have any effect.

With loop=True, The sample plays once and then the program halts.

Changing it to loop=False resulted in the same behavior. The sample played once and the program halted.

Removing loop=Value entirely resulted in the same behavior. The sample played once and the program halted.

Compile errors using example code

I'm using a Huzzah ESP8266 Feather and I'm trying to compile the code provided here:
https://learn.adafruit.com/feather-weather-lamp/software

Getting below errors.

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: sketch\buttoncycler.ino.cpp.o:(.text.setup+0x28): undefined reference to `animConfig(unsigned short, unsigned char, unsigned char, unsigned char, unsigned char, unsigned char)'

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: sketch\buttoncycler.ino.cpp.o:(.text.setup+0x2c): undefined reference to `animSetup()'

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: sketch\buttoncycler.ino.cpp.o: in function `setup':

C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:38: undefined reference to `animConfig(unsigned short, unsigned char, unsigned char, unsigned char, unsigned char, unsigned char)'

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:36: undefined reference to `animSetup()'

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: sketch\buttoncycler.ino.cpp.o: in function `updateWeather()':

C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:96: undefined reference to `animConfig(unsigned short, unsigned char, unsigned char, unsigned char, unsigned char, unsigned char)'

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:99: undefined reference to `animConfig(unsigned short, unsigned char, unsigned char, unsigned char, unsigned char, unsigned char)'

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:101: undefined reference to `animConfig(unsigned short, unsigned char, unsigned char, unsigned char, unsigned char, unsigned char)'

Multiple libraries were found for "ESP8266WiFi.h"
Used: C:\Users\Joe\AppData\Local\Arduino15\packages\esp8266\hardware\esp8266\2.5.1\libraries\ESP8266WiFi
c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:101: undefined reference to `animConfig(unsigned short, unsigned char, unsigned char, unsigned char, unsigned char, unsigned char)'

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:102: undefined reference to `animConfig(unsigned short, unsigned char, unsigned char, unsigned char, unsigned char, unsigned char)'

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: sketch\buttoncycler.ino.cpp.o:C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:105: more undefined references to `animConfig(unsigned short, unsigned char, unsigned char, unsigned char, unsigned char, unsigned char)' follow

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: sketch\buttoncycler.ino.cpp.o: in function `updateWeather()':

C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:160: undefined reference to `waitForFrame()'

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:163: undefined reference to `renderFrame()'

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: sketch\buttoncycler.ino.cpp.o: in function `loop':

C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:166: undefined reference to `waitForFrame()'

c:/users/joe/appdata/local/arduino15/packages/esp8266/tools/xtensa-lx106-elf-gcc/2.5.0-3-20ed2b9/bin/../lib/gcc/xtensa-lx106-elf/4.8.2/../../../../xtensa-lx106-elf/bin/ld.exe: C:\Users\Joe\AppData\Local\Temp\arduino_modified_sketch_128265/buttoncycler.ino:169: undefined reference to `renderFrame()'

collect2.exe: error: ld returned 1 exit status

exit status 1
Error compiling for board Adafruit Feather HUZZAH ESP8266.

M4_eyes voice not working on Monster Mask

I just tried M4_eyes on Monster mask from the updated Learning Guide and "voice" seems to be broken. If I enable it, I just get blank screens, nothing.. Without voice, everything is working fine. Is this a known issue?
I tried this example: https://learn.adafruit.com/adafruit-monster-m4sk-eyes/voice-changer-2#example-config-dot-eye-file-14-8
as well as just adding voice : true to other working "eyes"
In both cases, it just seems to hang during the start-up

PyPortal demos need changes for displayio TileGrid

The PyPortal_Openweather and pyportal_weather_station guides use TileGrid and have the "old" position kwarg. This was updated in displayio to take x,y kwargs instead.

Should they be fixed with try/except on TypeError to for "backward compatibility" of just updated for the latest version of displayio?

PropMaker_Lightsaber audio issues

I just downloaded and used the build uploaded on 28Jan20, and while it's improved the idle audio playback dramatically, there's still a glitch in the idle audio every once in a while. It ranges from a quick pop to an oscillating sort of white noise. Not sure what the root of this is. Other people have also reported it. Not sure if this is a software playback issue or electrical problem, but it's only in the idle sound as far as I can tell. There was a comment about audio file length potentially being an issue.

Slideshow Soundtrack Error

Testing slideshows_slideshow.py code for the TinyMuseumTour Learn guide on HalloWing M4 running Circuit Python 5 Alpha 4. REPL throws error:

code.py output: Traceback (most recent call last): File "code.py", line 7, in <module> File "adafruit_slideshow.py", line 200, in __init__ File "adafruit_slideshow.py", line 323, in advance AttributeError: 'Display' object has no attribute 'wait_for_frame'

Learn guide:
https://learn.adafruit.com/tiny-museum-tour-device/code-with-circuitpython

github code:
https://github.com/adafruit/Adafruit_Learning_System_Guides/blob/master/Slideshows_Soundtrack/slideshows_soundtrack.py

revisiting #1091 on Feather_ePaper_Quotes

The "reopen button" is not available. Regarding #1091, which is about Feather_ePaper_Quotes, found in https://github.com/adafruit/Adafruit_Learning_System_Guides/tree/master/Feather_ePaper_Quotes and as described in https://learn.adafruit.com/epaper-display-featherwing-quote-display. The "fix" that was merged previously for this changed one fixed-length buffer for a slightly larger one. Instead of fixing the problem, it just postpones it until the new buffer size overflows.

I suggest you also change the strcpy() statement a few lines after the declaration on line 93

static char buff[1024];
. . .
strcpy(buff,str);

to this:

static char buff[512];
. . .
if (strlen(str) >= sizeof(buff)-1) { // protect against buffer overflow
strncpy(buff, str, sizeof(buff)-2);
buff[sizeof(buff)-1] = '\0';
} else {
strcpy(buff,str);
}

That will future proof the code.

Because of the small memory on the microcontroller, I also drop the size of buff back down a bit so you don't have such a large buffer floating around that is empty most of the time.

I'll put together a PR with this fix.

Missing file in PyPortal_ArduinoSelfTest

When I try to compile and upload the PyPortal Arduino Self Test I get the following error:

Adafruit_QSPI_GD25Q.h: No such file or directory

I can't find this file on GitHub, and it no longer seems to be part of the QSPI library.

Not immediately obvious that "Hallowing" examples won't work on the Hallowing M4

Hi,

I had a bit of a rough start trying to get going on a Hallowing M4, wanted to start with something really simple, so I went through the "Hallowing" directories in the repo. Hallowing/graphicstest compiled, but did not show anything at all, not even serial printouts which left me wondering... Went on trying the other examples, most of them did not even compile.

Only then I got a hint on IRC that they are probably not meant to work on the M4 at all and this indeed seems to be the case, and I was able to build and run M4_Eyes which proved the above point.

I don't know if I missed that, but would be cool to have a more prominent warning somewhere that "Hallowing" examples won't work on the "Hallowing M4".

HAL 9000 Python Example not working with CPX + Crickit 5.1.0 build

Hello,
I have an Adafruit Circuit Playground Express and a Crickit, and I would like to run Circuit Python to use the HAL 9000 code. I have tried loading the Circuit Python special Circuit Playground Express + Crickit build from here https://circuitpython.org/board/circuitplayground_express_crickit/, which is currently 5.1.0. When I put the HAL code on my adafruit, I get the error that the adafruit_crickit library cannot be found. I feel like I am missing some simple thing to get this working. I was under the impression that if I run that build, my code can just load those libraries. My code is at the root of the CIRCUITPY flash. Did the library name change? Have you tested HAL on 5.1.0? Does that build have any other dependencies? Any help would be greatly appreciated.
-Kevin

PyPaint Errors

@dastels Hiya, I'm testing this out. Running PyPaint on PyGamer using circuit python 4.0.2 with latest libraries from bundle.

  • Analog joystick is inverted when moving cursor
  • Pressing A button triggers error, exits program and loads console on screen.
  • From console: cursorcontrol.py, Line 177, "group" object has no attribute "remove"

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.