#circuitpython-dev

1 messages ยท Page 153 of 1

drowsy geyser
#

Sorry, the rover is off topic for the CP channel. Apologies...

timber mango
#

[insert bad word that means how very photograph, that is]

#

_ montessori! [send SASE to the nis foundation for a glossary]_

timber mango
#

@humble mural There's no significant intersection between level shifting and the role of the capacitor and resistor for the NeoPixel interface. The resistor current-limits; the capacitor holds up the power supply against voltage sag.

#

The level shifter is used like a lock on a waterway -- allows interchange on two different levels. It is a buffer (I think some older level-shifter datasheets use that word as the primary descriptor).

#

The usual method for level-shifting is to specify a particularly low voltage value for a logical '1' on an input pin of what is otherwise a buffer circuit. In this manner, a lower-voltage'd logic device can successfully signal the buffer's input, which it then mirrors on its output (at full voltage).

#

Haven't quite looked into how this works in the other direction (signalling on a higher-voltage input).
Some shifters are not bi-directional and are generally used when no input is required (as when using a write-only peripheral device such as an LCD that you didn't need anything back from).

drowsy geyser
#

I think that's the most concise description of level shifters that I've ever read....

timber mango
#

Thanks. ;)

humble mural
#

@timber mango thanks

timber mango
somber garden
#

Messing around with a Circuit Playground Express at the moment; can't seem to find a convenient library for the accelerometer. Anyone got a good pointer to documentation for it?

idle owl
#

How convenient do you want? There's the library specific to the accelerometer and then there's the cpx lib that makes it super simple.

somber garden
#

Which library is specific to the accelerometer, and where is the documentation for it?

idle owl
#

To use it on CPX, the pin will be different. The import line will look more like python i2c = busio.I2C(board.ACCELEROMETER_SCL, board.ACCELEROMETER_SDA)

#

And it has a different I2C address, so you'll need to specify that as well, I believe. address=0x19

somber garden
#

Ahh, I ignored that because it's external. Had a browse and found this:
"The LIS3DH 3-axis XYZ accelerometer is in the dead center of the board and you can use it to detect tilt, gravity, motion, as well as 'tap' and 'double tap' strikes on the board. The LIS3DH is connected to an internal I2C pinset (not the same as the ones on the pads) and has an optional interrupt output on digital pin #36"

#

So I think that solves my problem. Thanks!

idle owl
#

Yah. Be aware the interrupt pin is called ACCELEROMETER_INTERRUPT when you're using it on CPX

#

The whole setup will look something like this (I pulled this out of another lib, so if I missed a self, apologies):python i2c = busio.I2C(board.ACCELEROMETER_SCL, board.ACCELEROMETER_SDA) int1 = digitalio.DigitalInOut(board.ACCELEROMETER_INTERRUPT) lis3dh = adafruit_lis3dh.LIS3DH_I2C(i2c, address=0x19, int1=int1) lis3dh.range = adafruit_lis3dh.RANGE_8_G

somber garden
#

I've been meaning to learn how to use I2C anyway, so this helps a little

idle owl
#

From there, usage is the same as any other M0/Express board.

#

Nice!

somber garden
#

Bought an external clock and accurate temperature sensor at the same time, both I2C

#

One odd little problem was creating a ten-colour rainbow for the lights. Eventually made one with all three colours varying in sine waves 120 degrees of phase out from each other.

#

sine_rainbow10 = [ 0x80ee11, 0xcbb400, 0xf96520, 0xf92065, 0xcb00b4, 0x8011ee, 0x344bff, 0x069adf, 0x06df9a, 0x34ff4b ]

idle owl
#

That's neat!

#

I've only used wheel to create rainbows.

inner raft
#

Does the Python Imaging Library (PIL) rub on circuitpython? I used the technique of reading in a PNG and processing it with PIL to play color animations when I'm on a RPi.

manic glacierBOT
tidal kiln
#

@inner raft seriously doubt it, the HW CP runs on is too limited

manic glacierBOT
idle owl
#

What do you folks think? We're taking all the basic CP stuff, i.e. digitalio, analogio etc, and making unified pages for them that will be across all the guides. They're in some of them already. For the pages actual home: Do you think they would be best having a section in the "Welcome to CircuitPython" guide or should they have their own guide? I'm leaning towards the Welcome guide.

#

We keep sending people to different places for different things when they're new to CP and the more we can have in one place, the better. But I'd like to know what you think.

#

@tidal kiln Thoughts?

tidal kiln
#

hmmm. are they being written to be board agnostic?

idle owl
#

Entirely. Well, stretch the definition of agnostic to including info for all the boards.

tidal kiln
#

i see, commented out lines, uncomment the one that applies

idle owl
#

Yep

raven canopy
#

also reinforces what you often see in people's code...

#

but, i would caution about making it TOO massive. The Welcome is already long, and to a newcomer it can be easy to lose track of what is where...

timber mango
#

Well, a collapsing Table of Contents presents a problem when you want to find information quickly. The Guides are pretty much monolithic -- they're very long; if you haven't read them before, it can be hard to find the relevant information.
The Guide(s) are long enough now to warrant a detailed table of contents, though that presents another problem (it occupies the 'headline' space of this 'newpaper').

tidal kiln
#

i'm kind of thinking a separate guide. the welcome guide is pretty large already

raven canopy
#

haha

#

"tell us how you really feel". ๐Ÿ˜„

idle owl
#

It would be in a collapsed section of the Welcome guide if we put it there.

#

Just like it is now in the guides it's already in.

tidal kiln
#

the welcome guide should focus on getting up and running, trouble shooting, updating, etc.

idle owl
#

Which are also massive with the entire welcome guide, the CP section, and the Arduino sections.

#

Ok that was my original plan for it. Before it got even as big as it is.

timber mango
#

There needs to be a document that does not require any use of the mouse (at all) to see the entire plan of the document. Think for a moment about people who have difficulty with basic use of the mouse, and clicking on the screen -- who are also very good at simply reading, even dense texts.

idle owl
#

Well, I can't fit the entirety of the CircuitPython built-ins into a non-mouseable page. That's not possible. But I understand what you're all saying.

#

Separate guide. And then, if we want it accessible from the Welcome guide, I can include a single page with links to each for the sections in the Welcome guide so if you want to get there, you can, but they're not actually pages on the left side of that guide.

timber mango
#

There's an interesting work-around for the individual product catalog pages: if you zoom the text (enlarge the fonts) enough, some sidebars immediately go away. This makes the sales sheet a scrollable document, especially with regard to Add to Wishlist (which is broken in Mozilla, as-is).

tidal kiln
#

i'd just link to the guide, don't worry about trying to provide specific links to sections

idle owl
#

Fair enough.

tidal kiln
#

once they get to the guide, the left hand nav will do that

timber mango
#

People need wiring diagrams -- exact answers, to some of this stuff.

idle owl
#

Ok. Thanks for your input, everyone! Separate guide it is.

timber mango
#

I try to include fritzing wiring diagrams in my github stuff.

#

Any link present should always do exactly what is expected of it. More links, the less likely that'll happen.

somber garden
#

Ah heck, there's no collections module in Circuitpython. I can understand it's cut out for space, but it's a convenient module at times.

idle owl
#

Correct and yes, entirely.

manic glacierBOT
#

I opened this one up to discussion because I could see the merit of both options. The conclusion is separate guide, and we can link to it from the Welcome guide. The Welcome guide is already pretty big and should focus on getting started and troubleshooting. This would be the next-step guide. :)

So I'll create a new one and get the initial stuff moved over, and get it mirrored to all the boards from the new guide!

tidal kiln
#

@idle owl probably already what you're thinking, but seems like you could just pull that whole CircuitPython Playground section out of the Gemma M0 guide and make it the new guide

idle owl
#

Yep. We're updating it to include all the boards, and it'll end up mirrored back into all the guides from the new one.

#

It's not getting pulled out entirely. The origin is being moved.

tidal kiln
#

move to a new separate guide and then mirrored back in?

idle owl
#

I believe so.

manic glacierBOT
idle owl
#

@raven canopy Having another taco evening, I see?

raven canopy
#

hehe. i knew the email would give it away. wanted to break up the monotony for when you started reviews...

idle owl
#

๐Ÿ˜ƒ

raven canopy
#

i've been dropping some Star Wars commit messages too. only a couple so far...trying to keep it somewhat "professional". ๐Ÿ˜„

#

oh sweet! don't have to do SSD1306...it was already done! missed that one in my initial review I guess. #ItsTheLittleThings

idle owl
#

I love that's it's "somewhat professional". ๐Ÿ˜„

#

I've had one from Radomir that said "Either I didn't write this or I was drunk when I did because I don't remember this at all" right below his name in the author spot.

raven canopy
#

oh phooey. just realized that we wanted Travis build image on the READMEs... I even removed a couple.

idle owl
#

@fading solstice Are you around?

raven canopy
#

RE: Radomir: that's hilarious!

idle owl
#

It was! I got a good laugh out of that one.

raven canopy
#

sphinx is smacking me around right now. it should build, but refuses to. ๐Ÿ˜ฌ

idle owl
#

Yeah.... it does that.

raven canopy
#

i've re-read this thing like 8 times trying to find the one letter i've missed. although, maybe i've missed it 8 times.. ๐Ÿ˜„

idle owl
#

Yeah, that also happens ๐Ÿ˜„

raven canopy
#

chips-n-salsa+TV break. that always helps...

timber mango
#

Just as long as it's a movie, and not episodic tv ;)

raven canopy
#

might talk the kid into Ragnorok...haven't watched it since it came on amazon.

errant grail
#

Well, the Trinket M0 CircuitPython 2.2.3 holiday lighting controller is done! CPy made it easy. Photos were posted to #show-and-tell if you're interested.

timber mango
#

Easter is now a 'lit' holiday? Boxing Rebellion Day? April Fools?

errant grail
#

@timber mango Ha! Nope, just getting a jump on our December lighting extravaganza.

proven kettle
#

Hello, I am totally new to Circuitpython. I am having problem getting MU editor to run on OSX 10.11.6. The MU editor I download from adafruit does not want to start. Is there anyone that had ran MU on OSX ?

timber mango
#

Pretty sure they know all about it -- lead dev I think has a Mac system.

manic glacierBOT
somber garden
#

