#live-broadcast-chat

1 messages ยท Page 47 of 1

wind spoke
#

Are you with 0,0 on the top left? You might need to substract the top left location of the keyboard.

#

Maybe you can highlight the key computed...

sand lotus
#

if you' still have the default sprite buttons then the menu sprite button is top left.

grand tusk
#

You might want to put a small rectangle at the touch position.

rigid crag
#

ok, dug up some old tkInter code
column = x // (WIDTH + MARGIN)
row = y // (HEIGHT + MARGIN)

#

where MARGIN is the size of the cell boundary

sand lotus
#

maybe buttons are inspired by tkiner? i coded the grid layout from scratch but the SpriteButtons do have a MARGIN parameter.

rigid crag
sand lotus
#

and I overrode the margin on all the buttons in favor of hardcoded x,y

rigid crag
#

exactly

sand lotus
#

interesting

#

so the margin would have all the info i would have needed and I deleted it? figures.

wind spoke
#

Do you have a table/grid with all the keys so that you can ask key[x,y]?

sand lotus
#

I was going to replace them with special characters and caps up arrow like on mobile.

#

because everything is still in caps, it was a big work in progrress.

dawn bear
#

@smoky island I have to run. But it has been very interesting watching a CP dude work!

rigid crag
#

move shift to the left to give room for an arrow key set with the up/down on top of each other

dawn bear
#

I guess happy holidays

#

๐Ÿ‘‹

rigid crag
#

put shift to where ctrl is

sand lotus
#

honestly didn't know what to put there so just added the arrows.

rigid crag
#

I would look at old blackberry keyboards or the like

sand lotus
#

would love to have a touch keyboard library instead of just a layer. getting rid of all the layers associated with it is a task in itself.

rigid crag
#

yea, have a class where one of the attributes is a display group, then coordinate to key value map

wind spoke
#

It is a bit sad that it is an ortho keyboard, but the internet is full of hardware ortho keyboard image.
I could see a C64 virtual keyboard, or ZX Spectrum virtual keyboard, but we need to be more flexible on the key position... maybe a list of key top-left and bottom right?

rigid crag
#

you could use the label as a key into a dictionary for the value

sand lotus
#

i honestly don't know what is best. it was a thing i neede d to make... an attempt was made is all I can say.

#

you would have to make "half cells" to offset for a real keyboard style.

rigid crag
#

iteration after the initial slog thru the proof of concept always seems easier

sand lotus
#

maybe go opposite with a while background with black lettering during touched.

sand lotus
#

because it's resistice it's designed to be used with a styles or fingernail but i have noticed that a finger print can actally work as well.

#

thanks to CGrovers calibrator! the accuracy is excellent.

#

I wasn't sure how to make the delete key actually delete the last type letter either.

#

but I still have to add special characters and caps lock, issues I can work on over time.

rigid crag
#

delete in python can be done by doing a slice of the current value -1 of the length

#
label = label[:-1] # for delete key
sand lotus
#

ah thank you

rigid crag
#

and you can use -1 on an empty string all darn day

#

use two arrays - one contains the value to insert and one to show the type of the cell

grand tusk
#

Go with Baudot. Five keys is all you need.

sand lotus
#

enter was thinking of using a file append to a config.txt because i figured overwrite values in settings.toml would be a no no without boot.py

rigid crag
#

also - store the values for non shifted and then do a call to UPPER for the shifted?

sand lotus
#

yup was thinking str to upper but shift might be required for special characters.

rigid crag
#

if the cell "tag" shows that it's special, then you can do something just for them

sand lotus
#

wouldn't space just be " "?

rigid crag
#

that whole bottom row can be handled differently

sand lotus
#

and can reference the array[] index for space

#

yes just came up with it in an afternoon, i did not put a lot of thought into the layout for proof of concept.

rigid crag
#

the space bar is really just multiple occurances of " " in the array

#

oh - he's using the label value as the key

#

try Q or Z

sand lotus
#

oh heck yes some text is up on the display now ๐ŸŽ‰ that's awesome.

rigid crag
#

off by one?

sand lotus
#

possible terminalio font doesn't have all characters?

#

well a & = should work.

rigid crag
#

yep, merged the two strings into one

inner spade
#

good to be back

rigid crag
#

yes, arrow keys could be used to a position a slice insert

grand tusk
#

๐Ÿ‘‹

rigid crag
#

thanks for the live stream

modern night
#

Thanks! This was a lovely stream! I hope the holiday season is great for everyone!

unreal bay
#

Thanks Tim ๐Ÿ‘‹

inner spade
#

Thanks!

sand lotus
#

see the touch keyboad actually work is pretty awesome. will make a great addition to a library! see you tomorrow for โ˜• hopefully.

proper prawn
#

Thank you Tim. All a Merry XMAS and a happy NY

smoky island
clever summit
#

Morning Tim!

sand lotus
#

good morning โ˜•

inner spade
#

โ˜•

clever summit
#

"If at first you don't succeed, just give up."

sand lotus
#

Advice I live by for relationships

#

I like seeing all the touch related stuff. There are more displays coming out that are touch capable. Not a lot of touch examples out there other than for the pyportal.

clever summit
#

โ˜•

clever summit
inner spade
#

This weekend's project: trying to wrap up an overtone sample generator helper for synthio. It takes a list of wave types (sine, square, triangle, saw), frequencies, and amplitudes then creates a synthio.waveform object of the combination of the fundamental and listed overtones. Was able to create a decent quality wind chimes sample with a fundamental and four overtone frequencies. Next test is to recreate the source oscillator that was used by Roland for their TR-808 top hat drum sound. Also hoping to save the sample object in some sort of compatible file format.

clever summit
#

I have been trying to implement displays for use with Home Assistant. It is very painful. ๐Ÿ˜ฌ

#

Yeah, I am one of his sponsors.

clever summit
#

Yup, it is a standard ESP32 so it can do whatever,

inner spade
sand lotus
#

I've been spending the morning trying to get a slider for brightness working in preferences and failing.

#

Your PC hasn't been happy lately. :/

grand tusk
#

I got safe mode when I tried to append to display.root_group. Same error message.

#

Adafruit CircuitPython 9.0.0-alpha.6 on 2023-12-12; FeatherS2 with ESP32S2

#

Also TFT FeatherWing 3.5".

#

The TFT is HX8357.

sand lotus
#

depends on what you're trying to append? I've had no issues appending to display.root_group = main_group

#

have to give .root_group a displayio group

#

ah i'm not running alpha though

#

yes 8.2.7 with latest 8.x bundle

#

only reason i haven't upgraded to 8.29 is because it seems they come out with a new version every week while i'm still trying to build the thing.

#

i don't use adafruit_touchscreen and instead use the cmpe610 touch driver directly

#

if i'm working on a new project absolutely i'll use an alpha, like i used 9 alpha for the 12 matrix panel project. but this is my main project i need stable

#

also on my other one is my moms fitbit heart monitor display so need that working solidly too.

grand tusk
sand lotus
#

intermittent issues are the hardest to track down

#

fork awesome even on scale 1 is pretty big so i don't think it would work on a smaller tft

#

looks good in this case because the rest of terminalio.FONT is at scale 2

#

ah good point.

clever summit
#

Oh, the familiar "why did I.... " question. ๐Ÿ™‚

sand lotus
#

does this means I'll need to update to alpha 9 to run this?

#

awesome, sounds good. guess i'll start working on some preferences in the mean time.

#

One of the nice things of having it all self contained is you can get a better idea of when to upgrade to the next version.

#

I didn't think so either, everyone talks about 32gb but i'm running 128...

#

planned on adding a lot of downloaded NOAA images and background slide shows. family pictures, etc...

inner spade
sand lotus
#

that's a lot of math i'll never understand ๐Ÿ™‚

inner spade
#

No recordings yet. Iโ€™ll post the whole project on Playground soon.

sand lotus
#

really appreciate you taking this project on. there's no way I'd be able to condense it all down like you can. i think a lot of people with touchscreens will get use out of this one in the future.

#

my concern with the blackberry style keyboards is they're hardware and could completely disappear someday where as this... will be an option forever.

lyric frost
#

I2C keyboard input from the Blackberry keyboards or the LilyGo T-Deck would be great

#

The keyboards do drop off market, but if you get a standard supported in CP, new devices will probably follow suit

sand lotus
#

i think that one was based on Arturo's Solder Party BBQ lora board

lyric frost
#

I blew up my featherwing, was really sad until I found that

#

Yep

#

I actually liked the joystick better though, the trackball is a little sticky

sand lotus
#

think they were phased out in favor of cap touch screens

lyric frost
#

Yes, there's a build

sand lotus
#

Tim's X-mas shopping list just grew by 1

#

not gonna lie i've been eyeing the t-deck for a while too

lyric frost
sand lotus
#

what do you think would be the best way to add a slider control for 0-100% for brightness preference? I'm currently using adafruit_progressbar without any success.

#

oh wow i could just use grid layout with 100 divisions. duh.

#

i thought someone made one too but couldn't find one.

smoky island
sand lotus
#

how i missed that i have no idea, thank you.

sand lotus
#

