(assuming the same finish for both faces)

I was trying to measure and the STEMMA socket is not equally distant from each edge of the board.

I think it means I have to flip some parts of the design in illustrator.

I’ll probably spend a little more time to get my head around this and post if I come to a better conclusion :slight_smile:

Thanks!

Oh yeah - maybe it’s not that simple.

If you have illustrator I could probably send you a work file with the board component positions.

2 Likes

Yes, I have illustrator so that would be super awesome !

Finally i can play cheat codes properly!
This duo is magic :wink:

7 Likes

NeoMonome all working happy with Norns and on OS X… but nothing showing up (on Max) in Windows 10 with latest serialosc :frowning:

“a solution i (sortof) like is a 2hp module that is a usb host and communicates to tt/etc via ii. this way you could just stack up more modules.”

I just created a little box, connected via TxB II-bus expander, to use my DIY Grid with the Teletype at the same time. It is actually quite simple, and works with the stock Grid as well:

2 Likes

has anyone else experienced inadvertent key activation with their NeoTrellis?

after seeing this thread i got excited about the prospect of using the NeoTrellis for a mini-grid or at least an interesting midi controller. i got one a couple months ago but i finally hooked everything up last night. after putting on some basic code (no monome-code or norns attachment yet) i found that i’m getting a weird problem: pressing a single key will randomly activate a bunch of other keys in the same “row”.

here’s a video of what i mean:

and here’s the code that i’m running for that video:

import time
from board import SCL, SDA
import busio
from adafruit_neotrellis.neotrellis import NeoTrellis

# create the i2c object for the trellis
i2c_bus = busio.I2C(SCL, SDA)
# create the trellis
trellis = NeoTrellis(i2c_bus)
# color definitions
ORANGE = (30, 20, 0)
WHITE = (5, 5, 6)

# this will be called when button events are received
def trigger(event):
    if event.edge == NeoTrellis.EDGE_RISING:
        trellis.pixels[event.number] = ORANGE
    elif event.edge == NeoTrellis.EDGE_FALLING:
        trellis.pixels[event.number] = WHITE

# startup
for i in range(16):
    trellis.activate_key(i, NeoTrellis.EDGE_RISING)
    trellis.activate_key(i, NeoTrellis.EDGE_FALLING)
    trellis.callbacks[i] = trigger
    trellis.pixels[i] = WHITE
    time.sleep(.02)

while True:
    # call the sync function call any triggered callbacks
    trellis.sync()
    # the trellis can only be read every 17 milliseconds or so
    time.sleep(.02)

i thought maybe the lid was too tight, but i get the same problem when i take off the enclosure. any advice would be greatly appreciated.

I think it was mentioned in some other discussion here - having the silicone buttons protrude a lot makes it easy to press the buttons in slight angle, which causes (I assume!) the whole 4x4 pad to move (or stretch?) a bit and cause mistriggers like that. In any case, you’re not the only one with that problem.

The solution seems to use a thicker / multi-layer front panel (like in Okyeron’s case design) and everything sandwiched tight, so that when you press the button, the 4x4 silicone pad assembly doesn’t move, and the button you press gets pressed straight down with minimum lateral wobble.

1 Like

I had a similar problem with my diy grid. I carefully isolated the problem and came to the conclusion @kbra mentioned. Since the button contacts are relatively close to the surface of the pcbs, force on a single button with a faceplate on top can be distributed across the entire silicon piece causing unwanted triggers. my solution was more clearance between the base of the buttons and the panel, but different configurations would definitely require different solutions.

1 Like

thanks so much for your input @kbra and @atlas. i’m glad i’m not the only one with this issue.

actually the issue is a little weirder than i thought. you can see in that video that a whole row of lights are activated when pressing a single key. if it was just the elastomer not sitting right i thought it might activate them more randomly than that.

…so i did a little test and lifted the elastomer pads off half of the lights. when pressing a key with the pad (on the other half) sometimes it will still activate an entire row, even though there is no pad. here’s a photo where you can see the corner led is lit up, as if activated, even though no pad is touching it (and i’m pressing only a single other key).