Whomped this up for a small project, as I didn't want to keep recalculating them on the fly:
`python
#On a Circuitpython Playground Express, these are the bearings of each Neopixel from the

centre of the board; first in radians, then in degrees.

bearings_in_radians=[-0.5028432109278608, -1.067953115867036, -1.5707963267948966, -2.0736395377227574, -2.6387494426619322, 2.6387494426619322, 2.0736395377227574, 1.5707963267948966, 1.067953115867036, 0.5028432109278608]

bearings_in_degrees=[-28.810793742973058, -61.189206257026946, -90.0, -118.81079374297306, -151.18920625702694, 151.18920625702694, 118.81079374297306, 90.0, 61.189206257026946, 28.810793742973058]

bearings_in_radians_positive=[5.780342096251726, 5.21523219131255, 4.71238898038469, 4.209545769456829, 3.644435864517654, 2.6387494426619322, 2.0736395377227574, 1.5707963267948966, 1.067953115867036, 0.5028432109278608]

bearings_in_degrees_positive[331.18920625702697, 298.81079374297303, 270.0, 241.18920625702694, 208.81079374297306, 151.18920625702694, 118.81079374297306, 90.0, 61.189206257026946, 28.810793742973058]`

#

Hm, didn't seem to get the formatting right

#
#On a Circuitpython Playground Express, these are the bearings of each Neopixel from the
# centre of the board; first in radians, then in degrees.
bearings_in_radians=[-0.5028432109278608, -1.067953115867036, -1.5707963267948966, -2.0736395377227574, -2.6387494426619322, 2.6387494426619322, 2.0736395377227574, 1.5707963267948966, 1.067953115867036, 0.5028432109278608]

bearings_in_degrees=[-28.810793742973058, -61.189206257026946, -90.0, -118.81079374297306, -151.18920625702694, 151.18920625702694, 118.81079374297306, 90.0, 61.189206257026946, 28.810793742973058]

bearings_in_radians_positive=[5.780342096251726, 5.21523219131255, 4.71238898038469, 4.209545769456829, 3.644435864517654, 2.6387494426619322, 2.0736395377227574, 1.5707963267948966, 1.067953115867036, 0.5028432109278608]

bearings_in_degrees_positive[331.18920625702697, 298.81079374297303, 270.0, 241.18920625702694, 208.81079374297306, 151.18920625702694, 118.81079374297306, 90.0, 61.189206257026946, 28.810793742973058]```
timber mango
#

Nice.

manic glacierBOT
#

Is there any reason not to enable the framebuf module for the nrf52 builds?
https://github.com/adafruit/circuitpython/blob/master/ports/nrf/mpconfigport.h#L128

It is enable for the ATMEL SAMD "express" boards, but I think the NRF52s have sufficient flash for it as a default.
I enabled it an built the feather52840 BSP and was able to write to an SSD1306 SPI OLED display so it works OK.
I'll be happy to submit a PR for thsi if you want - or it can just wait for the next update. ...

manic glacierBOT
idle owl
#

@raven canopy You here?

raven canopy
#

i am.

manic glacierBOT
idle owl
#

@solar whale If you think that issue can be closed, go for it. We can reopen it if we run into the issue again. It sounds like you've tested it solidly.

idle owl
#

@proven kettle I'm sorry to hear you're still having issues with getting Mu editor running. I hope the forums will have a better answer. The version available from codewith.mu does not have the Adafruit support, there have been a number of updates since that version. To get the most recent version, you'll need to install it from command line which involves having a few things already installed. https://github.com/mu-editor/mu/tree/master/package Expects you have Homebrew installed. There is a link there to Homebrew which explains how to install it. Hopefully this helps.

#

@proven kettle Once you have the prereqs installed, I believe it's pip3 install mu-editor. You'll need to run it from the command line as well. You can either run python3 -m mu or you should simply be able to type mu into the command line and run the program.

jovial wind
#

I found some issues with deps, when trying to install on 32bit ubuntu a few weeks back..

#

64-bit mu via pip3 worked fine

idle owl
#

They're trying to get it running on Mac, I don't think there's a 32bit issue there. But, that's good to know.

jovial wind
#

sorry I mean it worked fine on 64bit ubuntu

idle owl
#

I understood what you meant ๐Ÿ˜ƒ

jovial wind
#

yeah seemed to work ok on the mac IIRC

idle owl
#

Also good to know. I haven't tried it in a bit.

jovial wind
#

but then I've done a ton of different installs on the mac so my experience might not be 'pure' if that makes sense

idle owl
#

Last time it failed for me on a few of the dependencies if I remember correctly. And yeah, that makes complete sense, I also have a bunch of stuff installed, so my experience won't be theirs either.

#

This time it worked on the first try.

#

Although here's an entirely noob question. How do I run it now that I pip3 installed it? python3 mu-editor isn't working.

stuck elbow
#

python3 -m mu

idle owl
#

Oh excellent. Thank you.

stuck elbow
#

but you should also have the "mu" command available now

idle owl
#

So I do. More excellent.

#

@proven kettle Once I had Python3 and pip3 installed, I simply ran pip3 install mu-editor and it installed the other dependencies automatically, so I didn't do them individually. Try this first, if you can get Python3 and pip3 installed.

jovial wind
#

I did have an issue with the micro:bit micropython version bundled with it...which I raised but haven't checked back

idle owl
#

Ah. I don't have a micro:bit so I wouldn't have found that.

stuck elbow
#

yeah, the officially released micro:bit micropython is ancient

jovial wind
#

I think it was an issue with the neopixels lib

stuck elbow
#

they are working on releasing new version, but it needs more testing

jovial wind
#

they'd just go to 255,255,255 regardless of what you were setting them to

stuck elbow
#

I believe that's fixed in master

jovial wind
#

@stuck elbow cool!

solar whale
#

The new plotter capability in mu beta15 is pretty nice. I recommend playing with it!

idle owl
#

Yah I see that.

ruby lake
#

mu takes a long time to start for some reason

idle owl
#

It's quick for me. I installed it a half hour ago though. On MacOS.

prime flower
#

I like this plotter!!

#

(may write a guide for using it if others are interested in it for scientific purposes, I have a few ideas)

ruby lake
#

plotter is useful for seeing waveforms w/o having to send them to dac & scope

manic glacierBOT
idle owl
#

@raven canopy You have a minute to verify a few guides for me?

raven canopy
#

give me a sec to finish up this doc update. shoot 'em over in DM and i'll get to 'em

idle owl
#

Ok keen. They're public now, so it's all good. (Or that's the idea anyway ๐Ÿ˜„ )

raven canopy
#

put here then, if ya like.

idle owl
manic glacierBOT
#

Ok, I mirrored The Next Step in, and for Gemma and Trinket, I put all the current pages under that one, so as we go, all we need to do is delete the current ones and mirror in the new ones.

I'm having someone check to verify that the mirrors worked. (It's weird how it worked, so even though it did the first time, I'm still having someone check.)

Excellent, that was the plan! And since we're working off of live guides, I'll leave everything in place until we're mirroring the replacement ...

raven canopy
#

The Next Step checks out good. Digital In & Out doesn't display anything on all three... ๐Ÿ˜ฆ

idle owl
#

Hmm ok. Let me try something

manic glacierBOT
idle owl
#

Can you check Gemma again for me?

#

I that was the first one we did

#

I'm wondering if it's the nesting.

raven canopy
#

still a no-go on Gemma. Feather M0 is the same...

#

let me check the source (if it will even glean anything)...

idle owl
#

Oh weeird.

#

It mirrored into one guide, and then mirrored out of that guide to the others. Like it couldn't find the original.

raven canopy
idle owl
#

Check Gemma again. I deleted and remirrored it, it's at the bottom of the list

#

It's showing up for me in private browsing, but I don't know if that's enough to have it not show up for me.

raven canopy
#

Gemma now has it at the bottom (not inside "The Next Step")...but it works.

idle owl
#

Right ok. Hold on, going to try to nest it.

#

Refresh

raven canopy
#

sorry @digital shore

#

bingo! bongo!

idle owl
#

Still works for me in private browsing. And it says it's mirrored from the right place.... Ok! Now to carefully redo the others......

#

๐Ÿ˜„

raven canopy
#

(that means good, in sommersoft parlance)

idle owl
#

Indeed ๐Ÿ˜„

raven canopy
#

in unrelated news: we've successfully pushed my Edge instances to consume over 1.5GB of memory. ๐Ÿ˜„

#

modern browsers are such pigs...

idle owl
#

Truth.

#

Ok..... so it should be both in the correct place and working on all the guides now.

raven canopy
#

getting the F5 key warmed up...

idle owl
#

There was an obvious issue in Learn, so at least I know what to look for next time without making you go through this every time ๐Ÿ˜„

raven canopy
#

they're golden.

#

well, white+blue+black+purple. but, details schmetails....

idle owl
#

Thank you for dealing with this... super helpful

raven canopy
#

no worries!

#

dinner time is upon me... later taters! ๐Ÿ˜‹

bronze geyser
#

I'm in process debugging SPI on Feather. Forgive that my brain is fried (caveat in case stupid ?)...what are the names of the include files (or where is the mapping) for digitalinout for all the boards? I want to make sure I've mapped cs to the right digitalio.DigitalInOut() thank you.

idle owl
#

@proven kettle Ok I looked into it. The Mu author is currently working on an updated MacOS package, but there is no ETA on when that will be available - you can keep an eye on this: https://mu.readthedocs.io/en/latest/packaging.html . The option for installing Mu right now is using Python3 as detailed previously.

raven canopy
#

@bronze geyser which board are you using?

ruby lake
#

@solar whale using something like lfsr_mask = 0x8008006 is fine, except for "long int not available in this build"

#

so, I will have to split the 32-bit shift register up

solar whale
#

@ruby lake where do you see that error response?

ruby lake
#

in the repl

solar whale
#

Hmm. The example I posted was in repl

#

Is it a 3.0 change? Mine was 3.0

ruby lake
#

I was using 2.2.3

#

in fact, it is 2.2.0:

#

Adafruit CircuitPython 2.2.0 on 2018-01-02; Adafruit Feather M0 Express with samd21g18

lfsr_mask = 0x80008006
OverflowError: long int not supported in this build

#

I can try applying 3.0

solar whale
#

Ok. Clearly a change in 3.0.

#

I expected a similar error but it did not occur.

#
>>> 
>>> lsfrmask = 0x80008006
>>> 
#
>>> 
>>> lsfrmask = 0x80008006
>>> lsfrmask = (1<<31 | 1<<15 | 1<<2 |1<<1)
>>> hex(lsfrmask)
'0x80008006'
>>> 

raven canopy
#

M0 vs M4, perhaps?

#

M4 has FPU...

solar whale
#

just a sec - will try on trinket_m0

#

good call ``` Adafruit CircuitPython 3.0.0-alpha.2-3-g15b8455 on 2018-03-01; Adafruit Trinket M0 with samd21e18