the fontawesome symbol used for delete is the undo symbol. thought that would be intuitive but after the discussion yesterday seems i should choose something else. there is no delete symbol that i know of.

sand lotus
#

yeah might change it to left arrow, and just get rid of the arrows. not sure they're useful?

lyric frost
#

If you have two spaces left arrow and "|"

#

<-|

sand lotus
#

notice i did get rid of the windows key ๐Ÿ™‚

lyric frost
#

Use arrow rather than < -

sand lotus
#

it's fairly easy to customize too. could have language layouts like neradoc does for languages

lyric frost
#

But with two chars, BS might work too

sand lotus
#

some of the new qualias have touch capability now too

#

even the round qualia display. an arc keyboard sounds neat.

#

awesome stuff today, a lot of possibilities in making devices self contained without USB connections to change parameters.

#

thank you for the stream, amazing stuff.

inner spade
#

Thanks for the stream. Always interesting to watch how you refactor a project into a library.

sand lotus
#

If we don't see you Happy Holidays ๐ŸŽ„

lyric frost
#

Thanks ๐Ÿ‘‹

open girder
verbal river
#

Bye!

open girder
#

๐Ÿ‘‹

mellow arrow
# open girder Desk of Ladyada - Schottky sub shock https://youtu.be/FhKoHpjbp0o

Many thanks for this video / live stream. First, it gives some insights into debugging hardware. Second, it highlighted a few potential problems which can pop up and how they might be diagnosed.
For me personally, the first segment on the diode causing fade on the ePaper display was timely. I am working on a project with ePaper and I started with the Adafruit schematic to get a handle on the boost circuit. I even use the same diodes from the same supplier. (I will be sure to run a test to check for the fade issue)

haughty quiver
#

hello all!

inner spade
#

Hello!

dusk socket
#

Hi john hope you have a merry Christmas

feral mortar
#

What is the input impedance of the 5836?

cinder wind
viral sail
#

Good afternoon.

ivory flax
#

Merry Christmas to you and your family. Your shows always bring great joy to my life.

shell mason
#

lars peaking

split gazelle
#

๐Ÿ‘‹

inner spade
dusk socket
#

Happy new year to you and yours best wishes to all Adafruit people.

cinder wind
shell mason
#

lars peak behind JP

#

it look like lars is on JP back just look what jp sees

rotund marsh
#

Any thoughts on whether a bunch of these 8 channel ADC could be used for human brain interface?

timid plover
#

70 Ksamples per second seems to hint that the arduino libraries are required - how fast can circuitpython make readings ?

inner spade
shell mason
#

@inner spade think Lars speak over jp shoulder using 8Channel 8Bit ADC

cinder wind
inner spade
cinder wind
#

hey pot sliders are a kind of human brain interface ๐Ÿฅธ

shell mason
#

think pot sliders use lars brain interface

rotund marsh
#

Thank you, am looking up eeg electrode specs... Seeing Open BCI (Brain Computer Interface) libraries, down the rabbit hole I go... Am looking for BCI project to do with kids over the winter holidays.

viral sail
#

Thanks @haughty quiver

inner spade
#

Thanks! Can always use more inputs.

cinder wind
#

thanksJP!

cinder wind
haughty quiver
#

thanks all!

ivory flax
#

Happy New Year !

rotund marsh
#

Thank you JP for the stream. Thank you @cinder wind and folks for the pointers. Yeah, looks like 24 bit ADC would be better like this texas instrument ADC that explicitly calls out EEG use https://www.ti.com/lit/ds/symlink/ads1299.pdf. Will keep digging, maybe get these discounted sensors just to see how laughably bad they are for this scenario ๐Ÿ™‚ Can always reuse for other projects.

upbeat coral
#

I finally get a Wednesday lunch free and no show๐Ÿ™

midnight plinth
#

?showtimes

arctic abyssBOT
#

Desk of Ladyada - Sunday Evening
JP's Product Pick of the Week - 4pm ET Tuesdays
3D Hangouts - 11am ET Wednesdays
Show & Tell - 7:30pm ET Wednesdays
Ask an Engineer - 8pm ET Wednesdays
John Park's Workshop - 4pm ET Thursdays
Deep Dive w/ Foamyguy - 5pm ET Fridays
FoamyGuy's CircuitPython Stream - 11am ET Saturdays

cold elm
#

No show?

#

or too early?

#

lol I am addicted to this wednesday thing

ashen carbon
robust horizon
#

?showtimes-gmt

arctic abyssBOT
#

Desk of Ladyada - Random hacker times
JP's Product Pick of the Week - 20:00 Tuesdays
3D Hangouts - 16:00 Wednesdays
Show & Tell - 00:30 Thursdays
Ask an Engineer - 01:00 Thursdays
John Park's Workshop - 21:00 Thursdays
Deep Dive w/Foamyguy - 22:00 Fridays
FoamyGuy's CircuitPython Stream - 16:00 Saturdays

cold elm
#

@sand lotus Home automation system

sand lotus
#

Looks gorgeous. Nice design.

cold elm
#

it has an LCARS theme

#

that menu is for my encviromental audio system

#

my appt sounds like the engineering deck of the enterprise D

ashen carbon
#

world's worst neighbor energy

#

but its like how do you report that to building manager

cold elm
#

??

ashen carbon
#

"i swear, it sounds like a spaceship next door"

cold elm
#

If you can hear it thorugh 12" of ocncrete and steel I"ll be impressed

sand lotus
#

Any neighbor that complained about star trek sounds isnโ€™t a neighbor iโ€™d want anyway.

cold elm
#

now if you open my front door, that's another story ๐Ÿ™‚

#

I have LED lights / airlock front door effects

sand lotus
#

Niiice

ashen carbon
#

well, given that, i think your system needs sprucing up. When they can hear it, ill be impressed lmao

cold elm
#

lol

#

the idea is that it's ambient noise

#

more like you are living in a spaceship not at aan ac/dc concert

#

now when I start to play music on the regular system, that's another thing

cold elm
ashen carbon
#

I need to figure out power for my ws2812b strips

cold elm
#

are tehy 12v or 5v ?

#

iirc they are 5v

#

I use an athom controller with WLED and a 5v 2a power supply

inner spade
#

๐Ÿ‘‹

upbeat coral
#

Hey Y'll

viral sail
#

Good evening everyone.

cold elm
#

Ahoy!

open girder
ashen carbon
cold elm
#

I'm all about the WLED until I can twig on programming them

inner spade
#

IO feed calculations! Hoorah!

cold elm
#

you can do that with Home Automation

#

er Home assistant

haughty quiver
#

@torpid geyser Blockly in AIO is great!

sand lotus
#

I like the idea of blocky with adafruitio actions.

cold elm
#

yeah I love blocky for stuff I don't knwo how to do , then swap over to python

sand lotus
#

I like the weather angle. โ€œ i just want to know if i need to take an umbrella with meโ€

shell mason
#

Lars

inner spade
#

Rather than calculating a composite feed in the MCU and sending it to IO, will calculate in IO and reduce the number of feeds.

dawn bear
#

Hello from swampy Los Angeles

shell mason
#

now think round display for eyes could be so lively lars

dawn bear
#

Just got 1.2 inches in 35 minutes

cold elm
#

I dont have anything ready to show today, but I am making leaps and bounds with my cloudless home automation

dawn bear
#

You mean you can make clouds go away!!!

cold elm
#

lolz

shell mason
#

last appearance of the year for JP showing lars memento

slow spire
#

BFF Squad is such perfect naming

cold elm
#

oh wow

haughty quiver
#

very cool @split gazelle !

sand lotus
#

Great pcb design liz.

split gazelle
hot frigate
#

This is very cool. I wish I had had one when I was designing test fixtures. I would go as far as to make a 6 spot one as well. Great job @split gazelle !

dawn bear
#

Fonts!!! Way cool!!!

wind spoke
#

Hi, I think Liz has her volume low (lower than others), that was the same in the CircuitPython meeting of Monday. Beep @split gazelle .

sand lotus
#

A font library. Awesome!

dawn bear
#

Some wingdings? Symbols?

split gazelle
#

can't wait to use the fonts bundle

inner spade
#

import font is a game changer. Nice to have the licensing issues solved, too. Super!

haughty quiver
#

love this so much @robust horizon

wind spoke
#

The learn guides are full of fonts, frequently duplicate. Maybe there is some cleaning possible to use this new way?

gray obsidian
#

Does it support Unicode combining characters? ๐Ÿ˜…

robust horizon
#

@gray obsidian no, it doesn't change anything about font rendering, it's still the same rudimentary level of support as always.

dawn bear
#

@robust horizon Fantastic

haughty quiver
#

YES! Diode cutter rules!!

robust horizon
#

there aren't any wingdings yet, adding that would be a great idea. ditto one of the appropriately licensed versions of fontawesome

split gazelle
#

amazing

