#learn-adafruit-authors
1 messages · Page 3 of 1
Just tried on my phone and not uploading there either.
Ok try it again.
Great!
Thansk for the help!
You're welcome!
@latent idol For future reference, ping me if you have issues. It's entirely coincidental that I've caught your messages with issues here. 🙂 Remember I have a shorter workweek, but I'll get back to you as soon as I can.
Ok, will do. Hope to have this ready for first moderation review on Monday. Should I ping you or AnneEngineer?
Ok, sounds good.
@solid swallow I just sent the CP memory guide to moderation. I created a private "todo" list, so feel free to add items there or send me a note here. Thanks for your help on this one!
Whoa it looks like it went live already. For the pin on the help-with-circuitpython channel, please consider changing it from the GitHub link and pointing it to the learn Guide.
Thanks for the help and encouragement!
Nice Guide... and nice arrows 🙂
Yep your library is super useful: https://github.com/jposada202020/CircuitPython_ArrowLine. This made it really easy to put arrows where I wanted, and this project gave me a great excuse to spend more time with it. Thanks for making this!
Thank you, I have been using your "standard" documentation how to use Quickstart: Importing and using the ____
for the past week 🙂
So thank you
I got a feedback on my learn page and addressed it. I couldn't figure out how to label the issue as "resolved" so I clicked the delete button. Not sure that was the right approach so let me know if there's a different way to signify that feedback has been addressed.
@latent idol That's exactly how to handle feedback. And congrats!
@solid swallow how do you like this? Should I add the . and .. inside of lib and CIRCUITPY?
@uncut gulch There are some .files that CircuitPython installs, like .metadata_never_index and the .fseventsd directory or whatever it is. At least I think they're default and MacOS isn't installing them?
Like this.
Basically it should look exactly like a CIRCUITPY drive. Those might be MacOS files though and I'm mistaken.
But this looks really good!
ah yeah I've got those as well from linux. I'll add them in
Right on. Thanks!
sorry for sneaking into your chat
those are dot files, aka: hidden files on *nix-like stuff
they dont exist on windows
.Trashes is created by macos
i think the .metadata_never_index is as well
but ive never seen the folder there
I'm fairly certain that my devices have never been plugged into anything running mac os but they do still have .metadata_never_index and .Trashes. I am on linux I think they can get created by that os as well.
@solid swallow added those hidden files and some alternating row highlights. If this is good I am going to use it tonight to replace the relevant screenshots for the progressbar library update
@uncut gulch They are created here by CP https://github.com/adafruit/circuitpython/blob/main/supervisor/shared/filesystem.c#L123
They went through a lot of evolution early on. MacOS was a particular problem and these took care of that if I recall correctly.
if this is a webpage, i would add vertical-align: middle to those, so the text doesn't look better aligned with the icons
i guess i was almost wrong and almost right :O
Always good to ask questions if things are not clear.
I think in the case of .Trashes, it is created as a File to prevent MacOS from creating a Folder for it.
that does make sense, quite a nice bodge, honestly
Ah! I see
it is a webpage I did mess with vertical-align: middle a bit but didn't have much luck. I can try to tinker some more
some history here https://github.com/adafruit/circuitpython/pull/691
try to align at the top? or set a bottom padding? the padding could work great, if you set it to 0.125rem (or em) or something close
that is interesting, and it does make a lot of sense to do that
couldn't get padding to work either (yay CSS) but position relative and small negative top did successfully scoot them up a tad.
i personally dislike relative positioning, but that does help quite a lot when negative margins fail
but hey, it looks awesome now!
i would just try a tick more to the top, but, it's fine as it is
hello, i'm trying to get a bluefruit sense PDM microphone working for this project #help-with-projects message but can't seem to find a seminal article on how to make use of the microphone.
i thought i might be able to do it myself but it's over my head
if anyone is interested in the project, that would ideally be published on adafruit, i would love to sponsor it!
i've used upwork for another project but thought i would ask here first
That looks great! Maybe before we go too far with it, email PT and Limor. You can CC me if you like, and Anne (though she's not back yet, but since she handles Learn guides when she is around, it's probably worth it). I think it's excellent, but before we start using it for guides, let's involve Limor.
@uncut gulch My concern is that she would want you to be testing the code anyway, and therefore you would have a board with the proper files on it already and could get screenshots from that. So she might not want a workaround that, while it should work, might have some issue we wouldn't catch. Regardless, let's let her decide.
Sounds good. Just sent that a bit ago. Definitely agree'd testing on the device is still very important. I think the main difference is that for testing it's okay to have other files on the device also. So there is no need to delete all of the other libraries. But for screenshoting it needs to be only the libraries used for the project. To screenshot on a live device everything not used by the project must be removed.
Yep! I saw the email. Thanks!
@uncut gulch Awesome update to the fonts page!
Thank you!
@olive light I tried following the funhouse guide to load the uf2 bootloader, but whenever I loaded the linked "combo" .bin file, it just came up running the default "arduino" demo and I was not able to get the UF2 bootloader to start with a doubletap. I manually loaded the uf2bootloader from the tinyuf2 repostiory and it works as expected. Is the linked file in the guide the correct file?
@olive light ah -- nevermind -- I guess I was just not timing the doubletaps correctly --it does load the demo, but I can also get it int the UF2 bootloader -- needs a delay between the taps.
I was convinced there was no UF2 bootloader on my FunHouse as well until Melissa told me to wait until the LEDs turn purple for the second reset tap, and now it's easy.
Found a typo on: https://learn.adafruit.com/adafruit-bh1750-ambient-light-sensor/python-circuitpython
The first link Adafruit CircuitPython BH1750 is pointing to https://github.com/adafruit/Adafruit_CircuitPython_SHTC3 instead of https://github.com/adafruit/Adafruit_CircuitPython_BH1750
If you could report it with the link on the left side of the page, the "Feedback? Corrections?" one, it will help, since that goes to a system where the necessary changes are tracked. Discord is nice, but using it for tracking/planning is less than stellar
Fixed! Thank you for the report. Hugo is right, though, it's always best to use the "Feedback" link in the guide because Discord messages get lost in the scroll.
Hi all, I was looking though the learning guide for circuitpython canio and found a typo. Under ESP32S2 Metro & External Transceiver "board.CAN_TX" is split into 2 separate code blocks, making it look like there is a space between "board." and "CAN_TX". I have attached a screenshot below.
Please use the "Feedback? Corrections?" link at the bottom of the left side of the guide to report the typo. Thanks!
Thanks, managed to miss seeing that. I will send it in using the feedback option now.
I don't know exactly when the code embeds changed their look, but I dig the new dark ones with pink buttons!
@olive light should this be pointing to the py bundle not the mpy? if it is mpy it needs to be either 6.x or 7.x doesn't it? https://learn.adafruit.com/circuitpython-libraries-on-micropython-using-the-raspberry-pi-pico/installing-blinka-and-libraries#install-circuitpython-libraries-3096494-15
Does it require 6.x or 7.x mpy's? Do you really need to use .mpy's at all...
@ocean flare good question. Let me test and get back to you.
Thanks -- I think it would be best just to use .py versions
I'll test mpy. If it fails, I'll just say .py
Need to test both 6.x and 7.x .mpy -- it may work with one but not the other.
I think py will be cleaner -- the RP2040 has enough RAM so py should be fine!
@ocean flare it should be fixed now.
Yes -- I saw it -- Thank you! -- Nice guide!! I liked the Thonny install of MP -- works really well!
I have not tried blinka yet -- will probably be tomorrow before I can.
@olive light Have you seen this? https://www.tomshardware.com/news/circuitpython-libraries-come-to-micropython-on-pico Nice!
Yes @ocean flare , I was just looking at it. Thanks. 🙂
@olive light Just a heads up - The Funhouse guide for using HomeAssistant says the pressure units are kPa but they are actually hPa. It is labeled as kPa in the display and in the HomeAssistant configuration. https://learn.adafruit.com/using-the-adafruit-funhouse-with-home-assistant
This just came up in #help-with-circuitpython
Oopsie, thanks. I’ll change it tomorrow.
@wooden junco The new guide https://learn.adafruit.com/adafruit-io-hub-with-the-adafruit-funhouse/overview looks great! It will help a lot of folks get going with AIO. I wondered if the last three examples would confuse people because they are not for the Funhouse and they use esp32spi. SHould there be some warning that the examples have to be modified for use on the Funhouse?
Oh yeah, the last 3 examples aren't supposed to run on the funhouse. They're examples of devices you could connect to adafruit io to have stuff to display on the funhouse. I'll edit it to make that more clear
Great! Thanks!
Done. Let me know if that makes it more clear
Yes -- perfect!
I getting good results with the tinypico and a Adafruit I2S MEMS Microphone - SPH0645LM4H and noticed that the instructions for the microphone don't include "ESP32 Wiring & Test". I'm getting clean audio over the network with with a Arduino sketch and small python script here... https://github.com/nodered/ESP32-I2S-Microphone-Speaker
I don't have any other ESP32 boards to test with so I'm not sure if my use case is a one-off or would be useful to others?
The code I "found" works but the resulting wav file has no waveform for some reason but the spectrogram is there which worked for speech to text
There are also examples here https://github.com/atomic14/esp32_audio ..epic resource using adafruit parts
Wrong link: Following along the Itsy Bitsy nrf52 learn guide at this page https://learn.adafruit.com/introducing-the-adafruit-nrf52840-feather/circuitpython & the link to download the latest version of CircuitPython liniks to the feather board, not the Itsy Bitsy. At first I thought this was appropriate, but after noticing that CIRCUITPY never came up, I revisited CircuitPython.org and saw there was a file for the ItsyBitsy nrf52 express, installed that, and I got CIRCUITPY. Want to let folks know to help others avoid the same gaffe. Good luck!
Another heads up. On the Inifinity Mirror Cube build, https://www.adafruit.com/product/2970 the part linked is the 144 mini skinny strip, but the build video, diagrams, and instructions show the less dense 60 pixel strip.
So thin. So mini. So teeeeeeny-tiny. It's the 'skinny' version of our classic NeoPixel strips!These NeoPixel strips have 144 digitally-addressable pixel Mini LEDs per meter and ...
I don't understand. You linked the Feather guide, but you're talking about the ItsyBitsy. The Itsy has its own guide with its own CircuitPython page. https://learn.adafruit.com/adafruit-itsybitsy-nrf52840-express/circuitpython
@fickle thicket FYI -- I did a quick hack to your deco_macro_pad to use the new "keypad" module in CP 7. Here is the code if you are interested. I'm sure there are more elegant ways to do it
Sort of nit picking, but might help us who are ,still learning. The macro pad
Only runs with the UF2 files in “absolute latest”. Latest is already absolute. Putting a link to an old UF2 file will discourage many (NEOPIXEL and things like board.ROTA in the guide don’t work). Drop the green box altogether. Make the UF2 file match the learning guide. Thanks
Hi, where did you see a link to a specific UF2? We can fix that link. Thanks.
The green box in the learn guide leads to the CircuitPython page "CircuitPython 7.0.0-alpha.3
This is the latest unstable release of CircuitPython that will work with the MacroPad RP2040." No use to link to the alpha.3 as it doesn't work with the MacroPad. Link with the real page with https://adafruit-circuit-python.s3.amazonaws.com/index.html?prefix=bin/adafruit_macropad_rp2040/en_US/
current Learn Guide:
@glossy violet What would you like to see different?
drop the alpha.3 from https://circuitpython.org/board/adafruit_macropad_rp2040/ ?
we will have an alpha.4 shortly
that will work with keypad
Hi @solid swallow Checking this several weeks later. Sorry if I'm not clear. Here's what I'm seeing:
For the incorrect link issue, look at this page in the Infinity Mirror Cube learn guide: https://learn.adafruit.com/neopixel-infinity-cube/software
Scroll down & you'll see text with a link stating: "If you need to install or upgrade CircuitPython, see this guide page on the ItsyBitsy nRF52840."
BUT if you click the link for ItsyBitsy nRF52840 it takes you to the Feather page: https://learn.adafruit.com/introducing-the-adafruit-nrf52840-feather/circuitpython
As for the strip - again using this guide for the Infinity Mirror Cube: https://learn.adafruit.com/neopixel-infinity-cube The suggested LED strip is: "Adafruit Mini Skinny NeoPixel Digital RGB LED Strip - 144 LED/m". But if you look at the video & builds, like at: https://learn.adafruit.com/neopixel-infinity-cube/assemble you can see the density of the neopixels isn't 144/meter (which would be more tightly packed). These ones look like maybe the 60 / meter mini skinnys.
This is much clearer. Thank you. I've passed along the feedback to the guide authors.
@solid swallow happy to help. Adafruit guides are so helpful & support is always top notch. Errors are very rare, but figured if I saw it, might help someone else to clean up the small issues. Cheers.
@solid swallow you worked on the adafruit Motorsheild v2 library correct? because i have some questions about the library and its functions.
@astral haven I don't believe so, no. I might have contributed a fix or something, but I haven't dealt with it enough to have any useful information about it.
do you know who i could talk to about it?
@solid swallow
and is this the correct channel to ask these questions?
I would post to #help-with-projects and see if someone there can help you. There are almost certainly some folks on the Discord who can help you.
This channel is more for discussing Learn guides. I would suggest looking at the channels under the "help-with" section and pick one there for questions.
ok thank you so much!
You're welcome!
No need to link to a non working version of Circuit Python. Link to https://adafruit-circuit-python.s3.amazonaws.com/index.html?prefix=bin/adafruit_macropad_rp2040/
Once we figure that out, life is complete.
Thanks
The link is now to circuitpython.org. I didn't do this. Someone else fixed it.
@olive light FYI -- the latest RPI kernel once again appears to break the fbcp for the braincraft on a RPI-4 -- it had been working ok for the past few kernel updates, but I updated it today and now I get nothing on the display if I run raspistill -t 0 the latest kernel is Linux gjnpi4braincraft 5.10.52-v7l+ #1440 SMP Tue Jul 27 09:55:21 BST 2021 armv7l GNU/Linux
Thanks for the head's up @ocean flare. I can do some testing a bit later this week, but am hoping to get a guide finished up by Wednesday.
@olive light no pressure from me. I just want to let you know.
The Font5x8 download link on this learn guide is broken. Goes to a 404. https://learn.adafruit.com/easy-neopixel-graphics-with-the-circuitpython-pixel-framebuf-library/import-and-setup
@olive light Just curious if you have had a chance to confirm that the braincraft hat is not working with the current RPi kernel? Any idea what the issue is and if a resolution may be in the works -- or is reverting back to the older kernels the only workaround?
Please use the "Feedback" link in the bottom left corner of the guide. Guide feedback here often gets lost. Alternatively, you can email support@spiral tiger and they'll get it to the right folks, but they'll also suggest using the Feedback link 🙂
Sorry, I haven't had a chance to take a look yet, I've been pretty head's down in web stuff for a while now.
I really am not sure what the issue is since they haven't had any new major releases and I had successfully got it working on the May 7 release. Have you tried a fresh install?
@olive light I have not tried a fresh install, but will do that later today. It was working for me a few kernels back, but broke when I posted the note above. No worries, it is more a curiosity for me. Not a crisis. i have way to many other projects to work an as well.
That makes sense. I bet a fresh install will fix it. I had tried updating an older install and it stopped working, but a fresh install fixed it for me, so I had figured it was something I did.
@olive light By fresh install, do you mean from a new RPi image on up or just re-running the adafruit install script? I've done the re-install several times, but plan to try from the RPi image on up now.
New RPi image.
If it's still not working after you reimage, I have that hat and could test to see if the same config works on my hardware
That would be great -- I just did a full clean install and its does not work for me. No errors, just nothing on the screen when I run raspistill -t 0.
@indigo swan are you using a Pi4?
If that's what you're using, I'll test that. I have almost every Pi version, lol
I'll set it up when I get off work on about an hour and let you know!
Just the demo?
Also I am not seeing the "console" on the display except it momentarily flashes up when I reboot....
Hmm...
I have just worked through the guide until the camera test.
Which exact image are you using? Desktop full of light, CMD only?
Ok, I'll follow exactly then
No problem ^_^
@olive light @indigo swan FYI -- I did the "pin old kernel" https://learn.adafruit.com/adafruit-braincraft-hat-easy-machine-learning-for-raspberry-pi/kernel-module-troubleshooting and it does show the console and raspistill does work so the HW is OK --- BTW -- how to you "unpin" the kernel?
the colors are a bit odd ... but it is working...
colors OK now -- just re-ran the display install and rebooted
Hmmm... Not are about unpinning, I've never pinned the kernel
So fresh install worked then?
No -- had to revert to an old kernel --
Ohhh
I just wanted to make sure the HW worked. Not my preferred solution!
I'll still see if I can replicate with mine then
Yeah, we probably would want to figure out a newer kernel that works to pin. To unpin, delete /etc/apt/preferences.d/99-adafruit-pin-kernel and update everything.
@ocean flare Ok, so, sorry it took me so long to get into this... Got distracted >~> but I got an error when trying to set up
Oh, I did a sudo and it worked
@ocean flare Ok, I've got everything set up to the display module -- did you do the "easy way" or the "hard way"? Want to make sure I get as exact to your setup as possible
Hard way… that is the only way to use raspistill and the “vision” tools.
Ok, I'll continue on it ASAP (stupid "job" gets in the way!)
No problem! No rush.
@olive light looking at the RPi release notes there have only been 2 updates to the kernel since 5.4.79 and 5.10.17 does not work... I could try 5.4.83 if you think its worthwhile... see https://downloads.raspberrypi.org/raspios_lite_armhf/release_notes.txt
I'm fairly sure 5.4.83 had issues. So you tried a fresh install and that didn't work?
Sorry -- I may be confusing thing -- I'm not sure how the pinned kernel setting matches the kernel
I'm not sure either. @remote onyx wrote it
yes a full fresh install yesterday failed.
Which braincraft drivers did you install? What's the failure?
it does not disaply anythin when I try raspistill -t 0
and the console does not show.
You installed with HDMI mirroring?
I followed the guide
Which guide?
sudo python3 adafruit-pitft.py --display=st7789_240x240 --rotation=0 --install-type=fbcp
it wors OK with the old kernel
It may just be having an issue with the desktop version
I am using lite
Is there an issue on github?
In what repo?
Raspberry-Pi-Installer-Scripts
I don't see one -- I can open one.
Thank you. Please include as many details as possible so I can reproduce the issue.
OK - it may be tomorrow morning before I can get it done. Thanks.
I can get something in now then add to it.
Awesome, thanks.
ah - @olive light here is where the kernels come from and how they are identified by the script that pins it.. http://archive.raspberrypi.org/debian/pool/main/r/raspberrypi-firmware/
I don't have any current information about this. At the time I found this workaround, I think we assumed it would be short term but based on this discussion I guess that is not the case.
Did you get this? I got this when I did that part
Nothing on the HAT
Hmmm... shut down via PuTTY, saw things scroll on the HAT... remove the HDMI, and then nothing at all on the TFT
That sounds like what I have seen. I don’t have a display other than the hat.
I also had an issue with the sound test where it wouldn't echo the mics
Plugged HDMI back in while running, got that image back
Hmm. I think that worked but I’ll try it again. I can’t do much until tomorrow though.
RIP HAT
I’ve been testing various kernels. Having some success.
Will this work with a 3B+? Or is it best with a Pi 4?
I think it will work with 3b+ but have not tried it.
I'll try it on a 3B+ with the other one
I’ll be offline for the evening. Good luck!
Seeya!
@indigo swan I created an issue on the installer script repo -- you can see my notes there regarding progress https://github.com/adafruit/Raspberry-Pi-Installer-Scripts/issues/187 I do have it working but still have to revert the kernel install back a few.
Ok, should I add any info? Haven't set up the 3 B+ yet, but I guess it would be worth noting if it works on there for some reason?
Sure -- add anything you think relevant. I am very confused by the "pinning" concept for the kernel, but I do have a working installation now 😉
Yay working! Oh, did your mic work? Mine didn't work with the echo test
yes -- the mic is working for me (I used headphones and had to set it for that in raspi-config) bad feedback with out headphones
Hmm, didn't work with speaker or "headphones" (I couldn't for the life of me find a pair with 3.5mm on them, so I used this novelty handset that looks like a landline handset, lol)
ah -- I also had to modify the command sudo arecord -f cd -Dhw:2 | aplay -Dhw:1 since the seed card is card 2, but the headphones are card 1
**** List of PLAYBACK Hardware Devices ****
card 0: b1 [bcm2835 HDMI 1], device 0: bcm2835 HDMI 1 [bcm2835 HDMI 1]
Subdevices: 4/4
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
card 1: Headphones [bcm2835 Headphones], device 0: bcm2835 Headphones [bcm2835 Headphones]
Subdevices: 4/4
Subdevice #0: subdevice #0
Subdevice #1: subdevice #1
Subdevice #2: subdevice #2
Subdevice #3: subdevice #3
card 2: seeed2micvoicec [seeed-2mic-voicecard], device 0: bcm2835-i2s-wm8960-hifi wm8960-hifi-0 [bcm2835-i2s-wm8960-hifi wm8960-hifi-0]
Subdevices: 1/1
Subdevice #0: subdevice #0
Ohhh, maybe that was it? I did 2 for both
Although 2 should still have gone to the speaker, right?
that still worked for me, but gave feedback on the speaker.
I got nada on the speaker, but I'll try doing 1 for headphones for output
does speaker-test -c2 work?
Wait, which jack did you use? I used the one on the HAT
oh -- I am using the one on the pi....
Yeah, that worked
did not see the one on e the hat
Lol
if I use the jack on the hat, I get sound (and feedback) on both the headphones and spekaer!
It works fine if I unplug the speaker.
that is with sudo arecord -f cd -Dhw:2 | aplay -Dhw:2
the microphone is very sensitive.
Hmm... I hope mine isn't broken
is the audio switch "on"
It does not work if the switch is off -- note: I hac to power cycel the pi after flipping the switch ... lost my ssh connection.
hmm -- may be something else on mine -- does not like being touched....
but make sure the switch is on.
Switch is on, I don't see a mic switch
just one switch
Mmmk, should be working then...
should be -- On mine it works if the switch is on -- does not if it is off.
Weird
I found out why mine did not like being touched... the speaker is mounted right over the Pi board and it can easily short out some contacts if pressed on. .I need to add some kapton tape! But that not relevant to your problem.
Lol. I had to use a JST connector and loosely wire a speaker until I found this
I have one of them!
Hehe, I think I got mine at Five Below ages ago
@olive light hi, I would like to suggest an additional methods for adafruit st7735 library and I was told to spoke with you. If you have a time I'll describe the story 😉
@indigo locust I’m not sure which ST7735 library you’re talking about, there’s at least 3-4 of them for different platforms.
@olive light Adafruit ST7735 and ST7789 Library
Ah, the Arduino library. I've added a couple of things to that one, but more for the st7789 portion.
yes, that one. I thought it's core for all other things 😉
maybe I'll describe what I think would be nice to have?
it's simple think probably to implement.
Nah, there's the Arduino driver, the CP Displayio drivers (2 of them for 7735 variations), the CP RGB Library, and there's also a kernel driver for the Raspberry Pi.
ok, go ahead
indeed, that's more than i expected:)
so I think would be nice to have methods for mirroring regions. I had an issue with st7735 when text was right to left and mirrored 😄 when I used yours example code.
rotation allows me to move 0,0 correctly but never fixed RTL and mirroring.
I've tweaked these (commented ones are original):
#define ST77XX_MADCTL_MY 0x00 //0x80
#define ST77XX_MADCTL_MX 0x80 //0x40
to get it working.
if there was like setRTL() and setMirroring() would be nice as for now it's not possible to change these without tweaking lib files.
You could always submit a PR to the library.
on github?
It looks like somebody may have done that already: https://github.com/adafruit/Adafruit-ST7735-Library/pull/150
interesting
I'd watch it the PR. A lot of time the arduino submissions are much slower to get approved because what appears harmless can break other things.
can be somehow backported to 7735?
ok, so I'll wait till it come in future 🙂 thx
👍
In the learning guide on HID https://learn.adafruit.com/pico-four-key-macropad?view=all
The author wants to implement generate key presses for select/cut/copy/paste.
in the guide, this is presented as
keymap = {
(0): ("Select all", [Keycode.GUI, Keycode.A]),
(1): ("Cut", [Keycode.GUI, Keycode.X]),
(2): ("Copy", [Keycode.GUI, Keycode.C]),
(3): ("Paste", [Keycode.GUI, Keycode.V])
}
If the platform is windows, these keys should have been sent with the control modifier - i.e. Keycode. control instead of Keycode.GUI, as according to https://circuitpython.readthedocs.io/projects/hid/en/latest/
Keycode,GUI is corresponds to the "windows" key, and those combination will not work as required.
Keyboard.CONTROL instead of Keyboard.GUI for Windows
@solid swallow I appreciated the discussion about the use of boilerplate material in guides in today's meeting, however there's another tangential thing regarding the bloat that stuff adds. I think its important to get at least a link to code for any particular guide as "above the fold" (not sure if that term is even that well known any more) as possible. I know when I go to a guide, the main thing I'm looking for first is the code.
I often find that it tends to be buried deep underneath a morass of boilerplate.
Fortunately or unfortunately, we have a standard format for guides, and it's unlikely that we'll change it up to that degree. The format is different for project guides versus product guides, but it's pretty standard within each of those categories. Project guide code is often on its own page, which should make it a bit easier to find. Product guide code is always on the language labeled pages (i.e. CircuitPython or Arduino), and possibly on further example pages. This product guide I'm working on right now has 10+ examples, and putting them all at the beginning would be cumbersome. So the examples are nested under the applicable language page. So I think, for now anyway, the code will remain where it has been. Apologies that it's frustrating to you. FWIW, nothing we discussed involved adding more boilerplate. It was mostly restructuring so things were more concise and clear, which I hope would be an attractive prospect to you. That said, I'm sure you're way beyond the Welcome to CircuitPython guide at this point, so the specifics of that discussion probably don't apply to you to begin with, as that specific guide is what we were discussing.
Thanks for noting this. We can update the code to include comments. If you feel like submitting a pull request, we would welcome that too.
also the keymap can just be a list or tuple
Thanks. May I ask how to submit a pull request ? is there a repo for this guide or other guides ?
The code is in this repo: https://github.com/adafruit/Adafruit_Learning_System_Guides/tree/main/Pico_Four_Keypad
There is this note in the guide, which is incorrect:
I will change that right now, until the code is updated.
I would do something like:
# Comment this out if using Windows, and uncomment the next line.
MODIFIER = Keycode.COMMAND # for macOS
# Uncomment this if using Windows, and comment out the line above.
# MODIFIER = Keycode.CONTROL # for Windows.
Then use MODIFIER in the keymap table.
Thanks for catching this, I must have entered a temporary fantasy realm where I thought windows+c was copy. Sorry 'bout the confusion!
Too much time on MacOS? :P
No worries. More eyeballs are better.
The note is still correct though COMMAND, WINDOWS & GUI are all the same Keycode
Out of context, the note is correct, but it's in the context of implying that Keycode.GUI is the modifier for cut/copy/paste on both systems (and the author confirmed to me that he got mixed up about that). Anyway, the guide and code have been edited, and that note was removed.
He was misremembering that on Windows, it's ctrl-c for copy, not windows-c
True 🙂
Yes, I totally confused it! I think there was some shortcut I've done on similar projects where Windows-something was the same as command-something on Mac.
@solid swallow I was looking over the updated intro to CP guide -- great job! In the FAQ there is a question about Internet access and it points to the obsolete guide https://learn.adafruit.com/welcome-to-circuitpython/frequently-asked-questions#faq-3020680 -- this should be changed to point to the Airlift guide - unfortunatley there are several...I'm not sure how to best handle it, but the esp32/esp8266 guide is definitely not the one to use.
@ocean flare Thanks for catching that. This is still very much a work in progress, and I haven't gotten to the FAQ page yet, but admittedly, I likely would have missed that issue. I'll ask Brent what he thinks is the best option for linking.
So, pinout sheets -- I know there was talk of software to generate the pretty ones like the RP2040 has, is that still a work in progress? I'd like to offer help making sheets, it would make me very happy if every board had one
Definitely still a work in progress. I'm the only one making them and other things keep being prioritised above it. It's a bit of a bonkers process to make them, though much easier than doing the whole thing manually. I don't think any of it is internal-only? But it requires an SVG editor (like Inkscape or Adobe Illustrator), and a level of finesse. All of the diagrams I create are approved by Limor before being finalised, which is I guess the step that's more internal than the rest.
You're referring to PrettyPins right?
Ahh, gotcha. Yes I am, forgot the exact name for it
Ok yeah, making sure I was explaining the right thing.
I do have Inkscape, so I can do SVG. By "a level of finesse", do you mean ability to lay everything all pretty and logically?
Yeah that's what I mean. Put more literally: doing it the way Limor wants it. Which, you could sort of figure out from the ones already published. Sometimes you have to move things around on the pin label lines, or add lines to be able to point to things that are in the middle of the board but the label is, for example, above it, or whatever - I only mention the adding lines because it means "creating content" that isn't already there (though I usually copy and paste a current line and then move it around and shorten it or whatever). I don't know if you've done SVG editing before, but it's a bit tweaky.
I wouldn't mind having someone else doing it, but I don't think Limor would give me the option to teach someone else, mostly because she's still approving these things and so then she'd be involving someone outside of Adafruit etc.
Best I think I could do is update the README to explain it better than it does, and then let you do with that what you choose to on your own. It's a weird process though. For example, you have to almost always run it twice to get the Arduino pins to even show up. No idea why.
Point being, if you managed to put one together based on the README, and passed it on to me, I'm not going to turn it down. 🙂
Ahh, gotcha. Sounds good to me! I'm always up to new challenges! And PrettyPin charts are so satisfying...
Ok, I'll try to get the README updated. It's on GitHub under the adafruit user, called PrettyPins. Might be a week or so before I get to it, but I'll try to remember to let you know. Otherwise, keep an eye on it.
Sounds good ^_^
Thanks again for this suggestion. The answer has been updated to one guide that will get folks started, and a link to searching Learn for "airlift" for further information.
https://learn.adafruit.com/using-google-assistant-on-the-braincraft-hat
https://pastebin.com/embed_js/Ej3TtTeA
is it just me or did bullseye break something?
Braincraft does if you Install pitft..
thanks for reply, does that mean the solution is to flash buster ?
As far as I know, that is the only option for now...
@indigo swan Hello. I have updated the PrettyPins README. It's still in flux as we work through teaching Dylan how to do it, but it's at least a start. I figured I'd let you know. https://github.com/adafruit/PrettyPins
using buster has gotten me further with this but now it hangs on playback and I have to killall googlesamples...etc
https://learn.adafruit.com/using-google-assistant-on-the-braincraft-hat
aplay and arecord and speakertest work fine
I am really feeling dumb
(env) pi@grpi:~ $ googlesamples-assistant-audiotest
INFO:root:Starting audio test.
INFO:root:Recording samples.
INFO:root:Finished recording.
INFO:root:Playing back samples.
ok, it works if I activate venv as root
gv_buttontotalk.py works as well
only in root venv
@solid swallow I see all the new PyLeap guides, but how do i get them to show up in my PyLeap App?
They're not PyLeap enabled yet, I bet. There's a thing that has to happen on the backend first.
ah -- OK - I'll be patient -- at least I'll try 😉
🙂 I'll let them know, in case they weren't aware that the guides were published.
Thanks for getting them out there -- They look great!
Thanks!
@ocean flare they are hard coded in the app at the moment so it'll need a version bump. your phone should auto-update through testflight once it is released
Just an FYI -- It has not been updated yet. Not a problem but just wanted to make sure you were aware.
yup yup. I'm not sure when trevor is planning on updating. probably the week after thanksgiving
I am trying to port this to the titano with minimal CP exp no exp in HAss or MQTT
https://learn.adafruit.com/pyportal-mqtt-sensor-node-control-pad-home-assistant/overview
between the hdwr changes and the new protocols I dont know where to start.
I have the Titano showing buttons then on code.py line 233 it errors with "typeerror 'module' object is not callable"
Am I asking correctly?
I #'d all lines dealing with the adt sensor that does not exist on the titano
is this the correct channel?
I also am not using the pir
I suggest #help-with-circuitpython. This channel is meant for discussing guides from a technical standpoint, not getting help with doing the project from a guide. We discourage cross-posting the same question in multiple channels, but in this case, I suggest you repost your question in the CircuitPython help channel.
understood, thank you
https://learn.adafruit.com/adafruit-esp32-s2-feather/pinouts
With this learn guide: There's a warning about enabling pin 7 to be able to use the stemma connector. But it's listed under "Power". I was searching under the "Stemma QT" and though I had a busted wire because I didn't think to check under Power, since the board was powered and running circuit python without issue. Would that warning make more sense in the stemma qt section?
Maybe in both. But good idea.
Done.
Awesome! Hopefully that'll mean the time I spent unplugging and plugging in different cables will be time well spent now 🙂
Oi! Yeah hope so. Sorry about that!
Worst part? We're renaming that pin yet again because the next rev of Feathers, the pin won't be inverted. 😄
So we'll have a rogue set of them that have the inverted pin, and the rest for all time will not.
haha it happens. Every project has to have a moment where you want to smash it to bits. And oof having two versions is going to make the guides even more fun to manage. But hopefully it'll also make it easy to fix a lot of problems users run into
@cerulean pine I've created a new page "Label Updating" for the existing Display Text learn guide: https://learn.adafruit.com/circuitpython-display_text-library/label-updating?preview_token=u4hwkc8ZyJhER7RdG1bvkw Right now the page is marked as a draft. I believe the new page is ready for moderation and publishing if good. I know the process for brand new guides that haven't been ever published yet, but this is my first time adding a new page to an existing guide. Is there anything specific that I should to do to mark the single page as ready for moderation?
@uncut gulch - copy and paste what you just wrote and email it to me and I'll moderate after I get the newsletter out
There is no present way to flag a page for moderation
Please am working on a school project using Adafruit DHT11 sensor suddenly the sensors started giving sensors not detected check wiring, I have been troubleshooting for days, is there any patch to fix this problem or what do I do
This is not the right channel for this question. Ask in #help-with-projects. Not as many people keep an eye on this channel. We usually discourage posting the same question in multiple channels, but in this case, I'm telling you that you should.
ok thks
i'm just kinda confused rn, in the learn page of this display (https://learn.adafruit.com/1-5-and-2-4-monochrome-128x64-oled-display-module) in the pinouts sections it says not to connect pins 9-14 if you're using i2c, but in the python wiring guide section it says connect pin 9 to the board SDA when using i2c. am i missing something here?
In the datasheet for the display https://cdn-shop.adafruit.com/product-files/2719/UG-2864ASWPG14_wisechip.pdf on page 3 it says Host Data Input/Output Bus These pins are 8-bit bi-directional data bus to be connected to the microprocessor’s data bus. When serial mode is selected, D1 will be the serial data input SDIN and D0 will be the serial clock input SCLK. When I2C mode is selected, D2, D1 should be tired together and serve as SDAOUT, SDAIN in application and D0 is the serial clock input, SCL. Unused pins must be connected to VSS except for D2 in serial mode. So it looks like that is why D2 is jumpered to D1 for I2C. The pinout section should be clarified.
I edited to say this. I think this is right now?
Pin #7 is Data0 - this pin is the SPI Clock pin, I2C Clock pin and the 8-bit data bit 0 pin. This is a 3V logic level input pin when used with I2C/SPI, and an input/output when used in 8-bit.
Pin #8 is Data1 - this pin is the SPI Data In pin, I2C Data pin and the 8-bit data bit 1 pin. This is a 3V logic level input pin when used with I2C/SPI, and an input/output when used in 8-bit.
Pin #9 is Data2 - this pin is tied to Pin #8 when used with I2C. It is an input/output when used in 8-bit mode.
Pins #10-14 are Data3-7 - Used for 8-bit mode. These are 3V input/outputs when used in 8-bit. Do not connect if using SPI or I2C.
LGTM -- I don't have one to test, but based on the datasheet, I think this is correct. Thanks!
(I don't know if this is the right place to leave this or not, so I apologize in advance if it is not.) Would it be possible to get the PCF files for this project converted to GRBL? The PCB manufacturer I am using (JCLpcb) is requesting GRBL files: https://learn.adafruit.com/raspberry-pi-pico-led-arcade-button-midi-controller-fighter/wiring-the-5-way-navigation-switch
those PCB files are in Eagle. You can download a free version of Eagle and convert them, or import them into kicad and convert them
Okay. Thank you.
I'm working on a couple of thinks that would make nice learn-adafruit guides. Who can I talk to about getting there on your site when I finsih the projects. I might need some help making them meet your high standard or I could hand them off for someone to dot the eyes and cross the teas.
I replied in a thread in #help-with-community.
Is there a such thing as too many pictures in the assembly part of a guide? I disassembled one of my prototypes and took pictures of everything I thought was important to see, I have 22 pictures and a sentence or two explaining each one
It depends. 😄 I know that's not useful. Basically, what you can do, is make Side2 elements, and include multiple pictures in each Side2, and explain multiple images in the same block of text in the Side2. It shrinks down the length of the page, while still allowing for a lot of images. I feel like it's not that common to do, and that many images is equally uncommon. However, the process I explained might make it work. I imagine that you will otherwise be asked to pare it down some.
about 1/3 of them are showing the steps to mount the bone conduction transducer to a set of glasses. I'll try the side2 stuff and trim some out if needed
Sounds good! Here is an example of a lot of images. Can't believe I found one on the first try. https://learn.adafruit.com/diy-pico-mechanical-keyboard-with-fritzing-circuitpython/pico-keyboard-assembly
Thanks! that is a good example.
You're quite welcome! Remember you can always email Anne with questions if you don't get a reply here. She's the Learn system guru. 🙂
side2 makes things look much nicer, i went through with an eye towards redundancy and got rid of a few images/combined steps
hi, is there someone I can speak to about learn.adafruit.com please? Have a suggestion to make PyPortal documentation more accessible
Probably email support@adafruit.com or open an issue on the circuitpython-org repository on GitHub
thank you, I didn't get a reply from support in over 2 months, even after a polite followup. Will try opening an issue
👍🏻
hrm so it's not the circuitpython.org site I have a proposal for, but the learn.adafruit.com site. I can't see an equivalent repo for that undr adafruit's github...
I only suggest the circuitpython Org repo because of visibility.
There isn’t really a repo for the Adafruit learn site
Plus the folks who help maintain the Adafruit learn site manage the circuitpython org repo
if I post an issue for that domain, won't they be a bit confused and close it ok if the team is the same, that makes sense
Just make sure you reference the learn site in the issue title
One other thought it to use the feedback link on the learn guide
I always forget there is a feedback option for every learn guide
thank you for your help, I opened a new issue. If you have any feedback to make it clearer please let me know. https://github.com/adafruit/circuitpython-org/issues/954
Thank you for your website and products. I'm a happy user. Proposing that on learn.adafruit.com, a category is added to ensure PyPortal products are '1st class citizens', li...
I'm a bit confused about this wording in the guide for the Adafruit Powerboost 1000 Basic: https://learn.adafruit.com/adafruit-powerboost-1000-basic/pinouts
LBO - not a leveraged buy out! this is the Low Battery Output. By default it is pulled high to BAT but when the charger detects a low voltage (under 3.2V) the pin will drop down to 0V. You can use this to signal when its time to shut down or alert the user that the battery is low. There is also a red LED connected to this pin.
Does this mean that the LED is on when the voltage is below 3.2V, or off when the voltage is below 3.2V?
if it goes to 0 volts at low power, and an led feeds off of that...
It’ll turn off when voltage goes low.
Okay, thanks
@pliant token images for WSL learn guide feedback.
It probably took me about 1-2 hours to install WSL, Visual Studio Code, GIT, python, packages, submodules, adafruit requirements, etc.. and get it to a place that was ready to code and contribute to Circuit Python. The section of the learn guide dedicated to WSL should be its own learn guide. There are so many pitfalls that can happen like packages not being installed correctly, installing things in the wrong order, etc.. that makes the entire process feel like jumping through 30 hoops. However, once everything is done, having a legitimate Ubuntu distro cmd line within Windows was worth the effort. Visual Studio Code makes working within WSL GIT repositories feel like an optimized experience.
Did you install WSL1 or WSL2?
it defaults to WSL2 i suppose, i never specified but i did do a version check shortly after it installed to confirm it was WSL2
In retrospect, do you think it would have been easier to install VMWare or similar and install Ubuntu?
not really, would probably be about the same plus there would be yet another layer wrapped around it with vmware
The steps of installing WSL have changed over the years, and I would actually like to point to MS doc or similar for the initial install, instead of making a duplicate tutorial that will age and become wrong. For instance, the virtualization BIOS setting you mention might be covered elsewhere.
however at least with the WSL install i did, there's no GUI and with vmware you'd probably get a choice of docker and GUI.
it's kind of up to preference
where does VSCode present a GUI then? Does it know about WSL and do the GUI in windows but access the WSL filesystem?
when I wrote the code VScode was much younger
i did see more advanced options after i did the install where i think there might be a gui yeah. i haven't looked into it.
did you do it on Win10 or Win11?
the vs code integration is very good and easy to use. can definitely recommend taking another look. i had the same experience eh maybe 5 years ago and immediately uninstalled it. it's different now, a pleasure to use.
10
to the point of being an acceptable substitute for vmmare if you just want a termainl or headless style install
When I have a chance I will redo my WSL installation(s) and check it out; thanks for taking the time to write the feedback
👍
having terminal but with vs code as the gui is pretty sweet. don't have to deal with nano.
oh WSL becomes VSCode aware when you install vscode on windows, it does a path hook or something so when in an ubuntu terminal sitting on the circuit python directory for example, type "code" into terminal and it launches vscode in windows but with the directory structure from your repository in ubuntu filesystem.
or maybe it's vscode becoming WSL aware, i'm not sure. i have 2 gits, 2 pythons running on both ubuntu and windows and file system interoperability... easy to get confused about what is doing what and where.
it's like GIT inception running on windows, within ubuntu, from vscode on windows, with ubuntu file structure.
@pliant token here's a quick demo video i made showing WSL2 integration and usage. the git repo on my ubuntu is only running the latest CP specifically for builds. it's separate from the one i have on windows Github Desktop app for PR's and contributing. so you can run 2 simultaneous GIT's for different purposes if you want with this setup. just showing the different ways to get to Ubuntu through windows cmd line or ubuntu terminal and file transfers between ubuntu <-> windows is seamless. for headless installs you can 1) dual boot 2) vmware 3) wsl If you would have asked me last week my choice would have been vmware, now it's hands down WSL and that's mostly thanks to the VSCode integration but my needs are very basic only for the purposes of running python and git. i think if people can see how well the integration works in the learn guide they'll be happy to go with WSL. Feel free to use this video in the learn guide or for whatever purposes you like.
Thanks!!
how do I report a wrong link on the website (links to incorrect Learn article)?
On the product page for the ATTiny817 Seesaw board https://www.adafruit.com/product/5233, the link at the bottom to the "Adafruit seesaw guide" links to https://learn.adafruit.com/adafruit-seesaw-atsamd09-breakout/ instead of https://learn.adafruit.com/adafruit-attiny817-seesaw
Thanks! reported to the page maintainers
Link is fixed