lsfrmask = (1<<31 | 1<<15 | 1<<2 |1<<1)
OverflowError: small int overflow

raven canopy
#

from mpconfigport.h

#ifdef SAMD21
#define CIRCUITPY_MCU_FAMILY samd21
#define MICROPY_PY_SYS_PLATFORM                     "Atmel SAMD21"
#define PORT_HEAP_SIZE (16384 + 4096)
// If you change MICROPY_LONGINT_IMPL, also change MPY_TOOL_LONGINT_IMPL in mpconfigport.mk.
#define MICROPY_LONGINT_IMPL        (MICROPY_LONGINT_IMPL_NONE)
#endif

#ifdef SAMD51
#define CIRCUITPY_MCU_FAMILY samd51
#define MICROPY_PY_SYS_PLATFORM                     "MicroChip SAMD51"
#define PORT_HEAP_SIZE (0x20000) // 128KiB
// If you change MICROPY_LONGINT_IMPL, also change MPY_TOOL_LONGINT_IMPL in mpconfigport.mk.
#define MICROPY_LONGINT_IMPL        (MICROPY_LONGINT_IMPL_MPZ)
#define MP_SSIZE_MAX (0x7fffffff)
#endif 
#

i've read too much in that repo... lol

solar whale
#

@ruby lake sorry for the mis-information - my first report was from an nrf52 - also M4

ruby lake
#

it looks like an M0 limitation

raven canopy
#

yeah. same reason for 31bit ints, i think...

solar whale
#

I suppose the LONGINT takes up too much resource in the M0...

#

I'm still a bit fuzzy on the #define MP_SSIZE_MAX (0x7fffffff) since the example has bit 31 set.

raven canopy
#

i think i understand it, but to keep my erroneous perceptions from leeking out...i'll refrain from sharing it. ๐Ÿ˜„

solar whale
#
>>> 
>>> 
>>> 
>>> lsfrmask = (1<<31 | 1<<15 | 1<<2 |1<<1)
>>> hex(lsfrmask)
'0x80008006'
>>> type(lsfrmask)
<class 'int'>
>>> lsfrmask
2147516422
>>> 
#

seesm like it is handling it as an unsigned int.

#

or a larger thatn 32 bit int

#

I'll also refrain from further self-incrimination -- good luck @ruby lake

ruby lake
#

the M4 does what I want

raven canopy
#

hence the impending "one per order/address" limitation when the boards are released. ๐Ÿ˜„

ruby lake
#

The idea is to generate a white noise signal using a Galois LFSR:

#
import digitalio
import board
#lfsr_mask = 1<<31 | 1<<15 | 1 << 2 | 1 << 1
lfsr_mask = 0x80008006
lfsr_init = 0xdeadbeef
lfsr = lfsr_init

gateLED = digitalio.DigitalInOut(board.D13)
gateLED.direction = digitalio.Direction.OUTPUT
noise = digitalio.DigitalInOut(board.A0)
noise.direction = digitalio.Direction.OUTPUT

while True:
    if(lfsr & 1):
        lfsr =  (lfsr >> 1) ^ lfsr_mask
        noise.value = 1 # Galois LFSR
    else:
        lfsr >>= 1
        noise.value = 0
#

but it needs a 32-bit shift register

#

I can make one of a smalelr length

#

~smaller

solar whale
#

ah - that makes sense. I was curious what you were doing.

#

the M4's will be in high demand. I see taht even the feather52 are out of stock -- still some feather52 pro's avaliable

raven canopy
#

"0xdeadbeef"? at first i thought it was notation mnemonic related...then googled it. i rarely hexed back in the day, so i clearly missed the reference. ๐Ÿ˜ƒ

solar whale
#

We have used taht as an "initial value" for a long time.

#

0xfeedface 0xdeadbeef

ruby lake
#

oxdeadbeef is the time-honored value for initialzing a block of ram ๐Ÿ˜‰

#

speaking of which, supper time

solar whale
#

enjoy!

#

Goodnight all!

idle owl
#

Have a good one!

raven canopy
#

night @solar whale. happy ๐Ÿ’ค

idle owl
#

Can you simply get analog voltage readings from any analog pin? On any of the M0 boards? It's possible on Trinket and Gemma I see, but I'm wondering if I understand it correctly or not.

raven canopy
#

well, peeking at the feather m0 on my breadboard, I would assume all six A pins would act the same, but I'd have to check the overview page...

idle owl
#

Trying to figure out if I'm right that I can write a single piece of code that would work across all the boards that grabs the analog voltage off of A1 (or whatever analog pin).

#

Seems like it should work without any external wiring or sensors needed. (All being Trinket, Gemma and M0 Express boards)

raven canopy
#

yeah. was just peeking at analogio. i don't see anything that would limit it for any particular board...let me check the common-hal real quick.

#

@idle owl looks to me like you can proceed with that understanding. but clear with tannewt, dhalbert, or ladyada...they're def more adept at answering that question than i is.

idle owl
#

It'll get tested regardless. Thanks for looking into it ๐Ÿ˜ƒ

#

I wasn't sure where else to look past what I had already found.

pastel panther
#

@idle owl, yes you should be able to get an analog reading from any A(n) pin as they all have ADCs. right?

#

blerp

idle owl
#

That's what I thought, but then I keep second guessing what I think I know

pastel panther
#

I'm pretty sure the A in A1 etc means analog and given they certainly don't all have DACs, I'm pretty sure they have ADCs

#

The M0s have a ton of ADC channels

idle owl
#

Some of the A pins are also D pins, I do know that

#

but not all. or on all boards.

#

See this is why I always second guess it. Weird stuff like that.

pastel panther
#

As far as I understand it, a D pin is a generic digital in/out GPIO pin which any pin should be able to do

#

the D aren't special as far as I can tell other than having a D# label

idle owl
#

Ah ok

pastel panther
#

Also in CP they're just strings you assign to pins on the chip. Like my m4 board might just have a board.WTF pin tomorrow

idle owl
#

Right

pastel panther
#

The pin labels are a nice reference but most pins can do a lot more than their name implies. A1 for example has an ADC and a sercom so it can do i2c, SPI, USART, toggle leds and read an analog voltage

idle owl
#

Right. Which is what confused me in the very beginning. And probably more recently than it should have at times ๐Ÿ˜„

pastel panther
#

btw it also has a timer so it can do PWM

idle owl
#

Right, that's a different page altogether.

pastel panther
#

it's a super pin!

idle owl
#

Right?

#

Exactly

raven canopy
#

but it can't take analogin like A0... the true alpha pin. ๐Ÿ˜„

pastel panther
#

(and it can do touch)

idle owl
#

Yah, but only sometimes. We finally had to say it didn't. Too many caveats.

pastel panther
#

@raven canopy what do you mean it can't take analogin? It's got an ADC

idle owl
#

Owait. I read that wrong then.

#

I was thinking about analogout. A0 is the only true analogout. And also can't do touch reliably. So we stopped having it do touch at all.

raven canopy
#

errr....output. output.....

#

๐Ÿ˜„

idle owl
#

Hah. I read what you meant then. Figures.

manic glacierBOT
#

Do you want a single "Internal RGB LED" page with code commented out for both or do you want two separate pages for the internal LEDs, DotStar and NeoPixel, and then mirror into only the applicable guides? (Still planning on separate DotStar and NeoPixel pages as it is right now for external.)

Which capacitive touch breakout should I use for the Cap Touch page? https://www.adafruit.com/product/1374, https://www.adafruit.com/product/1982 or other?

I'll have more questions, but those are ...

pastel panther
#

Yes, it's the only pin with a DAC

raven canopy
#

i'm totally off right now. this is what happens when you start a workflow, interrupt it by updating other things at different points in the same workflow, coming back to the original workflow, then letting discord interrupt you... ๐Ÿ˜„

idle owl
#

Well I'm excited because my code works on at least 2 boards. So thanks for the input on that being possible.

manic glacierBOT
raven canopy
#

uh-oh. Travis is having job log issues again... ๐Ÿ˜ฆ

drifting nexus
#

On the lsm9ds1: I am getting 3 significant figures using the .mpy lib on the feather, but only getting 2 sig figs when using the .h lib on the Uno. This is for magnetometer readings. Any way to get up to 3 sig figs on the latter?

pastel panther
#

@drifting nexus You're talking about Circuit Python in one case and Arduino in the other?

drifting nexus
#

yes, sorry if this belongs on another forum

pastel panther
#

It's tangentially related I suppose. No worries

#

Theoretially you could look at the code for the arduino library and figure out how it's coming up with the specific value that it's returning and change it

drifting nexus
#

where is the sig fig setting in the .mpy lib?

raven canopy
#

@drifting nexus it has to do with the formatting in the examples. the circuitpython example sets the format to 3 decimal places:

print('Magnetometer (gauss): ({0:0.3f},{1:0.3f},{2:0.3f})'.format(*sensor.magnetometer))

the arduino example doesn't include any formatting, and defaults to 2 decimal points.

#

try this in arduino for x, y, and z:

Serial.print("Mag X: "); Serial.print(m.magnetic.x, 3);   Serial.print(" gauss");
#
print(value, format)  # for floats, the <format> is the number of decimal points
drifting nexus
#

I'll try that - thank you

untold ermine
#

Hello everyone, I am looking for some help regarding transceivers

raven canopy
#

@untold ermine if your question isn't directly CircuitPython related, you may get better attention in #help-with-projects. but, someone may still be able to help you out here.

untold ermine
#

Okay thank you

raven canopy
#

you're welcome.

manic glacierBOT
manic glacierBOT
raven canopy
#

I think its time to call it... my brain doesn't have another doc update left in it. ๐Ÿ˜ด

drowsy geyser
#

Sleep well, @raven canopy .