robust horizon
#
circup bundle-add adafruit/circuitpython-fonts # You only need to do this once
circup install font_free_mono_9```
gray obsidian
#

Edward DiodeHands?

sand lotus
#

Replaceable xacto blades is a great idea too.

gray obsidian
#

xacto blade I used yesterday to replace a soldering iron tip to cut into connectorsโ€ฆ works not too badโ€ฆ

haughty quiver
#

Now i really want an excuse to need to cut sets of diodes

gray obsidian
#

a keyboard matrix?

#

we can come up with ideas if needed

wind spoke
#

I knew that was for keyboard... who need a precise number of diode for a kit?

upbeat coral
#

YESABOX!

gray obsidian
#

thanks!

viral sail
#

Great projects everyone. Thanks for sharing.

shell mason
#

happy larsmas

sand lotus
#

Thank you everyone for more neat projects.

ashen carbon
#

so, not too upset

cold elm
#

Too much fun ๐Ÿ™‚

open girder
#

WE ARE LIVE! ASK AN ENGINEER! https://youtu.be/8l2wJhrcIOg & 10% discount code, code is: padc http://www.adafruit.com ends at midnight NYC time

ASK AN ENGINEER 12/20/2023 LIVE!

Visit the Adafruit shop online - http://www.adafruit.com


LIVE CHAT IS HERE! http://adafru.it/discord
Subscribe to Adafruit on YouTube: http://adafru.it/subscribe
New tutorials on the Adafruit Learning System: http://learn.adafruit.com/
----------------------------------...

โ–ถ Play video
gray obsidian
#

I feel for those people afflicted with VVS: Vertical Video Syndrome ๐Ÿค—

calm sphinx
#

Adafruit gift cards are my fave thing to get for Xmas ๐Ÿ˜

gray obsidian
#

My mum is a maker (she made stuff herself for work) but not as much as getting into electronicsโ€ฆ

wind spoke
#

How does a gift card look like? Is it something you can print and contain a "coupon code" or something?

gray obsidian
#

It's ok, as long as you do the episodes in order: 4,5,6,1,2,3โ€ฆ

upbeat coral
#

His knives weren't that scary, rotating arbor knives are scary.

wild urchin
#

People like to skip the mistakes part by learning from other peoples' mistakes.

shell mason
#

Great Search with ladyAda is great

wild urchin
#

The problem is all the people who skip the learning part too.

open girder
#

10% discount code, code is: padc http://www.adafruit.com ends at midnight NYC time

calm sphinx
dense ether
wild urchin
#

Having an ID card printer would make it easy to make gift cards.

#

Out of Adafruit gift certificates!

#

Not nefarious purposes.

cold elm
#

I have one of those ๐Ÿ™‚

dim knot
wild urchin
#

Definitely wanting to fab up an ornament now.

feral mortar
#

Why not just use ethernet instead of LTC4332

dim knot
shell mason
#

very nice

dim knot
delicate fractal
#

Lady Ada: New! New!
PT: Stay on Target!

feral mortar
#

Do you think the MCP3421 will work with a zirconia sensor

gray obsidian
#

Same same, but different.

delicate fractal
#

Wikipedia's page on the Ship Of Theseus has been completely re-written in the past year. How meta is that?!?

gray obsidian
#

ROTFL

#

โ›ต

#

Well even for retro sellers raise prices on NOS chips because chip shortageโ€ฆ ๐Ÿคท

wild urchin
#

Question: does the flirc case for Raspberry Pi 5 work with the active cooler?

#

Or is that whole case being a heat sink?

feral mortar
calm sphinx
#

Thank you for a wonderful show!! ๐Ÿฅณ

gray obsidian
#

Thanks everyone!

sand lotus
#

Thank you for a great show and another great year for adafruit. Happy holidays!

viral sail
#

Thanks @open girder and good night. ๐ŸŒ” Happy Solstice | Happy Long Night | ๐ŸŽ„

gray obsidian
#

n8!

wild urchin
#

Thank you and good night!

delicate fractal
#

Ohm.

haughty quiver
#

bye all!

timid plover
#

quick question for LadyAda - what is ADAFRUIT_PYGAMER_ADVANCE_M4_EXPRESS ๐Ÿ™‚

I was looking at the nofrendo_arcada and saw mention of that conditional in nofrendo_arcada/src/emuapi.h
#if defined(ADAFRUIT_PYGAMER_ADVANCE_M4_EXPRESS)

haughty quiver
#

Hey all, have a happy holidays if you celebrate and lovely new year, I'm off now, see you in 2024!

shell mason
#

lars memento mori renturns on 2024

upbeat coral
#

Wellp, 24 hours and no email. Guess I'm not in the first drawing.๐Ÿ™

wind spoke
# timid plover quick question for LadyAda - what is ADAFRUIT_PYGAMER_ADVANCE_M4_EXPRESS ๐Ÿ™‚ I w...

Did you check this: https://circuitpython.org/board/pygamer_advance/
That was "coming soon" on "Top Secret" (don't ask) some years ago, but I think it was left as a prototype, maybe due to M4 availability?

The PyGamer Advance is coming soon from Adafruit, check out the weekly โ€œTop Secretโ€ segment on ASK AN ENGINEER or the upcoming new product videos on YouTube.

smoky island
rigid crag
#

morning Tim

sand lotus
#

good morning โ˜•

#

Sensor Fairy ๐Ÿงšโ€โ™€๏ธ very nice. Didn't even have to leave a tooth under the pillow.

rigid crag
#

success but no content to return is 204

sand lotus
#

It's recommended to use a NIST traceable thermometer to calibrate temp sensors. That's why the caveat is declared in code comments as it should be.

#

Altitude is affected by relative pressure (which changes minute by minute). So you have to correlate them. It's why barometric pressure sensors by themselves are horrible for altitude tracking.... which is why my Fitbit thinks I've climbed 30 floors of a building whenever a storm happens that changes the pressure quickly.

rigid crag
#

it is setting what the minimal wait is required to be able to retrieve a value that is accurate because the gas value requires the sample to be heated and then extracted

#

minimal wait from the start of heat to sample selection

brisk bone
#

Hello everyone, joining a bit late today

sand lotus
#

Yeah I think the boards that have gas sensors use a heating element that takes time to heat up. so there is a minimum time.

rigid crag
#

yes, because it has to be calibrated to average ambient temp

#

if you are in a hot environment, it takes less time to heat the sample

sand lotus
#

can probably change it if conditions are right for it to heat up faster... like if you live in a tropical climate you can get away with setting minimum time to be shorter.

#

but if you live in Greenland... will probably want a longer preheat time

#

I always log hug reports and status updates, nightly. Otherwise I will forget.

rigid crag
#

the interesting part is that I believe that the sensor will auto calibrate over the span of 30 or so minutes, so temp adjustments should only be done if you have the appropriate reference samples to adjust it

sand lotus
#

except last week which would have had a huge hug for you and soft keyboard... but it's already in the doc for next meeting.

#

I'm the only person that updates it nightly, maybe because I know my memory is so bad.

#

if by sound effects you meant curse words sure

rigid crag
#

mostly when something fails ;)

#

groans, curses and head/palm interactions

clever summit
#

๐Ÿ‡ธ๐Ÿ‡ช ๐Ÿ‘‹

rigid crag
#

typo "on on"

#

chores and stuff are calling to me, i'll catch the rest on the backside
thanks for letting us lurk and learn o/

grand tusk
#

I've used Morse Code on and off for a while. ๐Ÿ˜‰
Morning all!

#

What ever became of your 'Octopus' game?

#

Sweet. Hope to run it on the Pybadge.

inner spade
#

We keep two dedicated PyGamers on the coffee table; one for Trash Panda, one for Octopus.

grand tusk
#

lol My high score so far: 7. ๐Ÿ˜ฌ

grand tusk
#

Consider making a function for each state: short, long, between words, end of message.

#

๐ŸŽ‰ ๐ŸŽ

#

Nice!

inner spade
#

Pretty cool!

sand lotus
#

it would just be a time.sleep then?

inner spade
#

The dit is the fundamental unit of pacing, if I recall.

#

Set the number (length) of lighted pixels equal to the number of dit periods, perhaps?

wind spoke
#

Now you need to find a decoder app that use the camera of your phone.

#

Or you write code for the Momento...

#

The camera from Adafruit.

inner spade
#

A dit would be one pixel; dash would be three; space would be seven.

grand tusk
#

s/self/elf/g -- get festive

inner spade
#

Itโ€™s one dit period between letters, seven between words.

#

This is a great project for learning code.

#

And practicing

wind spoke
#

You can use one LED per letter, and have every letter blinking in Morse code. Human will focus on one letter at a time at one pace.

wind spoke
#

Exactly.

#

Human can focus on one letter at a time...

#

At the speed of your reading capability.

#

Not forced to be fast decoder at the speed of the sender.

grand tusk
wind spoke
#

It will blink like crazy, but you if you know the code, you can read the message.

grand tusk
#

Thanks Tim!

inner spade
#

Thanks for the stream! Have a joyous holiday!

sand lotus
#

Thank you for the Saturday holiday stream ๐ŸŽ„ Have wonderful week.

wind spoke
#

Thanks.

brisk bone
#

Happy holidays ๐ŸŽ„

open girder
#

taking tonight off for desk of ladyada folks, happy holiday!

shell mason
#

its hacker times so sometimes hacker have to take off time

waxen bough
#

?showtimes

arctic abyssBOT
#

Desk of Ladyada - Sunday Evening
JP's Product Pick of the Week - 4pm ET Tuesdays
3D Hangouts - 11am ET Wednesdays
Show & Tell - 7:30pm ET Wednesdays
Ask an Engineer - 8pm ET Wednesdays
John Park's Workshop - 4pm ET Thursdays
Deep Dive w/ Foamyguy - 5pm ET Fridays
FoamyGuy's CircuitPython Stream - 11am ET Saturdays

sand lotus
#

good afternoon foamyguy, working on the soft keyboard again. very cool.

grand tusk
#

Happy boxing day!

sand lotus
#

I think it was something like <-|

#

can tell how quickly it made it before sharing because didn't even notice the repeated , cell ๐Ÿ˜›

#

just saw you were streaming about 5 mins ago, did see the JSON. seems that would work nicely with Neradocs keyboard layouts too, or at least similar enough to be easily modified for other languages or layouts.

#

i was having the same issue with double presses with the sprite button library. i think it's because it wants to turn the graphic inverted so it kind of requires a doublepress. i think i solved that by using if not button_press but that was for the feather weather gui.

#

the more layers you add the more complicated the debounce timing can be too.

#

i ctrl+d lines in that manner all the time. like why did it have to be ctrl+d for repl reload and right above it in code. py duplicates code.

#

well layers as in the keyboard in my project is going to be 1 of like 8 different pages. alot of append/remove to get the pages right.

#

big issue i currently have is that any touch button is available no matter the page, that's a problem loll

#

it's just a matter of removing the sprite button completely. i don't think pop will work.

#

i tried page layout at first yes, seems to be an issue with sprite button i guess. my logic is not as good as you would do. it's a work in progress.

#

actually i'm doing display.root_group = main_group and i switch root_groups

#

while display.root_group = main_group: show only main_group page.

#

buttons are basically sprite_buttons so they're labels

#

ah if button exists in group. yeah that's my next issue. the soft keyboard was just 1 page of changing wifi credentials

#

yup i'm using contains but i guess i'm not checking per page yet if that button should use contains on that page.

#

started as while time.monotonic() then broke it into groups, didn't even think about using if's instead

#

yup, can touch invisible buttons from any page. which wasn't an issue until you add a huge soft keyboard lol

echo canopy
#

No JP show today ?

sand lotus
#

I don't think so, holidays and FoamyGuy is streaming during off holiday.

#

Just a short demo. I made the GUI first then tried adding touch which is a bit more difficult.

#

exactly, preferences buttons in the middle are still pressable no matter what page i'm on.

#

it's amazing how you can just look at code for like 5 seconds and completely discect a problem. thank you, will look into that.

#

yeah so with that behavior add the soft keyboard on top and i have big problems lol. i'll get it sorted thank you.

#

i literally just made that layout without much rhyme or reason, was just a first try and it worked.

#

i'd like to make it more like a mobile device keyboard with special characters having their own grid layout

#

the arrow keys were just a test for unicode characters more than actually trying to have arrow keys

#

oh wow didn't even think of that. that's brilliant.

#

could be an easy way during initial setup for a user to choose their language kind of thing which could change the language for all the labels too.

#

though i'm honestly just trying to make this for family members so it would all be english.

#

good point, and my custom fonts only have basic alphanumeric, wiped out the rest with font forge to make smaller file size. they do load faster with bitmap font that way too.

#

grid layout eventually might as well become GUI layout. it's becoming a lot more feature rich with a soft keyboard. this is awesome stuff.

#

have a wonderful holiday season. โค๏ธ ๐ŸŽ„

smoky island
#

Thanks! Same to you.

open girder
#

SHOW & TELL and ASK AN ENGINEER returns next week!

cold elm
#

awwwwwww

#

๐Ÿ™‚

smoky island
#

Just a heads up, no stream for me today. Back next Saturday at the normal time.

clever summit
#

Bummer, was looking forward to the company. ๐Ÿ˜Ž

sterile forge
#

?

#

?showtimes

arctic abyssBOT
#

Desk of Ladyada - Sunday Evening
JP's Product Pick of the Week - 4pm ET Tuesdays
3D Hangouts - 11am ET Wednesdays
Show & Tell - 7:30pm ET Wednesdays
Ask an Engineer - 8pm ET Wednesdays
John Park's Workshop - 4pm ET Thursdays
Deep Dive w/ Foamyguy - 5pm ET Fridays
FoamyGuy's CircuitPython Stream - 11am ET Saturdays

sand lotus
#

Hackers take holidays too. It's New Years Day.

sterile forge
#

Does anyone know if there is going to be a JP product pick

sand lotus
#

Circuit Python meeting that is normally scheduled for Monday was rescheduled for tomorrow due to the holiday. My guess is things should resume their normal schedules tomorrow.

sterile forge
#

Thanks

sand lotus
#

We'll all just have to show up tomorrow and see if JP will be there or not. There is usually a blog post about an hour prior to his Tuesday PPOTW. We'll just have to wait and see.

echo canopy
#

๐Ÿคž๐Ÿป for JP today @4pm

haughty quiver
#

Hi, yes, I'll be doing the show today at usual time, 4pm Eastern/1pm Pacific

#

(despite the fact that i'm loopy because my body clock is still in Sweden)

echo canopy
#

Yay!!!! And a special happy New Year to you @haughty quiver !!!!

haughty quiver
#

Happy New Year @echo canopy !

shell mason
#

welcome to year of Dragon Lars

inner spade
#

Welcome back from the land of the palindrome, @haughty quiver !

timid plover
#

The data sheet discusses Cold-Junction Sensing -
"the temperature at the cold junction must be measured. This is done with the
internal precision temperature sensor, which has accuracy
better than ยฑ0.7ยฐC from -20ยฐC to +85ยฐC. By placing the
MAX31856 near the cold junction, the cold-junction temperature can be measured and used to compensate for cold-junction effects. "

is this taken into account in the design of the Adafruit Universal Thermocouple Amplifier MAX31856 Breakout ?

viral sail
#

Good afternoon.

ivory flax
#

Good Afternoon and Happy New Year to you and your family

vagrant flax
cinder wind
#

BeardyJP!

viral sail
#

@haughty quiver sounds like fun. Did you see the aurora?

shell mason
#

se JP is coming closer to Lars

cinder wind
unreal bay
#

love the hold music

shell mason
#

now it look the thing

inner spade
#

Lars was messing with your computer while you were gone.

timid plover
#

the product page has a couple of videos too

shell mason
#

last night lapland had -41C

vagrant flax
#

love those LCD featherwings ๐Ÿ˜„

timid plover
#

my question probably scrolled off - but to get high accuracy, the "cold" reference junction temperature needs to be known also, right?

#

A thermocouple, also known as a "thermoelectrical thermometer", is an electrical device consisting of two dissimilar electrical conductors forming an electrical junction. A thermocouple produces a temperature-dependent voltage as a result of the Seebeck effect, and this voltage can be interpreted to measure temperature. Thermocouples are widely ...

#

does the Circuit python library update/use the chips reference junction temperature registers?

unreal bay
#

looked like reference_temperature functions mentioned cold juntion temperature when scrolling the docs

viral sail
#

Thanks @haughty quiver

sand lotus
#

Thank you JP. Have a great week!

unreal bay
#

Thanks JP + all

vagrant flax
#

Thanks JP!

timid plover
#

great question for Wednesday night thanks!

open surge
#

thanks JP!

haughty quiver
#

thanks @open surge !

inner spade
haughty quiver
timid plover
#

thank you JP

shell mason
#

the wednesday in Kiruna is -35C on day

haughty quiver
#

yikes!

#

i think it only got down to -23ยบC while we were there

shell mason
#

this cold temps arrived near new years eve

sand lotus
#

It's about +21C (70F) here which is nice during winter... not so nice during summer. Being in a tropical climate I cannot calibrate my bme280 temp sensor below 19C. I figured out this week the bme280 doesn't need any bias adjusting below that specific temp though.

upbeat coral
#

Seriously? Another week I missed the notice about.๐Ÿ™

tulip canyon
#

Happy New Year Gregorian folks.
Happy 1704096001 for those on UNIX time.

upbeat coral
#

Hey Y'll

nova totem
#

Evening everyone

open surge
#

good evening

open girder
viral sail
#

Good evening everyone.

robust horizon
#

tonight's a great time to drop in!

viscid bolt
#

Happy New Year!

nova totem
#

Not building a box that traps all the resin is key (hard lesson learned)

upbeat coral
#

Filaments has trees, so resins has.... roots?

cinder wind
#

nice keys @robust horizon !

#

circuitpython mouse ball mouse!

#

CirPyPad tablet!

robust horizon
wintry granite
#

I haven't seen the show and tell sense around 2012. I didn't know it was still going on. This is super nostalgic

robust horizon
#

welcome back

#

looks great Mark!

wintry granite
#

Thank you! Would it be possible to pop in? I'm currently printing and painting a 3d model of Ariel scalled to 300%

tulip canyon
#

bespoke brick ordering ๐Ÿ‘

robust horizon
#

@wintry granite yeah, grab the link above ^^

steep mica
#

timers ๐Ÿ”ฅ ๐Ÿ”ฅ sweatshirt ๐Ÿ”ฅ ๐Ÿ”ฅ

tulip kestrel
#

my bad i was looking for the link for the keyboard mod

cinder wind
#

"ah yes the bouquet of this filament... I'm detecting ABS... with a hint of orange dye... Prusament 2019?"

nova totem
#

Dealing with resin vats and fixing them are a huge pain, I feel for you

gritty apex
viral sail
#

Great work everyone. Thanks for sharing.

tulip canyon
#

Thanks all, great projects

robust horizon
#

thanks everyone

cinder wind
#

Thanks everyone, great to see folks!

nova totem
#

Great projects everyone!

upbeat coral
#

Thank you all for sharing with us

wintry granite
#

Awesome projects ๐Ÿ‘ that was fun

sand lotus
#

Joe you can purchase custom heating elements from a company out of Hawaii. So if there's an older legacy 3D printer that no longer has the exact pad they can make one for you if you provide them specs.

tulip canyon
#

Early question for AaE @open girder Have you seen the MicroPython web library/framework from the creator of Flask Miguel Grinberg?
https://microdot.readthedocs.io/en/latest/
What would it take to run on CircuitPython? thank you.

sand lotus
#

They're called JSR and it's how I intend to extend my Ender 3 S1 Pro bed to be much longer. A longer bed isn't much good without a heating element to heat the entire bed right? Well there are companies out there who will make them. Yes they'll do individual custom orders. https://www.jsr2.com/product-category/rectangular-heaters/

open girder
robust horizon
# tulip canyon Early question for AaE <@329767998380310538> Have you seen the MicroPython web l...

looks neat. CircuitPython needs a way to pass in an object that is used to construct sockets (we call it a "socketpool" and this is our way of allowing different implementations of the socket layer). Otherwise, once you have a socket object we try to act like a subset of CPython sockets. So the amount of adaptation would hopefully be minor but it's hard to be sure until you got into the weeds actually doing it.

sand lotus
#

Happy New Year b**ches lol. I literally cannot say that here because dynobot. It's nice to stream whatever you want to say. ๐Ÿ™‚

cinder wind
#

TPSBOOST? Finally something to help me with my TPS reports!

sand lotus
#

Came in late for show & tell. Some great projects. Congrats on the key caps Jepler! Can't beat the resolution that resin offers but it's messy. Didn't know you had to make a hole like that.

noble grove
#

Good evening and Happy New Year.

open girder
#

10% discount code, code is: tpsboost http://www.adafruit.com ends at midnight NYC time

robust horizon
tulip kestrel
#

@gritty apex what is the web version link

sand lotus
#

sans being a time traveler if you want to watch all the ask an engineer episodes there is a youtube playlist for it. ๐Ÿ™‚

dawn bear
#

Good'ay From Los Angeles

#

๐Ÿ‘‹

sand lotus
#

Currently seems as if TechCrunch is doing something called Disrupt.

dawn bear
#

Yes!!! it is OPEN SOURCE HARDWARE

nova totem
#

AdaVegetable ? ๐Ÿ˜„

dawn bear
#

Wait, why are you thinking you are gonna sell hardware exclusively that is OPEN SOURCE

gray obsidian
#

and the usual false reasoning on counterfeit applies: people who buy clones and/or counterfeit would probably not buy the original because they don't have the money for that.

noble grove
#

Aidafroot?

gray obsidian
#

just like the kid with 5000 films on his hdd would never have the money (and the time to watch)

dawn bear
#

If it says Arduino sure. But if it does not, then it is FINE. Its OPEN SOURCE right?

ashen dove
#

I saw Phil and Limor on the "Weird Weapons" episode of The Unbelievable with Dan Acroyd. Lady Ada was shooting Phil with the LED puke gun she made.

gray obsidian
#

some clones I buy to make stuff directly instead of doing my own board based on the design, but wouldn't use a real one because I can't afford it for just this.

tulip kestrel
#

@gritty apex what is the web version link for the keyboard firmware?

dawn bear
#

How can you release the design as open source then say those that MAKE those boards, are counterfeit?

sand lotus
#

Tuskegee Airmen: "Are you to be an American only when the mood suits you". Arudino, are you only to be an open source hardware company when the mood suits you?

gusty wedge
#

Thanks adafruit for showing that "this is the way"... I'm now teaching someone to design pcbs and one of the first lessons is to make everything open source and how the community makes you stronger.

nova totem
#

As my mind is on Lego, there are many clone Lego sets (of official licensed sets) for sale, easily. Lego is a much larger company then almost all these other companies and they cannot stop it. Making it "closed" will not stop it.

tulip canyon
#

I made my Atmel 328P breadboard Arduino from tutorial by Tom Igoe. Co-founder

dawn bear
#

Like the clones of the IBM PC

tulip kestrel
#

@gritty apex what is the web version link for the keyboard firmware?

viral sail
#

24 minutes in, the obligatory Youtube ad interruption.

sand lotus
#

by the way the use of the adafruit feather logo i posted recently on Mastodon will not be distributed. that image will only solely run on my personal device.

gusty wedge
dim knot
noble grove
#

It's only lost revenue if the only purpose of making the IDE free (as in beer) was to sell hardware.

gritty apex
dim knot
dawn bear
#

Why do you lament YouTube making a buck? Or are you paying for YouTube?

open girder
#

we broadcast on all the places that allow it, facebook, twitter, linkedin, instagram, twitch, youtube, etc

noble grove
sand lotus
#

umm because most of the time you get like 2 minutes of commericials for every 5 minutes of content. it's no better than 1990's popup ads.

open girder
#

some force ads, some do not

dawn bear
#

@sand lotus Not me. maybe 30 seconds.

open girder
#

some regions for youtube play ads as well, some don't

dawn bear
#

And you can IIRC pay to get rid of them

open girder
#

yah, there are tools and pay-for ways too!

dawn bear
#

Why assume that HUGE infrastructure is free?

cinder wind
ashen dove
#

I've started to get ads during live broadcasts. even had one here already

gritty apex
#

Other companies blaming open source hardware should consider if they have done enough to build a community. If they don't put in the work, they won't be successful, no matter what their licensing model is

shell mason
#

like twitch the turbo cost is didfferent based on how many ads is in that region

sand lotus
#

Have to take my mom to the hospital again. Have a good week everyone.

gritty apex
#

Between the live shows, learn guides, etc ... I wouldn't buy counterfeit Adafruit products because I want Adafruit to keep succeeding

open girder
#

yah, conflating open-source hardware with "counterfeits" and then blaming open-source seems to be a trend sometimes (it's not true either)

dawn bear
#

@open girder That's insane... It like they didn't think anyone would take them seriously! ๐Ÿ™‚

#

"Oh wait! WHAT! You are making our open source boards???!!!"

urban gale
#

maaan that was a lot of projects

dawn bear
#

We never meant for you to actually MAKE THEM! We were just trying to be cool

urban gale
#

that's inspiring me to get something done this year ๐Ÿ˜†

robust horizon
#

PIC as in the microcontroller?

#

There must be folks that still swear by PICs I suppose. I never got into them.

cinder wind
robust horizon
#

I only came on the scene once avr-gcc was well established

#

and anybody could wire up a parport adapter, we all had DB-25 connectors. Heck, for about the next decade we had DB-25 connectors on our laptops too.

cinder wind
#

ahah totally

robust horizon
#

oh it has a "blinking purple" feature. added to cart ๐Ÿ™‚

gray obsidian
#

curse "legacy free"

cinder wind
noble grove
#

I'm going to need a smaller soldering iron.

vagrant flax
#

NeoPixels FOR ANTS?!

dim knot
robust horizon
#

@open girder can I use that USB mux to switch one device between two hosts ?

gritty apex
#

USB switcher ... you read my mind

dim knot
cinder wind
#

Question: can we PWM that S pin to rapidly switch between USB devices? ๐Ÿซ 

robust horizon
#

the vibrating USB hub

nova totem
#

Question @open girder Is there a robot kit you would recommend for a kid 8/9 age range.
(I may owe him a better robot after one I got did not work well)

robust horizon
#

"you can have up to five fingers at the same time"

noble grove
#

QUESTION: On the USB swich, what are the Host pads for?

open girder
#

10% discount code, code is: tpsboost http://www.adafruit.com ends at midnight NYC time

dim knot
#

Distributors & Hackerspaces https://www.adafruit.com/distributors

vagrant flax
#

Thanks for the show!

gray obsidian
#

thanks!

viral sail
#

Thanks @open girder and good night. ๐ŸŒ—

robust horizon
#

goodnight all!

nova totem
#

Thanks for the robot answer!

cinder wind
#

Thanks Limor, thanks pt!

tulip canyon
#

Thanks @open girder Have a great night/week/year all!

gray obsidian
#

Happy New Year!

noble grove
#

I wonder how hard it would be to turn a bunch of those 1111 neopixels into neo-nOOds

sly kelp
#

missed it yesterday by an hour but excited for the next one!

dawn bear
#

anyone home? ๐Ÿ‘‹

open surge
#

good afternoon

viral sail
#

Good afternoon.

inner spade
#

๐Ÿ‘‹

dawn bear
#

๐Ÿ‘‹ From Los Angeles

clever summit
#

๐Ÿ‡ธ๐Ÿ‡ช ๐Ÿ‘‹

haughty quiver
#

Hej hej @clever summit

dawn bear
#

@clever summit Cold yet?

viscid bolt
#

Good afternoon

haughty quiver
#

hello all!

inner spade
haughty quiver
#

eek

dusk socket
#

let the learning begin

dawn bear
#

@inner spade don't know. I am in Redondo

clever summit
#

Freezing!

dawn bear
#

about 18C here

shell mason
#

-22C here

ivory flax
#

Hi JP happy new year

dawn bear
#

@shell mason WHAT?

shell mason
#

northern its more colder

clever summit
#

Norrland is like -45C now

unreal bay
#

5c here (UK)

cinder wind
#

I hear: break everything! got it. brb

shell mason
#

finland coldest spot have being Enontekรถ Airport with -43.5C

cinder wind
shell mason
#

the latest on there -43.6C the condensation point -47.4C

cinder wind
shell mason
#

i am in southeastern finland

cinder wind
#

brrrr

#

@shell mason you're built of stronger stuff than me ๐Ÿ™‚

shell mason
#

-40 is same in Celsius and Fahrenheit

robust horizon
#

I'm quite certain I'm not ๐Ÿคฃ

cinder wind
#

apologies, tab-complete failure on my part ๐Ÿ™‚

unreal bay
#

I might have read that was a standardisation moment when it became an SI unit, converted to centigrade from celcius (or was it other way).

open surge
#

@cinder wind You're welcome to visit me anytime in Minneapolis in January or February to experience cold. ๐Ÿ™‚

shell mason
#

there have being some doing daily tourism visit in Lapland

dawn bear
#

Interestingly, centigrade is an old fashioned name for Celsius. The freezing point of water for Celsius is 0ยฐC, whereas the boiling point of water is 100ยฐC. The abbreviate of Celsius is to ยฐC. This temperature scale was invented and named after Swedish scientist Anders Celsius (1701-1744) in 1742

cinder wind
#

Centigrade is only used by Tardigrades

clever summit
#

Centi just means 1/10 so.

unreal bay
cinder wind
#

Having native string parsing in CircuitPython is so nice after trying to do similar stuff in Arduino

unreal bay
#

That was a nice parsec example, the timed count of words was quick but slow enough to follow

shell mason
#

jonny your market electricity is much cheaper than finland for tomorrow

clever summit
#

Ptobably not down in the south where I live. We have 4 price zones.

shell mason
#

this what i got from nordics and baltics to comparison

#

that data is from nord pool

clever summit
#

Whoooo. 5 times our price.

cinder wind
#

ah yeah CRT sync. we really don't have to worry about genlocking all the monitors now when filming like we used to

haughty quiver
#
cinder wind
#

Question: does the CHEESE button actually cause the Memento board to emit cheese? and if so, what kind

grand tusk
#

Brie.

inner spade
#

Planning on playing with green screen photos using the PaletteFilter library and the LEDs.

cinder wind
#

looks very Blair Witch Project

viral sail
#

Thanks @haughty quiver

inner spade
#

Thanks!

cinder wind
#

Thanks JP!

open surge
#

thanks JP!

unreal bay
#

Thanks JP

haughty quiver
#

thanks much!

timid plover
#

?showtimes

arctic abyssBOT
#

Desk of Ladyada - Sunday Evening
JP's Product Pick of the Week - 4pm ET Tuesdays
3D Hangouts - 11am ET Wednesdays
Show & Tell - 7:30pm ET Wednesdays
Ask an Engineer - 8pm ET Wednesdays
John Park's Workshop - 4pm ET Thursdays
Deep Dive w/ Foamyguy - 5pm ET Fridays
FoamyGuy's CircuitPython Stream - 11am ET Saturdays

smoky island
#

@solid juniper I'm going to take a look at and try out what you have so far for ConnectionManager / Requests later today during the deep dive stream. If you're around during it or able to catch the VOD it'll be a chance to get some more verbose and "off the cuff" feedback and ideas than I would typically be able to write out as comments if you're interested in that.

solid juniper
dawn bear
#

@smoky island HNY!

#

๐Ÿ‘‹

rigid crag
#

๐Ÿ‘‹

inner spade
#

๐Ÿ‘‹

dawn bear
#

Hi from Los Angeles

brisk bone
#

Hello

solid juniper
#

๐Ÿ‘‹

brisk bone
#

That seems unusual

rigid crag
#

this is a timely project - i've been working on my own helper lib to unify how my projects handle wifi items

dawn bear
#

Sunny and 65

#

Or about 18C

#

Cats ROCK!

#

I hope @rapid hornet is hanging in there!

rigid crag
#

hold on to your keyboards! he's doing it live!

dawn bear
dawn bear
#

You are there

sand lotus
#

Now only the one with the submarine is showing up, other is gone now.

rigid crag
#

youtube just dropped, waiting to refresh to get the live list

dawn bear
rigid crag
#

yep, going to adafruit live listing worked

dawn bear
#

ok

solid juniper
#

nothing like seeing a typo your pull request on a live deep-dive...

river surge
#

At least it was the correct repo!

brisk bone
#

Interesting, does this lib allow having more than 1-2 open connections? Am I understanding it correctly?

sand lotus
#

Tried looking up your recent changes to soft keyboard but couldn't find the JSON file that I believe will accompany it. I'm still on the original version that uses like 50 labels.

rigid crag
#

the QTPy ESP32-S3 is an awesome board to work on networking code

solid juniper
#

So it will be a step towards having multiple connections open (based on the max amount of sockets)

rigid crag
#

the number of sockets is limited by a lower level of the abstraction

sand lotus
#

Devs were talking about raising the amount of sockets recently.

brisk bone
#

Ok, thank you all for clarifying. Higher number of sockets would be useful in HTTPServer, especially when using SSE or Websockets

rigid crag
#

yea, I thought about trying to run an HTTPServer on one of these, but unless the use case was a lot of short lived requests, you are going to quickly be limited by the hardware socket limit

#

and good grief if one of the clients hangs on to the connection for any length - now your 1 out of 4 sockets down

brisk bone
sand lotus
#

Thank you, no rush. I'm dealing with some personal issues, nice to watch you code again. Giving me a sense of normality for a little bit.

rigid crag
sand lotus
#

I'd be more worried about channel overlap and interference. You can only but so many before you saturate a band.

brisk bone
#

You would still need a RPi or something else with nginx

rigid crag
#

yea, running nginx with each node being marked as having a high water limit of 2 connections...

solid juniper
#

no - i didn't change examples yet ๐Ÿ˜ฆ

rigid crag
#

hmmm ... a LoRA swarm that is driven by a nginx proxy node

solid juniper
#

I wanted to make sure the core was approved first

brisk bone
sand lotus
#

Oh I thought you were talking about making a cluster server with ESP32-S3's... that would be neat but still wouldn't outperform 1 Raspberry Pi or a small Intel NUC.

#

Just read in the Adafruit Daily that micropython just added TLS support for client and server.

solid juniper
#

someone needs to update their stubs ๐Ÿ˜‰

rigid crag
#

yea, non-performant middle layers will crash and burn with bad headers

sand lotus
#

I'm sensing some board stub bias ๐Ÿ˜› I hope that project of yours is going well too.

solid juniper
#

otherwise the connection manager is behind the scenes

#

it does

#

look at the requests PR

sand lotus
#

I think 1 stub with all board swould work because PC's are powerful enough for it not to matter. Would be up to the team to figure out the best way implement. I imagine github actions will involved somehow eventually.

rigid crag
#

count me in on helping with the board stub work - having some way to get pin labels for a broad range of boards is my current pain

solid juniper
#

yes

#

the ESP32SPI samples will need to change

#

since set_socket will go away

sand lotus
#

i am so on board for that change

solid juniper
#

@smoky island don't forget to set the right pins

rigid crag
#

๐Ÿ™ˆ

sand lotus
#

๐Ÿ™Š

solid juniper
#

settings_not.toml....

#

the ESP32SPI doesn't remember connections, so doesn't connect when you power it on

rigid crag
#

the connection time for espi can be sllloooowwww

#

reset your discord chat view ...

solid juniper
#

a board with wifi will auto connect to the last AP

dawn bear
#

Always cool watching him code. Like me... a pinch here, a paste there... ๐Ÿ˜„

sand lotus
solid juniper
#

requests._not.py....

sand lotus
#

Didn't know that. Thought root dir files would only override /lib. That's really really good to know for library contributors.

rigid crag
#

it was trying to run a submodule "py" under the root module

solid juniper
#

The types are all from the original code I'm requests

sand lotus
#

Justin did you eventually go with link_status for wiznet?

solid juniper
#

Still waiting to get my board

sand lotus
#

ah

#

yeah evetually anything that uses sockets including wiznet will all have the same connection method. could completely unify all learn guides and internet simpletests.

#

this is going to make 9.x much easier to use for the beginner for copy/paste examples. this has been a long time coming.

solid juniper
#

For mini MQTT, you can set it the same way you do requests

#

Because you have both pool and context

rigid crag
#

tox is the tool to run your tests across many versions of python

#

it manages the installation of the different target versions for you and then injects your code into those environments

#

yes, similar to pytest runner with the joy of multiple distinct python versions

solid juniper
#

For minimqtt, start with a sample for a board with wifi

#

Then use the helpers for the esp32spi

#

Clearly, I need to add a mqtt sample to the PR

brisk bone
#

catcident? ๐Ÿ˜›

rigid crag
#

cat realizing that his focus was elsewhere...

solid juniper
#

On mobile, but started an mqtt example on the PR

#

Should be enough to get started

sand lotus
#

subscribe and unsubscribe with on_message being used with subscribe mostly

#

most people I've talked with say that you don't need to manually disconnect after each session but I do because i'm only using it once per 15 minute intervals.

#

will always need a way to specify the physical pins too. not all projects will use the exact pins (unless it's a built-in display). For example if someone does a quad feather stack the amount of pins left to use will be only a few available pins.

solid juniper
#

It is possible. I posted an example yesterday...

#

Or at least a lot more closer

sand lotus
#

saying that with esp32spi or wifi you still have to specify the physical pins. so a connection manager would need to have a way to also change those pins.

#

there is fakerequests library though i've never used it.

#

oh that's nice. seems like it should be called requests_cache then?

#

i thought it was for faking callbacks. so you could specify the return data and test with that instead of hammering an API server while iterating through your script tests.

#

doing a stream on using fakerequests would be nice, then we'd all know what it does.

#

guess i could just look up the docs but i'm lazy right now.

shell mason
#

djdevon so sandboxing could come to play then?

sand lotus
#

Perhaps, might be another way of using fakerequests... dunno never used it.

#

spelling errors happen to everyone, don't worry about it. Unexpected Maker shipped a board that has code comments where he spelled "fro" instead of "for". That's a funny one.

#

It would have been funnier if it was in a "fro i in range()" ๐Ÿ˜›

#

Well done Justin! ๐ŸŽ‰ Congrats on a great PR.

brisk bone
#

You can also make a generator if you use (...)

#

You can create a dict this way too

rigid crag
#

forcing all the headers to lower... is that changing the data in a way the caller may not be expecting?

sand lotus
#

curly brackets makes it seem like a json list. that's neat.

#

though there's no key:value pairs... more like an array.

brisk bone
solid juniper
#

They aren't lower

#

It's just a set for checking if it exists already or not

sand lotus
#

yes pretty sure it was someone trying to use spotify. it's a nightmare to work with because the TTL for the token is like 1 hour.

rigid crag
#

yes the spec says they are supposed to be case insensitive, but the parts of any system that are consuming the results down stream

#

oh - it's NOT forcing them to lower?

sand lotus
#

github, youtube, twitter, discord, or mastodon are all a breeze compared to spotify.

rigid crag
#

ok, apologies for misreading the context

solid juniper
#

Nope, just making a unique list, so it doesn't send them twice

brisk bone
#

Well, adafruit_httpserver allows that ๐Ÿ˜›

rigid crag
#

python's HTTPServer can do it I thought?

sand lotus
#

i think adafruit has http requests, and the raw request could be printed as it's sent out? or perhaps use http_server and check it that way?

rigid crag
#

yes, requests allows you to view the raw data for a request

sand lotus
#

my guess it would have something to do with receive_into?

brisk bone
#

Request._raw_request or something like that

unreal bay
#

you just want the equivalent of httpbin.org/get or /anything - it's not formatted in RAW format but json

rigid crag
#

use requests.prepare

solid juniper
#

You could use the circuit python server and add print statements...

rigid crag
#

yea, my service code is full of logging.debug() calls that dump raw headers in both directions

sand lotus
#

if you're using it with an api then sometimes (depending on the api) you can check the request with browser developer like firebug. that's assuming they don't strip out a duplicate header.

rigid crag
#

sounds like a good use of a microcontroller that echos debug data to a logging endpoint

shell mason
brisk bone
#

That would be very cool

shell mason
#

with it webassembly inteface types and component model now

sand lotus
#

absolutely, i've only used httpserver once and that like 2 years ago. a tutorial with all the changes made recently would be excellent. heck yes that's a great stream.

solid juniper
#

Red light = post, green light = get...

brisk bone
#

If it is not urgent, maybe I would be able to help with that to be honest

inner spade
#

As an experiential learner, I would be interested in such a video tutorial. It's not an area that I've explored yet.

sand lotus
#

most of my scripts have a debug boolean one of which is the full api url that gets posted

#

print("Full API GET URL: ", DATA_SOURCE, HEADERS)

brisk bone
#

Sure thing

sand lotus
#

something as simple as that will tell you the full url you're requesting/posting.

brisk bone
#

I know it is something completely different, but can I ask you FoamyGuy (kind of "Q&A part" of Deep Dive) whether you ever tried connecting MatrixPortal to a LED panel with 32+ rows? I recently got mine but I cannot initialize the RGBMatrix as it only seems to allow 16/32 rows. I have a 80x40 and 110x55 panels, I know very unusual size.

shell mason
inner spade
#

Thanks for the dive @smoky island .

shell mason
#

thanks foamguy

solid juniper
#

Thanks!

brisk bone
shell mason
#

djdevon3 i was thinking of this all webassembly evolving outside of the browser and standardization might be like sandbox

#

with it HTTP-proxy stuff

sand lotus
#

I'm not sure if the library will work with anything other than 64x32 or 64x64 panels.

#

you would have to look into the rgbmatrix built in library.

brisk bone
#

luckily for free

unreal bay
#

Could maybe find a willing person to take some panels and get working on the support ๐Ÿ˜‰

sand lotus
#

Does your 80x40 panel use a standard hub75 connector?

brisk bone
sand lotus
#

Create a RGBMatrix object with the given attributes. The height of the display is determined by the number of rgb and address pins and the number of tiles:
len(rgb_pins) // 3 * 2 ** len(address_pins) * abs(tile). With 6 RGB pins, 4 address lines, and a single matrix, the display will be 32 pixels tall. If the optional height parameter is specified and is not 0, it is checked against the calculated height. You cannot fool it into thinking the display is taller than the rgb and address pins will allow.

#

For a 64x32 matrix panel 6 / 3 * 2 * 4 * 2

#

The height variable isn't really used in the library as it can be calculated by using only the number of RGB pins, address pins, and tiles.

brisk bone
#

Well, the fact that I cannot set it to other values than 16/32/64 suggest that maybe the lib only support these sizes

#

Thank you

sand lotus
#

You could probably modify the library. drop rgbmatrix.py into the root directoy and override the built in one. That is something that FoamyGuy actually covered in his livestream today. ๐Ÿ˜‰

#

my guess is this is why ```py
STATIC void preflight_pins_or_throw(uint8_t clock_pin, uint8_t *rgb_pins, uint8_t rgb_pin_count, bool allow_inefficient) {
if (rgb_pin_count <= 0 || rgb_pin_count % 6 != 0 || rgb_pin_count > 30) {
mp_raise_ValueError_varg(MP_ERROR_TEXT("The length of rgb_pins must be 6, 12, 18, 24, or 30"));
}

sand lotus
#

12 / 3 * 2 * 5 * 2 = 80 12 RGB pins and 5 address pins will give you 80 px wide. I don't think there are enough pins on a hub75 plug to accomplish this.

#

or 6/3 * 2 * 10 * 2 = 80 Can use the same 6 RGB pins but you'd need 10 address pins and they have to be sequential. I don't know of any board in Adafruit's arsenal that will do 10 sequential GPIO.

#

Also most Hub75 plugs cannot accomodate more than 5 address pins. Either way just not enough pins.

solid juniper
#

This isn't an area I'm strong in, but could you use the MCP23017 GPIO expander?

sand lotus
#

MCP23017 cannot do PWM. It's digital on/off. I think hub75 requires direct blitting with framebufferio.

solid juniper
#

Ahhh

sand lotus
#

It could work if you only intend to use 1 color

#

and the pixel would be full brightness or off.

solid juniper
#

Would the grand Central work?

sand lotus
#

I did think about that, that would be the only possible board that might have a shot at it.

#

would have to look up the pcb schematic to see if there are 10 sequential gpio from the chip.

solid juniper
#

How would you know?

sand lotus
#

Might be possible.

solid juniper
#

Cool. I looked at pins.c and saw the same thing

sand lotus
#

and the M4 chip should be able to drive them in the same way a Matrix Portal M4 would in terms of speed.

#

problem is does the 80x40 matrix panel have 2 hub75 connectors for top/bottom on each side. That would be a requirement otherwise not enough pins with only 1 hub75 connector.

solid juniper
#

It also has more flash and ram

unreal bay
#

@smoky island thanks for stream earlier, just had a quick play and this works actually which surprised me as they are auto-concatenated, but I wondered if that's curl or server based so pulled out wireshark (should be server IMHO but come across situations in the past requiring our client to be Proper Case sensitive and only the last copy of any duplicate headers were used - so any repeated headers converted to comma concatenated values in a single header before sending the request.):
curl -X GET "http://httpbin.org/anything" -H "accept: application/json" -H "accept: text/plain" -H "user-agent: tyeth v1" -H "User-Agent: text2" also the help page / API explorer shows the other api endpoints https://httpbin.org/#/Anything/get_anything

solid juniper
unreal bay
#

no opinions here, or at least not at 2am ๐Ÿ˜‰ Just saw a lot of issues and small bugs writing with c# and web server related shenanigans, mostly servers the last few years, but also before when trying to make a few downloader and other web client related things. I guess there are just too many flavours of server and client out there, the spec always felt like more of a recommendation to some of the big players (which is why Internet Explorer quirks had to be supported for years)

solid juniper
#

I know specifically that spotify fails when you send it the same header twice...

sand lotus
#

depends on what a server backend will accept. some might force to lowercase, or require camelcase, etc..

solid juniper
#

I can totally try if I send it concatenated...

#

Since in CPython, you send a dict, I feel this is safe

sand lotus
#

i like your idea of looking for a repeated header. if header1 = header2 ignore.

solid juniper
#

Also, that must put you somewhere near the UK if it's 2am...

unreal bay
#

A lot I saw just took the last one, easier on the server code because you just always update each value going down the list in order. The issue we saw related to that was some browser situations don't guarantee order of duplicate fields (was it multi-file or just when reusing name attribute).

#

yep, south west UK

sand lotus
#

we're past broadcast chat now though, let's take this to a different channel. probably circuit python since that's the language we're talking about.

solid juniper
#

One last comment, since the PR doesn't automatically add it if it's already there, it's basically taking the last...

smoky island
clever summit
#

๐Ÿ‡ธ๐Ÿ‡ช ๐Ÿ‘‹

smoky island
inner spade
#

Hello! โ˜•

#

Current project is stressing displayio with a plot of 300 Line objects. Itโ€™s a synthio wave table visualizer. Getting some weird errors when the group (or total objects in multiple groups) contains over 600 objects. Still working to characterize the issue.

#

This is when itโ€™s working.

#

Thereโ€™s a bunch of big ulab arrays in memory, too.

#

Displayio shapes.

#

Was going to move to the pixel plot approach after troubleshooting this approach. Thanks for the suggestion.

#

Ah yes. Bitmap tools line to the rescue!

#

The error is that the object color changes, but it still plots correctly position-wise.

#

Like a memory management overlap.

#

No pallets with display shapes.

#

But Iโ€™m having fun with this. Thanks for the additional ideas.

#

Thatโ€™s a harmonica wave sample, BTW. Built from six synthio sine wave oscillators.

#

Yes, 2.4โ€ TFT wing with UM FeatherS2 under the hood.

grand tusk
#

Morning all!

#

I have a Metro M7 with the 2.8" TFT touchscreen.
Memory is pretty tight on the M7.

#

500 MHz, with SD card.

#

Doesn't look good: disconnect/connect loop.

inner spade
#

Thanks for todayโ€™s stream. Appreciate the insights you shared for the displayio issues Iโ€™m seeing.

grand tusk
#

Thanks, see you around!

sand lotus
#

@smoky island was able to watch your stream just now. Thank you for the update will look into integrating it. ๐Ÿ™‚

#

On 8.2.9 The border issue also happens on matrix panels. Used an M4 express (as an experiment) and it was showing the first column of pixels as the last. When I switched back to using the Matrix Portal S3 that issue was gone except the entire display is now shifted 1 pixel to the left.

#

The text in the top right should be at display.width yet there is a 1px space on the last column which shouldn't happen. It's not exclusive to TFT's.

#

Because I'm on 8.2.9 I have no idea if this has been addressed in 9.x alphas yet. I was running the alpha but reverted to 8.2.9 to help someone with a project.

tulip kestrel
#

hay @open girder you should get this displays https://www.adafruit.com/product/938 and https://www.adafruit.com/product/4440 in different color active pixels instead of just selling the white pixel ones. there's blue, red, green, yellow, and white just to name a feu.

open girder
#

@tulip kestrel will send to the team to review, thanks!

#

WE ARE LIVE! Desk of Ladyada - Final Revision Push, 600 and beyond https://youtu.be/USnrJEMbDpg

Finishing a 16-month revision push for designs like CLUE and Feather Sense boards, popular for Bluetooth LE and sensors. Despite chip shortages, new prototypes are underway, including a Feather Sense TFT board. A search for LSM6DS33 replacements due to IMU shortages in 2021/2022 is ongoing, aiming to restock sensor-rich designs.

โ–ถ Play video
viral sail
#

Good evening.

open girder
#

๐Ÿ‘‹

shell mason
#
Wilderness Labs Store

Our second iteration ofย theย Meadow F7 board, and packing a number of upgrades, including:ย  64MB of Flashย โ€“ This is an upgrade from 32MB in v1. Upgraded Antennaย โ€“ Givesย 10x better performance. Fully SMT-Compatibleย โ€“ The F7v2 has hybrid, castellated-header/IO mounts that allow for use as both a through-hole (PTH) device,

viral sail
#

Thanks and good night. ๐ŸŒ˜

open girder
#

๐ŸŒ™

haughty quiver
#

hello!

viral sail
#

Good afternoon.

drowsy inlet
#

hello all

viscid bolt
#

good afternoon all

drowsy inlet
#

today's discount is dizzying! ๐Ÿ™‚

lyric frost
#

Hi All ๐Ÿ˜„

dusk socket
#

hi John

unreal bay
#

Heya

rugged vector
#

Hello Hello

ivory flax
#

Hi John

shell mason
#

very nice

ivory flax
#

would the 5752 fit in the 5073 Four Key Silver Aluminum Keypad Shell Enclosure?

unreal bay
#

Can't deny, I wanted these, partly an excuse to use up the 30 encoders I got a while ago, but mostly easy user configuration of multiple values. Just need to source some transparent rotary encoders too... and quite a few of them

viral sail
#

Thanks @haughty quiver

unreal bay
#

ooh those purple knobs are nice, thanks JP

haughty quiver
#

thanks very much all!

ivory flax
#

Thanks John, Would like to have known if the case would work. Mama keeping me on a short budget this year.

haughty quiver
#

@ivory flax you should be able to get pretty close to an answer based on the dimensions listed on both product pages, but if i find mine I'll give it a try

ivory flax
haughty quiver
#

๐Ÿ

#

๐Ÿฆต

waxen bough
#

If only the encoders had been discounted as well, I would probably have bought a dozen.... But I don't have a use right away...

hard hollow
#

โ˜•๏ธ๐Ÿ‘‹๐Ÿฝ

rocky reef
vagrant flax
drowsy inlet
#

Hello all. Happy New Year!

rocky reef
#

good moning folks!

upbeat coral
#

Hey Y'll

urban gale
#

Hi All! Happy New Year!

ocean musk
#

Only took 45 min to print

urban gale
#

whoa love that color

ocean musk
#

A1 mini. Its been working good out of box

wise iris
#

good morning

ocean musk
#

The comgrow t500 has been printing well too. 500x500 bed

ocean musk
lavish patrol
#

Hello, all ๐Ÿ‘‹

ocean musk
#

A video magic 8 ball would be cool

lavish patrol
#

Pedro's video is reversed. ๐Ÿค”

#

๐Ÿ‘‰ ๐Ÿ‘ˆ ๐Ÿ™ƒ

#

Lol

upbeat coral
#

I like this one A LOT better than the one I whipped up in Tinkercad.

lavish patrol
#

Wallace and Gromit - home edition. ๐Ÿ˜„

shell mason
ocean musk
gaunt plume
#

the MEMENTO photos look pretty good, kinda like the ones with light bleed/leak. dont get that on iPhone cams anymore ๐Ÿ˜„

vagrant flax
#

awesome, I've been wanting to build something like this

#

I love it!

drowsy inlet
#

would be cool to have it spin the light around based on angular speed

#

with a nice alpha faded tail

vagrant flax
#

did you cut the acrylic diffuser yourself?

#

I love the black LED acrylic, I use it in tons of stuff

#

but I don't have a laser cutter so I have to order cuts

drowsy inlet
#

those would be cool for a nice little waterfall / fountain

#

with some nice color-changing neopixels lighting it up

lavish patrol
#

Neat.

sudden warren
#

Hi

urban gale
#

bath bomb mold would be awesome

vagrant flax
#

Great show, thanks!

rocky reef
lavish patrol
#

Thanks, @hard hollow and @rocky reef ๐Ÿ‘

upbeat coral
#

Very Happy to see you back. Thank you for taking time for us.

drowsy inlet
#

Thanks!

hard hollow
#

thanks folks! cya tonight

rocky reef
#

thanks so much for haning out folks!

unreal bay
#

Thanks for the show

dawn bear
#

Hello from Los Angeles. Chilly out here. 16C

#

๐Ÿ‘‹

#

I wonder? Is it Doctor LadyAda?

haughty quiver
dawn bear
#

Hi JP! Missed the PPOFW. But I need 3000 count encoders for my project. ๐Ÿ™‚

upbeat coral
#

Hey Y'll

robust horizon
#

good evening!

tulip canyon
#

Hey all ๐Ÿ‘‹

inner spade
#

๐Ÿ‘‹

open surge
#

good evening

viral sail
#

Good evening everyone.

sand lotus
dawn bear
#

Good <WHATEVER TIME IT IS THERE>