i’m not really familiar with how these particular boards work and would be interested if you have any other thoughts on this behavior - maybe its a board issue?

it could be a board issue.

you could try testing each pad on the pcb with a piece of wire - try to bridge each specific pad and see if you get the same behavior.

Could also check the backside for a missing diode or perhaps one that’s not soldered properly.

Adafruit’s pretty good about replacing funky boards if it is in fact funky

2 Likes

I’ve had some downtime for the holidays and I am super grateful for it but it’s back to the grind come Monday. Figured it’d be the last time for a bit where I had a moment and I wanted to share my failure and success so for with my build. I bought an FTDI adapter cable, cracked it open, and fished out the board inside. Butchered the board into place, attached it to the breakout, teensy connected in there, wedged it all together, and it worked. I have to reset norns after plugging it in or boot with it plugged into norns but it does work. Tried with my diy teletype and I don’t think the teensy/neotrellis is booting up fast enough to do things correctly. I did get it to jive with teletype but that was powering the grid separately from teletype. I suppose I should also throw out that it wasn’t jiving with teletype after I had recompiled the tt firmware to work at the higher baud rate. I have not tried my build running the code @ 57whateverbaud, maybe I’ll give it a whirl when I disassemble again but I’ve got my doubts plus it is running fine for the time being. I think I’ll undo the FTDI board down the line, maybe leave two wires dangling out for an FTDI board, but it was a fun experiment either way.

**Note: Pictures are just here to show off failure, wouldn’t recommend replicating.

2 Likes

Hi all.

Im using Raspberrypi zero and cant make the interrupt work in python.
In the sample code of Adafruit is not present the interrupt (it is in the Arduino sample code)
Can someone show me what code are you using for interrupt?
Thanks

FWIW - For the adruino code with Teensy I’m not using interrupts at all.

Hey - I read most of this thread (yuge!) and didn’t see this. the JST PH cable listed in the BOM from Adafruit is out of stock, but I’m pretty sure this will also do the trick. Can someone confirm?

I don’t think that’s going to work since the connector is female as well. Need some sort of male connector. Pretty sure I ordered that part hoping it’d work but was disappointed when it arrived because it didn’t. Thought I was going to be clever but I wasn’t.

1 Like

As noted, you need a female connector not male

Adafruit links to digikey - or just search digikey or mouser for the adafruit part number:
https://www.digikey.com/en/products/detail/adafruit-industries-llc/3568/7672337?s=N4IgjCBcoLQBxVAYygMwIYBsDOBTANCAPZQDa4ArAEwIC6AvvYVWSAMwUBsd9QA

2 Likes

I’ve had a great deal of issues wiring up my DIY Grid, after some initial success wiring the boards together. I’m about at the point where I’d be happy to pass the components on to another, more practiced solderer, for a good price. If anyone is interested, let me know. I have the case and flexible PCB carrier from @okyeron, just need to replace the teensy that I busted.

EDIT: This offer has been claimed!

hi folks!
my neotrellis grid work perfectly. today i wanted to change the led colors so i plugged into arduino and tried to reflash it with the working paletted code version, but seems that arduino can’t talk to my teensy for whatever reason.
update: seems that you have to play the reset button while doing the update. weird

Hey everyone, wondering how people are currently using their DIY grid devices on Linux. Installed from the ubuntu PPA from the docs, no dice. Then tried from master… still no luck.
Running serialosc-device /dev/ttyACM0 directly does find the grid though. Did some digging and it looks like it’s in issue with this function: serialosc/libudev.c at master · monome/serialosc · GitHub

Looks like the DIY grid does not pass this check, which is required for serialosc to attempt a connection. I removed the checks, recompiled and got it working but there’s probably a reason that check exists. :stuck_out_tongue:

Anyone with more knowledge care to chime in?

Note that this does allow the diy grid to be found by serialosc, but there are still issues with connecting/disconnecting while the daemon is running (looks like the diy grid takes just a bit longer to fully initialize and the connection attempts expire before the grid is available)