manic glacierBOT
slender iron
#

<@&356864093652516868> and anyone else interested. Normal meeting time tomorrow, almost exactly 12 hours from now. Mondays 11am Pacific / 2pm Eastern here on Discord.

indigo wedge
#

oh my gosh, I'm so behind on my CP stuff

#

few weeks have been crazy

#

and it's not over yet

#

but i haven't left the project !

manic glacierBOT
solar whale
#

@indigo wedge Good luck with it!

solar whale
#

Arrgh! I was almost going to open an issue about my Metro M4 Express spontaneously resetting. I finanly manged to make it very repoducible and it occured every time I stood up from my chair! It turns out scuffing my behind across the material of this desk chair must be very good ESD generator. All I had to do was slide forward and stand up and the M4 would reset! I have replaced my "Van de Graf" chair with a simple wooden chair and I can stand and sit without any resets. I decided not to do extensive tesitng on other boards, but I think this explains a lot of "odd" behaviors that I have experienced. I'll be paying better attention to this going forward. While not directly Circuitpython related, I thought it worth sharing here since it may have been relevant to some past unexplained issues. At least I can hope so ...

ruby lake
#

anti-static mat ftw

solar whale
#

@ruby lake I have it on an AS mat and it happens even if I am wearing my wrist strap. Clearly something is not as it should be....

#

May well be related to my footwear - I have noticed that "Crocs" are very bad in an ESD environment. They must be good insulators. I just hate to give them up...

ruby lake
#

hm

slender iron
#

@solar whale @tulip sleet found the reset line very sensitive too. The next rev will tweak it I believe

pastel panther
#

@solar whale The internal pullup on the reset pin is broken on the SAMD51 so you're required to have your own . This could mean it's extra sensitive I suppose, depending on the value chosen?

solar whale
#

Ah - can I just add a resistor - where? what size?

pastel panther
#

I think there is one already or else it would be totally borked

#

before I figured it out, getting my hand anywhere near the chip would cause it to wig out

#

I could be wrong but I'm pretty sure ladyada mentioned doing a board rev to fix it; maybe that's why we have rev B?

slender iron
#

I think rev b added it but changing the value could improve things

drowsy geyser
#

I've been helping @idle owl validate guides using different boards. If any of you are developing under CP 3.0 alpha 2 and want extra eyes validating that things work, I have the following boards and would be happy to help in the evenings: Feather M0 Express, Metro M0 Express, Metro M4 Express (revb), Trinket M0, and CircuitPlayground Express.

manic glacierBOT
#

Thanks @tuupola! Let me know if you need any guidance on how to get it done.

On Sun, Mar 4, 2018 at 9:55 PM Mika Tuupola notifications@github.com
wrote:

Had missed this. @tannewt https://github.com/tannewt sure, I will check
them out.

โ€”
You are receiving this because you were mentioned.

Reply to this email directly, view it on GitHub
https://github.com/adafruit/circuitpython/issues/622#issuecomment-370317543,
or mute the thread
<https://github.com/notifications/u...

#

@l8gravely On the SAMD21 it is millisecond.

I'm still unsure we want to provide precise timing because we pause the VM from time to time to do other things. I'm worried about making timing promises we don't always keep. If we did, I think we could introduce a precisetime module for it.

@l8gravely also follow #619 for a different way to do things concurrently.

slender iron
#

Someone is going through their email.... ๐Ÿ˜‰

drowsy geyser
#

@slender iron I figured you were just getting ready for the meeting. ๐Ÿ˜ƒ

slender iron
#

yeah, that too

#

trying to get all the admin stuff out of the way so I can go heads down after the meeting

slender iron
#

<@&356864093652516868> Meeting is starting soon!

timber lion
#

so weird i can't unmute

pastel panther
#

All hail @slender iron ! Our Fearless Lead Developer Thingie! ๐Ÿ˜›

stuck elbow
#

is this thing on? I can't even hear typing sounds

raven canopy
#

๐Ÿคฃ

pastel panther
#

yay @raven canopy !

stuck elbow
#

Sorry, technical problems on my side, can't hear anything, see you next week.

idle owl
#

Thanks for stopping in, @stuck elbow, sorry you couldn't get it sorted.

prime flower
#

@idle owl for the work performed on muโ€™s installation. @meager fog and @plucky flint for the work done on mu editorโ€™s plotting functionality, adding it into the METROX-CircuitPython guide. @slender iron for 3.0.0, weโ€™re getting close! @raven canopy for doc updates.

raven canopy
#

And, Lemon Squeezey?

drowsy geyser
#

Ok, go ahead. Not sure what's wrong.

tidal kiln
#

maybe you could add an easter egg to CP like import antigravity that runs blink, call it import easypeasy

pastel panther
#

Hug reports: To Scott for helping me with GDB tips and Dan for helping me reason through testing SPI and sercoms on my m4 board.

timber lion
#

oh yeah the fun/joke modules in microbit i made configurable so you can choose to include or not ๐Ÿ˜ƒ

raven canopy
#

HUGS: just a group hug today.

timber lion
#

they do take a bit of flash, like 20k or so IIRC

errant grail
#

Excited about DMA!

#

I have a couple of LoRa projects in the queue. Thanks Tony!

tidal kiln
#

yep. did the same thing for that 1 wire gpio thingie.

#

(in theory)

idle owl
#

Exactly!

drowsy geyser
#

No worries! Happy to help out more!

pastel panther
#

Status Report:
Finished testing every possible combination of sercom pinout with SPI and i2c on my m4 board over the weekend(works!). Started shoving more onto the board and fixing bugs until eagle took two hours of work and threw them in the trash can.

Also tested QSPI which seems to be at least communicating with the chip though Iโ€™m not seeing CDC or MSC working. If I get that figured out Iโ€™ll take a look at DMA if Scott still needs a second pair of eyes

I got hardware dotstar support working on the trinket m0 and my m4 board except for the part where Iโ€™m still tracking down a OS error that is thrown when trying to make a sercom on a pin that can be muxed to the same sercom as the dotstar. In doing so found a โ€œfeatureโ€ of the itsy bitsy m0 board layout that requires you to bitbang the dotstar.

With luck Iโ€™ll finish the dotstar work this week and maybe finish rev b of the m4 board. Probably not this week but maybe another rev of the metrowing and a medium sized run to make some kits.

If anyone has a name suggestion for my m4 board Iโ€™d love to hear it. Itโ€™s currently called the oh so creative โ€œsamd51_protoโ€ however other ideas are โ€œโ€˜lil-sebastianโ€, โ€œitsy-bitsy-XXLโ€ and โ€œTHICChip" as it was meant to be bitsy sized but ended up almost as wide as a feather

errant grail
#

The new guides are very useful. It's very easy to find focused as well as general info!

prime flower
#

name suggestion - sammie the samd

tidal kiln
#

i vote lil-sebastian, if you put a small pony in the silk

raven canopy
#

STATUS: "driver" docs PRs are done. only the "helpers" remain; should be done by tomorrow night. Then I'll focus on serial_connected et al. Then FRAM driver.

#

saw it. thanks.

#

It's muscle memory at this point... ๐Ÿ˜

opaque patrol
#

@stuck elbow Do you know when you will have more ugames ready?

stuck elbow
#

@opaque patrol I was planning to make an order for another batch soon, however, life interferes โ€” day job, moving house, etc.

timber lion
idle owl
#

Thanks @timber lion!

#

@raven canopy Do you think we can use your doc update list for the driver testing issue? (Since you already put the work into typing them all out)

raven canopy
#

Just wanted to note (discussion not necessary): #classroom had activity this week, and it seems to be working as intended. :happy dance:

#

@idle owl definitely! It's a couple drivers short though, being 2+ weeks old.

idle owl
#

@raven canopy It's a great start then. We'll get it set right.

prime flower
#

@idle owl could we do a new issue with the large checklist for the other (non-high-priority) drivers, similar to the docs-to-be-updated sommersoft is working on?

idle owl
#

@prime flower We'll figure out the best way to do it. I'd like to see a list somewhere including all of them, even if it's two lists.

prime flower
#

maybe a test matrix for the library, then the configuration tested

opaque patrol
#

"Funny notes in config file"....is a feature

solar whale
#
#ifdef SAMD21
#define CIRCUITPY_MCU_FAMILY samd21
#define MICROPY_PY_SYS_PLATFORM                     "Atmel SAMD21"
#define PORT_HEAP_SIZE (16384 + 4096)
// If you change MICROPY_LONGINT_IMPL, also change MPY_TOOL_LONGINT_IMPL in mpconfigport.mk.
#define MICROPY_LONGINT_IMPL        (MICROPY_LONGINT_IMPL_NONE)
#endif

#ifdef SAMD51
#define CIRCUITPY_MCU_FAMILY samd51
#define MICROPY_PY_SYS_PLATFORM                     "MicroChip SAMD51"
#define PORT_HEAP_SIZE (0x20000) // 128KiB
// If you change MICROPY_LONGINT_IMPL, also change MPY_TOOL_LONGINT_IMPL in mpconfigport.mk.
#define MICROPY_LONGINT_IMPL        (MICROPY_LONGINT_IMPL_MPZ)
#define MP_SSIZE_MAX (0x7fffffff)
#endif 
#

from mpconfigport.h

raven canopy
#

HT16K33??

stuck elbow
#

we have that

errant grail
#

Thanks!

raven canopy
#

Thanks peoples!!

prime flower
#

bye all!

timber mango
#

@stuck elbow Right I did use segments.py yesterday. Had forgotten. Bad soldering job prevented a successful test (could not find i2c dev at 0x70)

pastel panther
#

byeeeee

timber mango
#

btw all the 3.3 volt pin does on that module is offers a pullup to 3.3v on SDA and SCL -- isn't connected elsewhere. On 5V logic it's tied direct to Vcc.
ref. https://www.adafruit.com/product/1911

#

a glass of water works to restore cognitive function. ;)

raven canopy
#

Ok...back to the day job. :eeyore:

timber mango
#

Start with 100k

#

With pin-sharing you lower the pullup resistance to make it stronger.

#

usually, /RST is its own pin, but on low-pin-count target boards sometimes there's pin sharing.

#

