Axoloti w/Teensy


#45

Work in progress
Teensy3.2 is powered by axoloti.
For the moment 4 multiplexers with 16 channels (64 analog) + 2 analog, 8 digital inputs and LCD (other 7 digital inputs)


#46

I got this problem: i have axoloti with 12 pots and oled connected to it. It also has teensy 3.6 with 12 pots connected to it. I have wired the teensy to get power from the axo 5v. Everything seems to power up but the pots are not working. When I unplug the teensy then the pots wired to axo work with smaller range than normally. So I assume that they don't get enough power. All the pots get power from axo. I use the micro USB for axolotis power. Any ideas?


#47

If you can make a picture of the connections I can do some checking


#48

I guess it wasn't a power problem afterall, It seems that I got about 3/12 of the pots interfering with each other. I wonder how to fix that.

Edit:

I found out that pots are not actually interfering, just two pots or axo pins are not working correctly. Need to dig in deeper. So far 10/12 axo pots working. Still got to get the 12 teensy pots to work.


#49

I’m using 10k pots, all connected to GND and 3,3V rails. I’m using multimeter to meter pots: black meter wire on side pin of the pot and red meter wire on the middle pin of the pot. Most of the pots give metering of approximately 490 ohm when pot is turned to full. Zero when turned off. Few pots give metering of about 600 ohm. Few gives metering of 23kohm when turned to full on. What the heck is going on?


#50

you should get readings from 0 to 10k on each pot. so either your wiring or your pots are somehow bogus


#51

I get 0- 10k when the pots are unwired. When they are wired I get 0-490ohm when pot is turned full on. When its turned to the middle I get about 3k reading. I don't get it


#52

ah yes i get it. if you deconnect from the axo gnd and 3.3v supply you will get the "correct" readings


#53

this is normal, they are resistors in parallel.
1 / Req = 1 / R1 + 1 / R2 + 1 / R3 + etc.
for 24 pot of 10kohm Req = 416 ohm
you have to measure the voltage if it varies from 0 to 3.3v


#54

Hey thanks alot for both of you! I think I'm getting forward with this info.


#55

I currently can't get the Axoloti to receive midi messages from the Teensy 4.1. Neither through the midi pins behind the input, nor through USB. The Axoloti does recognize the Teensy as a midi device via USB. The message from the Axoloti when plugging the Teensy in is displayed below.

Using Midi Monitor 2 for Mac displays all of the messages coming from the Teensy as working just fine. It's 12 pots and an Adafruit Trellis, pots set to controller numbers 22-33, Trellis programmed for note numbers 64-79.

If this significant, when I run the Teensy through Ableton, it receives the "note on" messages from the Trellis which can be used as intended, but treats the pots as note on messages as well, although not showing any notes on the scale. it doesn't recognize cc from the Teensy. The Axoloti does not receive any messages at all.

The script that I used is a modified version of the Mini Untztruent, just given more pots and appropriate midi CC. This was a shortcut since I'm not very skilled at coding. However, I figure that since the Midi Monitor is showing the appropriate messages, that may not be the issue.

Here is the message from the Axoloti when plugging the Teensy in via USB:

USB Device Attached
PID: 485h
VID: 16C0h
Address (#1) assigned.
cfg desc: num interfaces 2
interface: interface 0, num 0, numep 2, class 1 , sub class 3
endpoint: interface 0, ep num 0, addr 3
endpoint: interface 0, ep num 1, addr 83
interface: interface 1, num 1, numep 2, class 3 , sub class 0
endpoint: interface 1, ep num 0, addr 82
endpoint: interface 1, ep num 1, addr 2
Manufacturer : Teensyduino
Product : Teensy MIDI
Serial Number : 7912500
Enumeration done.
This device has only 1 configuration.
Default configuration set.
Switching to Interface (#0)
Class : 1h
SubClass : 3h
Protocol : 0h
USB Host Output size requests : 40
USB Host Input size requests : 40
USB Host Output connected to 0 : 3
USB Host Input connected to 0 : 83
MID class started.


#56

I just tried a much simpler test.

I created a Teensy 4 program that constantly sends random note on and off messages at 250ms intervals.

When connected to Pd on my Mac, messages are received as expected.

When using Pd to pass incoming messages from Teensy to Axoloti on USB, Axoloti plays notes correctly.

When Teensy is plugged in Axoloti HOST port, axoloti console shows Teensy is connected. BUT NO notes play.

This is similar to your observation. I’ll try to figure it out.


#57

the reason is probably that the teensy usb enumeration has serial listed before midi, and hence axoloti only sees the serial data. (i vaguely remember an issue with another device that had multiple usb device types when plugged in and messed axoloti up) what is the usb-type (in teensyduino) set to?

the logs seem to indicate that the teensy only has one configuration though...hmm.


#58

The firmware source I have looks like it should find the correct interface, but I’m not very familiar with USB coding, or Axoloti firmware, and I don’t know if that is the firmware on my Axoloti.

My Teensy 4 also didn’t work with Akso.


#59

It's currently configured for MIDI only, though there's an option for Serial+MIDI which I could try.

If I understand correctly (which I likely do not), the Teensy has a built in usbMIDI library which makes transferring those messages fairly easy. Apparently I'd have to program it for MIDI and usbMIDI if I wanted it to be recognized via DIN and USB, as the Teensy MIDI page states "This is completely separate from, and can be used together with USB MIDI." The code I'm using is only set to usbMIDI, so maybe that's the first part of my problem.

Wondering how the other people in this thread managed to succeed, and whether they were using MIDI DIN or usbMIDI.

@tele_player could you share the random note interval code so that I can give it a shot? My coding experience literally began about 2 weeks ago with this project so I'm fumbling around in the dark a lot.


#60

I think the earlier posts were using DIN MIDI, which uses the serial port, and will work with all settings for "USB Type"

DIN MIDI and USB MIDI are completely separate things.

/* transmit random  note on and off on USB MIDI
 *  works when using Pd passthrough to Axoloti
 *  DOESN'T work when plugged into Axoloti USB Host. Why NOT?
*/
// the MIDI channel number to send messages
const int channel = 1;
// sets the rate at which notes are sent
#define NOTES_PER_SECOND 4
int waitms = 1000 / (NOTES_PER_SECOND*2);
void setup() {
  // nothing to set up
}
void loop() {
  int note = 56 + (random() % 12);
  usbMIDI.sendNoteOn(note, 99, channel);
  delay(waitms);
  usbMIDI.sendNoteOn(note, 0, channel);
  delay(waitms);
}

#61

When you say PD Passthrough, are you referring to connecting to the pins behind the Axoloti MIDI in? The code you made is being received by Midi Monitor via USB, but I'm getting 0 signal when plugging into the pins behind the MIDI in. I'm going off of the instructions:

Teensy TX8 (pin 35) > Axoloti Din pin 5
Teensy 3.3v > 220 Ohm Resistor > Axoloti Din pin 4
Teensy Gnd > Axoloti Din pin 2

For the record, the teensy is receiving power via USB because I haven't set up the Axo pins to power the Teensy direcly yet, not sure if that makes a difference.


#62

No, that snip of code is only for sending MIDI out the Teensy USB port.

By pass through, I mean connecting both Axoloti and Teensy to my Mac using USB, and using PureData to pass MIDI received from Teensy (via USB) to Axoloti (via USB).

If I read correctly, you are unable to send MIDI from Teensy to Axoloti using either USB or DIN. These are likely unrelated.

I’m pretty sure your wiring is incorrect, or the resistor value is wrong for 3.3v.


#63

I’m pretty sure your wiring is incorrect, or the resistor value is wrong for 3.3v.

You were right in more ways than one. After some digging it seems like I would be fairly content using the Axoloti RX pin (I'm only transmitting MIDI to the Axoloti) and programming the code using the fortyseveneffects MIDI library. The only MIDI messages I've gotten the Axo to receive are from this code:

I'm trying to put a pot in this code but it's not showing up in the Axoloti, but that's probably because I've written the program wrong. I'm really that new to programming :sweat_smile:

Finding a way to make the Axo read usbMIDI would be a huge boon as well, so that project continues. I mean, is Teensy the only MIDI-compliant device that puts serial before MIDI messages over USB? What's the difference between a manufactured USB controller (like my Launchkey) that works immediately when plugged in vs. the Teensy? Also, is this a problem for Arduino UNO users?


#64

You should try to be very precise when asking questions on a forum, and make a new thread for each question.

You have questions about USB, DIN MIDI, pots. All separate topics.

Note also: there have been no bug fixes to Axoloti for years. It is a virtually abandoned product.