Pin-sharing /RST example. C8051F330D, which uses a single pin as both as C2CK and /RST. C2 is their two-wire debug interface.
All those capacitors in parallel were meant to substitute for a single, larger capacitor I did not have on-hand (so I used 10 ceramic bypass caps instead).
The correct value is 1 uF for that cap and it is polarized (+ connected to the anode of that diode (D1, 1N4148) nearby).

manic glacierBOT
idle owl
#

@slender iron Yep

slender iron
#

๐Ÿ‘

idle owl
#

Waiting on travis

slender iron
#

I'm looking over the list of commits that haven't made the bundle because of needing releases now

idle owl
#

Ah ok keen

slender iron
#

git submodule foreach "git log --oneline HEAD...origin/master"

idle owl
#

Merged.

slender iron
#

thanks!

#

@idle owl are you releasing rfm69?

idle owl
#

I hadn't planned on it, didn't update anything that needed it. Was it missing an earlier release?

slender iron
#

I'll do it. yeah, jerry added buadrate stuff

idle owl
#

Ah ok keen. Thanks!

raven canopy
#

My PR lead is diminishing...must. submit. more. ๐Ÿƒ ๐Ÿ˜„

idle owl
#

@raven canopy You're doing an amazing job! Thank you again!

raven canopy
#

i will have to go back and add Travis badges on a lot of those earlier ones anyway...

#

like i said eariler, it's muscle memory at this point. got my average workflow down to around 18 minutes. at least i get to pay it forward...lord knows how many hours i've read adafruit documents that have been created/maintained up to this point. adabot

slender iron
#

k, new bundle released

idle owl
#

Excellent.

timber lion
#

is the bundle submodule stuff in a good state @slender iron ? git is doing very strange things for me

#

it won't update a submodule i point to

#

curious if you've seen this

slender iron
#

@timber lion I think so. I was just poking it

timber lion
#

git is very unhappy

#

i'm forcing it to sync ds18x20 but it's ignoring and syncing everything else

#

but accordin to git submodule sync it should update what i point at and nothing more

slender iron
#

what happens if you do git submodule update ?

timber lion
#

doesn't touch ds18x20 either

#

it just pulls in si5351 and such

#

i think i need to just totally annhilate the ds18x20 and add fresh

slender iron
#

because you changed the url?

timber lion
#

yeah i updated the .gitmodules file

slender iron
timber lion
#

and git submodule sync is supposed to see that update and make git happy

#

but it's not

slender iron
#

I've never run submodule sync

timber lion
#

ah that might be the magic step

raven canopy
#

@timber lion were you perhaps updating ds18x20 for the OneWire issue while @slender iron was updating the release?

timber lion
#

yeah not many other people have online either.. no good docs on it

raven canopy
#

just imagine it's failing the sync because it's still pointing at an incorrect url (like apt-get does...fail, skip, move on)

timber lion
#

yeah i think delete and re-add is going to fix it.. we'll see in a moment

#

just changing the .gitmodules apparently doesn't update the other metadata git hides away regarding what pinned version

raven canopy
#

@slender iron bus_device had some pretty old versions of docs stuff. is setup.py related to docs, or is it truly for setuptools?

slender iron
#

its for pip packaging

#

go ahead and leave it

raven canopy
#

๐Ÿ‘

#

i also left the old conf.py in there, in case it truly needs the old one...

manic glacierBOT
#

Yep check out the new guide page here for info on the new library: https://learn.adafruit.com/adafruit-rfm69hcw-and-rfm96-rfm95-rfm98-lora-packet-padio-breakouts/circuitpython-for-rfm9x-lora It's very similar to the RFM69 library but made to work with the RFM9x radios in LoRa mode and with RadioHead compatible headers/config. Basic send/receive between two modules running the CircuitPython code or the RadioHead Arduino library RFM95 example (basic 'raw' client / server) work great.

idle owl
#

Ok I think we're through all the PRs!

raven canopy
#

good job! (but...now my lead is gone. for now.)

manic glacierBOT
raven canopy
#

it's eerily quiet in here.... ๐Ÿ‘ป

idle owl
#

Discussing potentially giving a talk at a conference in July.

raven canopy
#

oh nice! ๐Ÿคž

idle owl
#

It'd be the first time I've ever done an actual tech conference. Trying to decide what to do. Worried anything I would do would be to beginner. Also keeping a talk to 30 minutes... oi.

#

But there's the 2 hour tutorial option as well. Which is equally terrifying for its own reasons.

raven canopy
#

hehe. i feel ya on the "long-winded". ๐Ÿ‡ ๐Ÿ•ณ

idle owl
#

My last talk was over an hour.

#

The workshop I'm doing in May at a local convention is a 2 hour slot. But it's suuuper beginner. I'll be going through cpx class essentially.

raven canopy
#

i'm a horrid public speaker...especially when I don't actually know the audience. depending on the subject of course...

#

if it were a talk on, say, obscure movie lines...i could nail it. though, most people would be like "that dude needs medication". ๐Ÿ˜„

#

any dealing with pytest, so far? the motor lib has it in there, but Travis won't get past it...

idle owl
#

Hmm

errant grail
#

It took me a few years to get used to public speaking. I settled on a few guidelines that I always follow now: 1) always talk about something you know and care about, 2) tell 'em what you're going to say, 3) say it, 4) tell 'em what you said. I've given a few national-level talks over my career and was nervous before each, but the "rules" helped me get comfortable in the first 5 min or so.

raven canopy
#

Travis says:

$ py.tests
No command 'py.tests' found, did you mean:
 Command 'py.test' from package 'python-pytest' (main)
py.tests: command not found

might give py.test a roll...

idle owl
#

@errant grail That's a pretty great set of guidelines.

errant grail
#

They worked for me, anyway.

idle owl
#

What's it doing in the motor lib?

raven canopy
#

yeah, 2-4 have been hammered into my brain. both speaking and writing. but, implementation... ๐Ÿ˜„

errant grail
#

#1 was always the most important for me, but certainly your mileage may vary.

raven canopy
#

py.test will run through all directories and execute any test_*.py.

idle owl
#

ah. ok

#

Worst case, wait until Scott's back. He should be out for the night though.

raven canopy
#

yeah. i'm giving py.test a run. Travis suggested it...and he's always right. right?

#

he was right this time...

$ py.test

===================== test session starts ======================
platform linux -- Python 3.6.3, pytest-3.3.0, py-1.5.2, pluggy-0.6.0
rootdir: /home/travis/build/sommersoft/Adafruit_CircuitPython_Motor, inifile:
collected 6 items                                                              
tests/test_stepper.py ......                                             [100%]

================= 6 passed in 0.09 seconds =================

The command "py.test" exited with 0.
idle owl
#

nice

raven canopy
#

this was my stopping point for tonight anyway. :phew:

#

alright. zone-out time... talk to ya'lls later. have a great night!

idle owl
#

later! Have a good one!

drowsy geyser
#

sigh My Feather M0 Express running CP 3.0 Alpha 2 doesn't work well as a robot controller. As soon as I try to add two digital I/O variables it runs out of memory. Oh well, I should eat and watch the SpaceX launch. And I have a headache. Time to knock off for the evening.

idle owl
#

Have a good evening ๐Ÿ˜ƒ

#

Odd that 3.0 is running out of memory moreso than 2.x?

drowsy geyser
#

Thanks, @idle owl ! Just let me know when you need more guides checked out.

#

I never tried this robot with 2.x....

idle owl
#

Ah ok

#

Do you have a saleae?

drowsy geyser
#

I don't.

idle owl
#

Ok, oscilloscope?

drowsy geyser
#

I think I need the Feather M4 Express. ๐Ÿ˜ƒ

#

Yes, I have a scope.

idle owl
#

Otherwise there's nothing to check for AnalogOut is why I ask.

#

We're not changing that one up any. Honestly I'm not sure there's anything worth checking anyway, except to go over it once I get it done and make sure I did up the fritzing diagrams right

#

๐Ÿ˜ƒ

drowsy geyser
#

Ahhhh, that's true.

idle owl
#

Well you go eat and have a nice SpaceX evening

#

I'm headed out here as well

drowsy geyser
#

Have a good one!

heady dove
#

where can I find more info on the CPX touch & touch threshhold and their range of values?

ruby lake
#

would be nice if the mu help button did something useful ๐Ÿ˜‰

timber mango
tidal kiln
#
humble mural
#

@idle owl I'm refering to a post from yesterday. You mentioned a talk at a convention in May. Will that be on video and posted in Youtube?

idle owl
#

@humble mural Unsure. It's a workshop, and it's not a professional tech conference, so there's not video of every talk. Depends on whether I can find someone to video it, and whether it's even worth videoing since it'll be all about the participation of the attendees. There's also consent issues for anyone involved. So there are many variables.

humble mural
#

@slender iron Thanks I am going to wathc that shortly. I have to find and print some printer supports. I was tightening the belts and the arcrylic supports blew up. Once I set the printer I can watch in peace. My students are eager to start making the bluetooth controlled daf Punk helmet. @idle owl Bummer, my ears perked when you mentioned a newbie crowed (not your term, but what I understood). Thanks to both of you.

slender iron
#

@idle owl has one talk already that was recorded

idle owl
#

They've already watched that one, I believe ๐Ÿ˜ƒ

slender iron
#

ah ok

humble mural
#

@slender iron When I first discovered CircuitPython and MicroPython I went on a mad search for all things CP and MP. I devoured every video I could taking notes, ordering stuff from Adafruit and replicating what I was seeing. I saw @idle owl give a talk. that is not the funny part. It took me about a 2-3 weeks to figure out that the Kattni from the video was the Kattnie whose guide I was reading and chatting with in discord.

slender iron
#

๐Ÿ˜„

slender iron
#

@idle owl I'm updating the circuitpython drivers page

idle owl
#

Excellent, I was wondering about that a few days ago

#

Forgot to make a note of it to ask

slender iron
#

its a library day for me so its a good task to knock out

idle owl
#

Nice

slender iron
#

I've updated adabot to check it for me too

idle owl
#

That's great!

#

adabot is the best

slender iron
#

๐Ÿ˜ƒ

tulip sleet
#

@solar whale RESET line on Metro m4 i touchy because there's no cap from RESET to ground. Add 0.1uF cap. New rev boards will have it. You could tack solder a cap from RST to GND on the back or stick one in the headers since the RESET pin has its own header connector.

idle owl
#

@tulip sleet Welcome back!

tulip sleet
#

@idle owl @slender iron at SRQ airport; plane is 2.5 hours late. Catching up. We did not wait here the whole time! Left where we were staying later.

idle owl
#

@tulip sleet Ah, that's good at least!

slender iron
#

no worries @tulip sleet

solar whale
#

@tulip sleet thanks! It would be nice to have my old chair back ๐Ÿ˜‰

tulip sleet
timber mango
#

I used to telephone my maid (lived in a dorm) and ask her to go into my room, turn off the UPS, count to ten, and turn it back on -- to reset my BBS when I was traveling.

solar whale
#

better get home before tomorrow - you'ls have some shoveling to do!

tulip sleet
#

@solar whale I-95 was possibly the rain/snow line at least as of noon, so we'll have to wait and see.

timber mango
#

11" snow in NW Connecticut predicted.

idle owl
#

Oi

solar whale
#

we seem to be in the crosshairs

idle owl
#

@drowsy geyser Do you have a potentiometer?

drowsy geyser
#

@idle owl Uh, yes! Somewhere in that box of components.... ๐Ÿ˜ƒ

idle owl
#

@drowsy geyser keen, that's what we're doing up for AnalogIn, so I'll have you test my diagrams ๐Ÿ˜„

drowsy geyser
#

Sounds good! I can certainly help with that.

raven canopy
#

@humble mural daft punk helmet? sweet! i like your students even more now...

feral sage
#

I'm getting a trinket m0. I want to use it with a linear softpot and interpret swipes and taps then send messages over uart to a pi. this will be my first circuit python experience, any tips?

humble mural
#

@raven canopy No to brag but my classes have always been popular (I attribute the content) we always have to turn students away. Since I have incorporated IoT and the use of Adafruit boards and guides, interest has exploded. The recruitment season is over (8th graders selecting a hig school, I work at an all magnet school) but I can't wait to see those children's faces when they visit us next year.

slender iron
#

@feral sage we don't have a driver for it specifically but it shouldn't be hard

feral sage
#

The softpot?

slender iron
#

ya

feral sage
#

I'm going to use analog in and read the data until it stops and then see what the values are and which direction they go in

#

Not sure about the taps

slender iron
#

that should work!

raven canopy
#

@slender iron ever seen this helpful sphinx error:

Warning, treated as error:
failed to reach any of the inventories with the following issues:


The command "cd docs && sphinx-build -E -W -b html . _build/html" exited with 2.
slender iron
#

yup, I moved a redirect

raven canopy
#

hehe. that would probably do it..

slender iron
#

which docs are you building?

raven canopy
#

onewire

slender iron
#

and it refers to bus device?

raven canopy
#

yep

slender iron
#

let me see if I can redirect it

raven canopy
#

that was the line above the "warning, ..."

slender iron
#

yup yup

#

I renamed it busdevice from bus_device

#

does it give the full url?

raven canopy
#

https://circuitpython.readthedocs.io/projects/bus_device/en/latest/objects.inv

#

do i need to update the intersphinx mapping?

slender iron
#

if you are changing things

#

I added a redirect to rtd too

#

so it works ok now

#

just warns that it was moved

raven canopy
#

ok. is adabot fixing all the rest?

slender iron
#

shouldn't need to

#

we can do as we remember

raven canopy
#

ok. i only have like 5 left to do, so i'll get those and the straglers that are pending changes. is it just changing bus_device to busdevice?

slender iron
#

yeah

#

its not urgent since the redirect works ok

raven canopy
#

๐Ÿ‘

slender iron
#

I'm updating the driver page in the docs to point to the awesome updated docs!

raven canopy
#

i was going to ask how that page was built...it was a little behind. ๐Ÿ˜„

#

and i'll test the new intersphinx both ways real quick.

slender iron
#

yeah, its not built. thats why its behind

#

I have a check to add to adabot

raven canopy
#
intersphinx inventory has moved: https://circuitpython.readthedocs.io/projects/bus_device/en/latest/objects.inv -> https://circuitpython.readthedocs.io/projects/busdevice/en/latest/objects.inv
``` ๐Ÿ‘
#

updated conf.py works with busdevice as well.

slender iron
#

excellent! sorry for the hiccup

raven canopy
#

no worries

raven canopy
ebon horizon
#

@raven canopy Thanks ๐Ÿ˜ƒ Iโ€™m a big CP fan now.

slender iron
#

haha, nick blogged it too ๐Ÿ˜ƒ

slender iron
#

two easy PRs if anyone wants to take a look

idle owl
#

On it.

#

@slender iron How much does it care about whitespace after .. toctree:: ?

slender iron
#

gotta have the blank line after it

idle owl
#

Ok. change request inbound once I get through the rest of it.

slender iron
#

kk

#

thanks for taking a look!

idle owl
#

For sure ๐Ÿ˜ƒ

idle owl
#

@slender iron Do you want me to do inline on the other one as well? It looks like the same issues are present in both.

slender iron
#

nah, it'll pick it up automatically

idle owl
#

Ok.

slender iron
#

they are merges from the same branch

idle owl
#

Ah ok. Makes sense.

slender iron
#

ugh read the docs bug

idle owl
#

bleh.

raven canopy
#

swoops in someone say docs? ๐Ÿ˜œ

idle owl
#

Now I'm picturing The Doc, Superhero at Large.

raven canopy
#

lol

#

and that made an image of Blankman flash in my brain.

raven canopy
#

so, SimpleIO's module filename is (simply?) simpleio. should i rename to adafruit_simpleio?

slender iron
#

nah, I think its too late for a rename @raven canopy

raven canopy
#

k. that's what kept me from doing it without asking...

idle owl
#

I was wondering the same thing a while back. There's only a couple like that. Fair enough though. Makes sense.

raven canopy
#

๐ŸŽ‰

idle owl
#

@slender iron Nice! Waiting on travis.

slender iron
#

thanks!

manic glacierBOT
slender iron
#

w00t! Thanks @idle owl !

idle owl
#

๐Ÿ‘

raven canopy
#

@idle owl merge conflict...conquered!! only took one test branch. ๐Ÿ˜„

#

but...upon closer inspection, it tripled the commits. ๐Ÿ˜•

idle owl
#

@raven canopy no worries! Should be fine

raven canopy
#

+51 for the commit count.. hehe

manic glacierBOT
manic glacierBOT
manic glacierBOT
#
[adafruit/circuitpython] New tag created: 2\.2\.4
humble mural
#

Hello everyone, I am getting ready order the items needed to build the 16x128 matrix. The list of materials includes a RPi3, I would like to do the project (and all projects) in CP. Can someone provide me a โ€œBOMโ€ of CP boards for this project with the addition of Bluetooth. As always thanks in advance.

stuck elbow
#

@humble mural for what project exactly?

#

starting with, a matrix of what? microphones? hal effect sensors? leds? servos?

pastel panther
#

@stuck elbow leds/neopixels

slender iron
pastel panther
#

@humble mural I don't recall what you settled on with regards to neopixels vs leds and shift registers; did you have a tutorial you were working from ?

stuck elbow
#

you can also chain led matrix driver chips

#

but you would still need quite a number of them

#

power is going to be a problem too

drowsy geyser
#

@slender iron I have a 680 but it's at home and I'm at work. I'll try to replicate this evening.

slender iron
#

ok thanks @drowsy geyser

manic glacierBOT
timber mango
#

I won't know the extent of use of the BJT's** until I get a bit further along in this project.


** transistors. NPN generally used to complete a ground; PNP to source +3.3 VDC.

#

The shift registers may be enough to source 3.3V to the LEDs (which are configured as common-cathode -- many segments sharing a ground).

#

Since these shift registers have an output enable pin (/OE) they can be modulated with pulse width modulation (PWM) to keep the supply current down to (hopefully) about 100 mA or less, with all segments lit. ;) Not sure how/if I will use that; I'm used to turning on segments individually (pulsing via a simple loop in the code turning them on and off sequentially).

humble mural
#

We want to to the whole thing in CP. I have tons of RPi3โ€™s that we got from Adafruit, plus I have lots of power supplies and wires. I need to know what boards would work best

#

Thanks

stuck elbow
#

@humble mural I see. I think we don't have the driver for that display. I have it, and I wanted to write a driver, but upon reading the datasheet realized that it's much more complex than anticipated.

humble mural
#

Well we are married to the display. Is there another one that we do have drivers for?

#

not married

#

Is all caps a no-no????

#

The goal is to make a marquee using CP.

#

Sorry, it is starting to rain, I have to go inside, Iโ€™ll see your comments when I come out.

pastel panther
#

@stuck elbow What stood out as complicated about writing a driver?

stuck elbow
#

@pastel panther it's not i2c or spi, but rather a custom bit-banged protocol, IIRC

#

all the dotstar and neopixel ones will work for sure

#

but they tend to be expensive and power-hungry

humble mural
#

Thank you both.

timber mango
#

The backplane of a large LED matrix tends towards a prohibitive complexity, so whatever the designer of such a matrix has in mind, you must follow.

pastel panther
#

Hey @slender iron , can you help @tulip sleet and I understand a piece of the SPI code? This is from around SPI.c:60, updated by me to compile with a different sercom reference for the dotstar and cleaned up to remove the #if defined code:

if (potential_sercom == NULL ||
 (potential_sercom->SPI.CTRLA.bit.ENABLE != 0 &&  
    potential_sercom != status_apa102.spi_desc.dev.prvt &&
    !apa102_sck_in_use)) {
        continue;
}

My brain is compiling this to:

potential_sercom is enabled &&
potential_sercom *is not* the dotstar sercom &&
the dotstar SCK pin is not being used

The best Dan and I could figure is that itโ€™s mean to skip the sercom that the dotstar would use even if itโ€™s not currently using it. That said the logic has stumped us both

slender iron
#

@pastel panther will look now

pastel panther
#

thanks

tulip sleet
#

@slender iron not sure about the function of the third clause

slender iron
#

most of the time we use ENABLE to check if a sercom is already in use

pastel panther
#

If my assumption of the purpose is correct (hah!) I would expect something like:

if ( potential_sercom == NULL ||
   ( potential_sercom->SPI.CTRLA.bit.ENABLE != 0 || 
   ( potential_sercom == status_apa102.spi_desc.dev.prvt ) && !apa102_sck_in_use
   )) {
    continue;
}
slender iron
#

yeah, I think that works too

#

its a special case for the dotstar where apa102_sck_in_use is used to check if someone has already taken over the sercom to use it

#

actually I don't think that works

#

(your rewrite)

#

because there is a case where enable is 1, the potential sercom is the dotstar and no one has taken it over

#

we shouldn't continue in that case because we can use it

pastel panther
#

I didn't think that case was possible. You're saying it's possible that the sercom could be enabled (is the the same as in use?) and it's the same sercom as the dotstar is using/would use and the dotstar isn't actually using it?

I assumend that a enable=1 sercom was in use and the dotstar would claim it's sercom. Perhaps I was mistaken?

slender iron
#

the sercom for the dotstar is always enabled

#

however, we want user code to be able to take it over temporarily

pastel panther
#

ah

#

makes sense

slender iron
#

thats how you can use the dotstar from user code

pastel panther
#

(I was sleeping in class when that was covered)

slender iron
#

np

#

its good to have my logic sanity checked

idle owl
#

I forgot how to make git clone into a differently named directory. git clone -o kattni git@etc what else do I need?

slender iron
#

filename gets provided after that

pastel panther
#

so in that case !apa102_sck_in_use is epected to be true as long as the dotstar isn't being used? Is it constantly being used then not used? That would explain all the calls tocommon_hal_busio_spi_construct from rgb_led_status.c

idle owl
#

so git clone -o kattni git@github.com:kattni/repo.git directoryname?

slender iron
#

@idle owl yeah iirc

idle owl
#

ok thanks

slender iron
#

@pastel panther apa102_sck_in_use is false unless the user is using it. I believe its tracked in claim_pin

pastel panther
#

aaah, I got that backwards. I assumed it was false unless the CP was using it to indicate status

slender iron
#

nope, I think its the reverse. feel free to rename to something clearer

pastel panther
#

ok, thanks for the help. so just to clarify the idea is skip any enable=1 sercoms unless it's the dotstar sercom and a user isn't using it? Meaning we don't mind re-purposing the dotstar's sercom even if CP is using it to indicate status?

slender iron
#

correct

#

takes control back

pastel panther
#

ok, thanks

slender iron
#

np

#

lunchtime for me. back in an hour or so

pastel panther
#

toodles!

idle owl
#

@tulip sleet or anyone else who has added to the bundle, do I just update the 3 lines in .gitmodules? And the directory in /drivers/ is automatically created?

raven canopy
#

@idle owl you also have to do a git submodule add <url.git> on the bundle, IIRC.

#

the url is to the release tag

#

i think

#

๐Ÿ˜„

idle owl
#

Not as part of the PR though right?.. that doesn't make sense.

raven canopy
#

yes, as part of the PR.

#

if you look at one of the previous PRs, you'll see the two different commits.

idle owl
#

yah that was the confusing part.

raven canopy
#

agreed. i missed the submodule on VEML6070 on my initial PR

pastel panther
#

Can someone @mention me a few times? Discord is bugged on my phone and won't clear the 1 mention indicator I have

raven canopy
#

@pastel panther i like sammie vs lil sebastian

idle owl
#

@pastel panther I've had to reinstall it to get that to go away if I remember correctly.

raven canopy
#

i think i force killed it once b/c of that problem...

pastel panther
#

It's gone! Though it's now showing the new one

raven canopy
#

android or ios?

pastel panther
#

Oh well. I suppose this is better? Android

raven canopy
#

force kill. clear data. and maybe clear cache (will have to re login if this one i believe)

pastel panther
#

Nevermind, I had server mute on apparently

raven canopy
#

hehe

#

@slender iron when doing git submodule add, is the url to the release tag, or just the master.git?

slender iron
#

I copy it from the front github page

raven canopy
#

ok. so just the master... @idle owl ^^^

idle owl
#

@slender iron how do I undo what I've already done, or will doing it again with the http link overwrite it?

slender iron
#

what do you mean?

idle owl
#

it created the directory

#

just change the URL in the .gitmodules file? or rerun the git submodule add

slender iron
#

I think changing .gitmodules will make travis happy

idle owl
#

waiting.

#

passed!

stuck elbow
#

@slender iron how is this possible, that CP works with all those different SPI flash chips without having to define the commands for each model separately?

slender iron
#

@stuck elbow they all mostly follow the same commands

stuck elbow
#

@slender iron seems like the atmel's chips don't โ€” the LUFA demos don't seem to work, anyways

#

I need to debug this properly, and get the commands from the datasheet

slender iron
#

got a datasheet link? I can take a look

stuck elbow
#

I have a couple of things to try, and this is not directly related to CP โ€” I'm trying to get that USB filesystem access for the esp8266

#

but thank you very much!

slender iron
#

oooh usb filesystem for esp866

#

that'd be nice

stuck elbow
#

I'm making some progress, but using atmega32u4, because that has the best documentation that I could find

slender iron
#

ah, I'm samd through and through now

stuck elbow
#

I even got a samd11 dev board for this

#

but couldn't figure it out

#

without any experience with usb, etc.

slender iron
#

what were you trying to figure out? the usb stack?

stuck elbow
#

the MSD example

slender iron
#

ah, yeah

#

from atmel start?

#

I'm not surprised it didn't work

stuck elbow
#

well, I will make a proof of concept with the 32u4, and if that works, I'm sure it can be written for other chips

pastel panther
#

man those "examples" are .....not good

slender iron
#

I wish they'd focus on good examples not templated project generation

stuck elbow
#

well, Enterprise

slender iron
#

check out tinyusb if you haven't

#

I think we're going that direction for usb

pastel panther
#

@stuck elbow how far did you get? If it's anything like my experience you eventually got it to compile and then it did nothing

stuck elbow
#

@pastel panther I switched to 32u4 pretty fast, because it simply has so many examples and so much docs

#

and since I have no idea what I'm doing...

#

I have the usb2serial working with it, and I have the massstorage demo enumerating as a device, I just can't write to it

slender iron
#

@stuck elbow I have done a bunch with it so feel free to ask me to look

#

the beagle usb analyzer is very helpful

#

wireshark can also analyze usb packets

#

if you can capture them in another way

stuck elbow
#

thanks! I will once I have anything worth looking at

#

right now I'm just hacking at the demos

pastel panther
#

@slender iron wireshark! Huh, never would have though of it but it makes sense

stuck elbow
#

wireshark can do a lot of protocols, not just network

#

I have friends who use it with SDR too

pastel panther
#

would one be better served by looking at CP code or the uf2 code to try and understand samd usb stuff?

stuck elbow
#

btw, Michaล‚ Moskal made an UF2 bootloader for the UNO's 16u2 chip

#

a shame he didn't manage to fit a real serial in it, only some weird serial over HID

slender iron
#

@pastel panther I know the CP code better

raven canopy
#

so, best way to update both a local copy and a fork of the lib bundle?

idle owl
#

Is the local copy a clone of the fork?

raven canopy
#

yeppers

idle owl
#

Did you add upstream? git remote add upstream url-to-original-repo-that-you-forked. Type git remote -v to see if you added it.

raven canopy
#

with adafruit set as upstream

idle owl
#

Ok

raven canopy
#

i've done git submodule update --remote..but haven't committed all of the updates...

idle owl
#

be on master branch, then git fetch upstream git merge upstream/master git push your-username-or-origin master

#

Easier to read, sorry.

raven canopy
#

ok. almost went with merge before running submod update. time for a stash

idle owl
#

that should bring you even with adafruit both locally and remotely

#

but I've run into issues when I'm mid commit and had to do craziness to fix it, so...

#

no guarantees ๐Ÿ˜„

raven canopy
#

disclaimers. essential. ๐Ÿ˜„

raven canopy
#

would the craziness have to do with the ds18x20->onewire? (haven't gotten there yet...just pre-planning)

idle owl
#

Oh I meant in general I've run into issues, not with this repo specifically

raven canopy
#

ahh. k

#

well, fork is even. but i've got leftover commits on local...

manic glacierBOT
raven canopy
#

@idle owl hmmm. failed "docs"...but travis won't pull up the log. and i don't see anything that would fail...

idle owl
#

Yah I know I'm trying too and failing...

#

I don't have the brain for this anymore tonight I think. It'll have to wait.

raven canopy
#

ok. i'll try restarting that job...maybe travis had a hiccup.

idle owl
#

Nope.

#

I don't think it was me. But I can't tell. Log seems sparse.

raven canopy
#

log is up. i...i... ๐Ÿคท

#

its failing on busio/i2c.c. because, why not? hehe

idle owl
#

Naturally....

raven canopy
#

that moment when you realize you've been fighting line endings in a local repo, then discover a .gitattributes file exists... ๐Ÿ™ƒ

pastel panther
#

yay?

raven canopy
#

hehe. not really. but, such is life as a Windows user. ๐Ÿ˜„

pastel panther
#

wub wub

raven canopy
#

why couldn't they all just agree back in the day? why is lf vs crlf even a thing?

pastel panther
#

๐Ÿคท

#

one of these days gcc, gdb and I will come to an understanding

raven canopy
#

i believe in you. :catposter:

pastel panther
#

hmm, I don't think this will fit, even in the m4:

 ~/cpf$ du -sh build-samd51_proto/firmware.uf2
688K    build-samd51_proto/firmware.uf2
#

๐Ÿ˜‘

#

on second thought, the optimized version is pretty large too. I forgot I'm not talking about a binary

slender iron
#

@pastel panther uf2 is 2x larger than the flashed size usually

pastel panther
#

ya, the -O1 version seems to have fit

slender iron
#

check the bin size

pastel panther
#

๐Ÿคฆ ๐Ÿคฆ ๐Ÿคฆ

#

read your datasheet closely folks

#

@slender iron it strikes me that gdb and the jlink are very capable tools created by many very smart people and do an excellent job of telling me what dumb mistake I've made

#

one of these days I'll level up my mistakes ๐Ÿค“

slender iron
#

it'd be boring otherwise

pastel panther
#

@slender iron lmk when you have a minute

slender iron
#

yeah, I'm winding down

#

was ready to try and hammer out i2s but had to update python...

#

so fire away!

pastel panther
#

regarding the clauses for reuse of the dotstar :

            (potential_sercom->SPI.CTRLA.bit.ENABLE != 0 &&
             potential_sercom != status_apa102.spi_desc.dev.prvt &&
             !apa102_sck_in_use)) {```
#

shouldn't the last part be an ||?

#

because you still want to continue if the sercom is enable=1 and the sck is in use?

#

gah, now I've confused myself again

slender iron
#

I think its demorgan's law

pastel panther
#

you want to continue if the user is using the sercom or if the sercom isn't the dotstar sercom

#

๐Ÿคค

#

That's my brains leaking

slender iron
#

this is the same right? ENABLE == 1 && !(sercom == dotstar || sck_in_use)

drowsy geyser
#

@pastel panther I usually grab some paper and draw the truth table when I get myself befuddled by some boolean logic. Just a thought....

pastel panther
#

I'm going to shelve wrapping my head around that for now

#

Part two: if we do decide we can re-use the sercom and it's ENABLE =1, don't we need to disable it before we can init it again?

slender iron
#

my brain is done and distracted by synths... ยฏ_(ใƒ„)_/ยฏ

pastel panther
#

now that I re-enabled the code above, it's blowing up here hpl_sercom.c:2611

#

ok

#

np

#

what synths?

#

like musical synths?

#

perhaps it is time for the untz

slender iron
#

yeah....

#

I'm prepping to do the audio stuff and its got me interested

pastel panther
#

playing with soft synths?

drowsy geyser
#

Sidebar: they used Moog synths to get that old-school sound for the Thor: Ragnarok soundtrack....

slender iron
#

nah, oldcrow pointed me to shruthi

pastel panther
#

I'm sure; analog is even more in recently

#

nice

#

apparently there is a version of the core module for the stm32f4 and the SID app needs some porting work

slender iron
#

I'd love to split up the shruthi xt main plate into smaller chunks that I can oshpark

pastel panther
#

that shouldn't be too tricky

slender iron
#

just gotta figure out how to wire across the chunks

pastel panther
#

whenever I look at stuff like that I want to SMD-ize everything but I don't know enough about audio electronics to know which components need to be through hole for audio performance reasons

pastel panther
#

happy dance

solar whale
#

I wonโ€™t be online much today. No power.

drowsy geyser
manic glacierBOT
ruby lake
#

how do I send data to the plotter of the latest mu editor beta?

stuck elbow
#

I think you just print the numbers

raven canopy
#

@solar whale that's not cool. Stay warm!!!

tulip sleet
#

@ruby lake if multiple numbers, you might need to print them as a tuple with parens

#

(1,2,3)

ruby lake
#

right, I have it going, thanks

manic glacierBOT
feral sage
#

I wrote my first circuitpython program, gotta wait till I get my trinket m0 tomorrow to test it, I am very impressed with how easy it is

solar whale
#

Yay! Power is back on ๐Ÿ˜ƒ

timber mango
#

We got about five inches of snow in NW Connecticut. Maybe 7. But nearby (10-15 mi) they got about 24"

solar whale
#

about 12 here and power out for 12 hours but all OK - still snowing but very wet stuff.

#

SE NH

slender iron
#

@pastel panther I want to smd everything too so less material is used and cheaper pcbs. @ruby lake should be able to tell us why through hole is used

ruby lake
#

hm?

slender iron
#

why are DIP and through-hole parts commonly used in audio design?

ruby lake
#

That is a DIY thing

#

still a lot of people scared of surface mount

#

I prefer SMD parts myself

slender iron
#

yeah me too

#

I'd love to shrink the shruthi filter designs

#

make them usb powered would be cool too

ruby lake
#

except for connectors, I still prefer those to be TH for mechanical reasons

slender iron
#

yeah that makes sense

ruby lake
#

I made both TH and SMD layouts for the module playground

slender iron
#

thats eurorack format right?

errant grail
#

It's also a retro-part thing. For some "authentic" distortion voicing, matched germanium transistors are sometimes the only way to go and are tough to find in smd. I have mixed opinions about that. To me it's like trying to duplicate vinyl scratches in other recording media -- I lose interest quickly and move on to newer technology.

slender iron
#

I want something smaller ideally

#

I was thinking about something around the size of trellis and shruthi xt

timber mango
#

I don't have enough dexterity to do a nice job using through-hole. ;)

ruby lake
#

@slender iron well the shruthi xt is bigger ๐Ÿ˜‰

#

I made a euerorack version of the shruthi

slender iron
#

yeah but its about 3 trellises next to one another

#

its could be a standard grid size you could link together like trellis

#

basically a modular digital control panel

manic glacierBOT
ruby lake
#

@slender iron The base board I envision similar to a feather, perhaps with a few more I/Os and onboard linear and i2s dacs. Then that can just be attached to various host/panel boards

slender iron
#

@ruby lake yeah that'd be awesome

ruby lake
#

thats how module playground started, a breakout of feather I/O aimed at modular rack use

#

so, you can make an Ambika (poly shruthi) or a euro module, etc

slender iron
#

I'd like that but smaller

#

smaller/cheaper

ruby lake
#

Well, another option being a smaller host

slender iron
#

yeah, that'd be nice

pastel panther
#

@slender iron do you think the discord could use a audio/synth channel? Maybe AV more generally?

stuck elbow
#

@pastel panther and games

pastel panther
#

@idle owl building master for the cpx gets me

Traceback (most recent call last):
  File "../../tools/preprocess_frozen_modules.py", line 6, in <module>
    import semver
ModuleNotFoundError: No module named 'semver'

Updating submodules didn't help; do I need to install https://pypi.python.org/pypi/semver?

slender iron
#

@pastel panther you need semver installed as a python module

pastel panther
#

@solar whale and anyone else interested, here is a zip of uf2s for various boards with some changes I made to get the status dotstar working on the trinket and other boards; SPI and the dotstars should be the only bits affected but who knows what else I may have borked.

solar whale
#

@pastel panther Will give it at try.

pastel panther
#

danke schoen

solar whale
#

cool! works on trinket!

#

I still can't get itsybitsy to show up - can you?

#

@slender iron @pastel panther did you ever get itsybitys and 3.0 to work?

pastel panther
#

I think the last time I tested it it was still having issues; let me check again

solar whale
#

OK - just trued your UF2 and got nothing - ```[13699.104393] FAT-fs (sdc): unable to read boot sector to mark fs as dirty

pastel panther
#

Yea, it's not showing up for me after uploading

#

is master the same?

solar whale
#

well - glad it's not just me ๐Ÿ˜‰ Nice work on trinket!

pastel panther
#

<- answers his own question

idle owl
#

Always a bonus when that happens

pastel panther
#

I'm still working on avoiding asking questions I can answer myself

#

๐Ÿคค

#

survey says master is also avec issues

idle owl
#

con issues

#

mit issues

pastel panther
#

๐Ÿ˜›

solar whale
#

issues know no languages

pastel panther
#

I don't like that emoji. I would prefer the tongue were in the corner of the mouth

#

๐Ÿคท

drowsy geyser
#

<insert Python language definition for issues>

pastel panther
#

from master import brokenness

idle owl
#

Baroque. When you are out of Monet.

pastel panther
#

lol

solar whale
#

I'm still amazed that a cell-phone can transmit in so many languages ๐Ÿ˜‰

pastel panther
#

an 'oldie' but a goodie

#

@solar whale can you/did you test SPI works as expected?

#

(that is non-dotstar SPI)

solar whale
#

on trinket - no - but I'll set up a test.

pastel panther
#

Thanks, no rush; I'll verify as well after work

solar whale
#

are you specifcally interested in trinket or would M0 express tell you as well?

#

feather m0 express

pastel panther
#

testing both wouldn't be bad but the trinket specifically since it has the dotstar enabled using a sercom

solar whale
#

ok - just take a few minutes to set it up

solar whale
#

hmm - having issue with both SPI and I2C so may be setup -- still working it

#

ok - found config erro for I2c - now back to SPI ...

#

@pastel panther yes - both SPI and I2C work on Trinket - at least for my test driver for STPME610 touch screen - its just what I had easily available

pastel panther
#

perfect, thanks

solar whale
#

BTW they dont work if you hook up the wires wrong! Can you fix that ๐Ÿ˜‰

pastel panther
#

I kinda did on my m4 board, and the same is likely true of the metro m4 and some of the m0 boards. Certain pin pairs can work both ways for i2c SDA and SCK because there are two sercoms with the pads swapped

#

once I have this checked in and I look at QSPI on my board again I'll get back to work on my project that should help with choosing pins

solar whale
#

looks good to me. Thanks for the preview.

manic glacierBOT
solar whale
#

gotta run - have a good evening

idle owl
#

later @solar whale!

pastel panther
#

bye @solar whale

#

thanks for the help

manic glacierBOT
manic glacierBOT
#

Content is written and code is uploaded and embedded. Verified that you want hw diagrams of the piezo example. Diagrams created - need to make images big enough for 4x3 cropping and then do up the side2 elements.

Started on cap touch. A0 works on five out of six boards, but it's disabled on CPX. I plan to do up the code to use A0 since it works on the rest of the boards, and include a warning that it doesn't work on the CPX. I'll do up one of the boards attached to a banana. Then at the bo...

manic glacierBOT
raven canopy
#

may the odds be ever in your favor (The Travis Games ยฉ 2018)

pastel panther
#

lol

idle owl
#

Oh bugger, it's late. Oops.

raven canopy
#

oops? hehe. happens to me every night.

#

"i'm going to bed early tonight". 2 hours later.... ๐Ÿฆ‰

idle owl
#

Meh yeah.

#

Need to head out now that I realised it though. At least my wiring diagrams are done.

#

And I have a picture of a Gemma attached to a banana

#

so

raven canopy
#

woohoo! night. "nanners" is a nickname of mine from a former boss. eat one every day...

idle owl
#

Thanks for fighting with travis. Hopefully we can get it sorted tomorrow.

#

nanners... I love it

#

night!

raven canopy
#

@pastel panther kattni and I are both getting the same Travis failure. something be borked...

pastel panther
#

hmm

raven canopy
#

the line it's complaining about: blank (if i'm counting sphinx lines correctly)

pastel panther
#

I'm seeing it complaing about not being able to find console.out

raven canopy
#

oh, did feather52 fail too?

#

i got that one as well.

#

oh. the grep line.

pastel panther
#

I don't think it has anything to do with my changes, does it?

raven canopy
#

expand the Building docs section. and no, it doesn't.

#

that i can tell.