Author Topic: Trigger iO reverse engineering  (Read 7504 times)

Trigger iO reverse engineering
« on: February 04, 2010, 06:23:55 PM »
Some background: I am an EE by training and am currently helping a friend with his first AtoE conversion. We'd really like to use the Alesis Trigger iO as our TMI unit, but it has a few confusing limitations we'd like to overcome (as everyone here is probably aware).

After reading through this forum and others across the net I gather that Alesis is not really interested in releasing firmware updates for this product. Rather than have it fade into obscurity, I think it would be interesting to tear it apart and understand just what it is/isn't capable of.

More importantly, I want to see if there's a way for the user community to do what Alesis doesn't seem to want to do.

Some goals:
------------
  • Document the hardware 'under the hood' (chips and connections)
  • Understand if the limitations are due to hardware or software
  • If the software sucks, explore the possibility of customizing it(DIY)

How can you help?
------------------
  • We don't have a unit yet, so if you have one to donate to the cause send me a PM. It doesn't have to work. (If it doesn't work, I might even send it back to you working... On the other hand, if it does work I cannot guarantee it will stay working. ;D )
  • If you don't trust some random guy on the net (who does?), pictures of the guts of your Trigger iO would be the next best thing. Post 'em here. A careful, photo-documented disassembly of the unit is what I'm after, with part numbers for all the major components and detailed pictures of all the PCBs/modules.

If I'm totally off base here and people are willing to let it slip gently into the sweet night, that's fine too.


Re: Trigger iO reverse engineering
« Reply #1 on: February 04, 2010, 07:19:55 PM »
 The device is really not much to take apart about 7 screws. Inside there is only one mainboard and another one on the faceplate connected by a ribbon cable for the buttons.

My lighting was terrrble when I tried to get you some pictures but this one was the best I could get in this light, a bit blurry but you can make out the numbers if you zoom in.

If This sample picture looks promising I can try to get you some better ones when I have some sun light tomorrow. I know your looking for better photo documentation of taking it apart and whatnot but the pictures i took just look like crap.

Download the picture and open it with a program that will display the full resolution. If you would like me to try for better pictures I can, this is just a sample from tonight that didn't come out very well. ------BZ



EDIT:
The picture didn't seem to load properly.

I went and checked another picture that was hosted on the same domain and it's broken now too. I will have to go find another host. I was using "Ripway" but it seems to be broken. You can message me on this board if your intrested in some pictures and i can hook you up through a chatter or my NAS I have here at home.



« Last Edit: February 15, 2010, 06:36:52 PM by BobZilla »

Re: Trigger iO reverse engineering
« Reply #2 on: February 04, 2010, 09:27:46 PM »
Sweet, thanks. I sent you a PM with my e-mail address, but I'm not sure it worked (it doesn't appear in my Sent messages for some reason).

I downloaded the image you posted but the clarity isn't where I need it. The white numbers that are visible are the PCB 'silk screen', which is just a key for showing where to place components. They're good for an overview but I need more detail on all the chips.

All the ICs should have a manufacturer logo and a part number (ICs are labeled with "U**" on the silk screen, e.g. "U9"). If you can get a good shot of those then I think we're in business.

I'll also need to see the back side of the PCB (especially if there are any components on it).

Thanks again!


Re: Trigger iO reverse engineering
« Reply #3 on: February 05, 2010, 12:33:17 AM »
For free image hosting you can use http://imgur.com 


Re: Trigger iO reverse engineering
« Reply #4 on: February 07, 2010, 05:11:26 PM »
Some encouraging news - thanks to BobZilla's excellent PCB photography skills I have determined that the Trigger iO is probably hackable.  ;D

The unit is based on a Silicon Labs C8051F345 microcontroller.

Features relevant to Trigger iO:

Analog Peripherals
  • 10-Bit ADC
    • Up to 200 ksps
    • Built-in analog multiplexer with single-ended and
      differential mode
    • VREF from external pin, internal reference, or VDD
    • Built-in temperature sensor
    • External conversion start input option
  • Two comparators
  • Internal voltage reference
  • Brown-out detector and POR Circuitry

USB Function Controller
  • USB specification 2.0 compliant
  • Full speed (12 Mbps) or low speed (1.5 Mbps) operation
  • Integrated clock recovery; no external crystal required for full speed or low speed
  • Supports eight flexible endpoints
  • 1 kB USB buffer memory
  • Integrated transceiver; no external resistors required

On-Chip Debug
  • On-chip debug circuitry facilitates full speed, non-intrusive
    in-system debug (No emulator required)
  • Provides breakpoints, single stepping,
    inspect/modify memory and registers
  • Superior performance to emulation systems using ICE-chips, target pods, and sockets

Voltage Supply Input: 2.7 to 5.25 V
  • Voltages from 3.6 to 5.25 V supported using On-Chip
    Voltage Regulator

HIgh Speed 8051 μC Core[/li]
  • Pipelined instruction architecture; executes 70% of Instructions in 1 or 2 system clocks
  • 25 MIPS
  • Expanded interrupt handler

Memory
  • 2304 Bytes RAM
  • 32 kB Flash; In-system programmable in 512-byte sectors

Digital Peripherals
  • 40 Port I/O; All 5 V tolerant with high sink current
  • Two enhanced UART serial ports
  • Four general purpose 16-bit counter/timers
  • 16-bit programmable counter array (PCA) with five capture/
    compare modules
  • External Memory Interface (EMIF)

Clock Sources
  • Internal Oscillator: ±0.25% accuracy with clock recovery enabled. Supports all USB and UART modes
  • External Oscillator: Crystal, RC, C, or clock (1 or 2 Pin modes)
  • Low Frequency (80 kHz) Internal Oscillator
  • Can switch between clock sources on-the-fly

Packages
  • 48-pin TQFP

Temperature Range: –40 to +85 °C


Alesis appears to have chosen the internal (12MHz) oscillator scheme. What's really interesting is that the PCB layout includes space for external oscillator components. This means with a relatively simple board/software mod we could "overclock" the CPU - effectively doubling its performance (at 25MHz) and potentially enabling new features.

Bottom line so far - I'm 99% sure that we will be able to run custom software on this unit. The software might have to be developed from scratch, but I haven't found any hardware design issues that would prevent someone from tinkering with it.

My next goal is to review the input side of the board in detail to see how each of the input channels are processed before being sampled by the CPU. Stay tuned...

Online Hellfire

Re: Trigger iO reverse engineering
« Reply #5 on: February 07, 2010, 05:35:22 PM »
The device is really not much to take apart about 7 screws. Inside there is only one mainboard and another one on the faceplate connected by a ribbon cable for the buttons.

My lighting was terrrble when I tried to get you some pictures but this one was the best I could get in this light, a bit blurry but you can make out the numbers if you zoom in.

If This sample picture looks promising I can try to get you some better ones when I have some sun light tomorrow. I know your looking for better photo documentation of taking it apart and whatnot but the pictures i took just look like crap.

Download the picture and open it with a program that will display the full resolution. If you would like me to try for better pictures I can, this is just a sample from tonight that didn't come out very well. ------BZ



EDIT:
The picture didn't seem to load properly.

I went and checked another picture that was hosted on the same domain and it's broken now too. I will have to go find another host. I was using "Ripway" but it seems to be broken. You can message me on this board if your intrested in some pictures and i can hook you up through a chatter or my NAS I have here at home.
Is there any reason why you just can't upload the pictures here? Just a thought.

BTW, great topic!

Offline audiopat

Re: Trigger iO reverse engineering
« Reply #6 on: February 07, 2010, 05:58:44 PM »
Hi Chiizu, I have not posted here for a while, but you really got my attention!   
Unfortunately I have no electronic or software skills, but I'm very interested in your project. I don't know if it helps, but there are some sysex files that Alesis released for preset updates available on their site. Maybe have a look at those as a starting point for your software?
I would like to help if I can. Good luck!
Pat

Re: Trigger iO reverse engineering
« Reply #7 on: February 07, 2010, 06:12:22 PM »
I don't know if BobZilla tried uploading as forum attachments or not. He made arrangements for me to get the pictures directly from him and it was pretty painless.

The key was getting them in full resolution - all of the free image hosting sites I know of have file size limits and/or do resizing which would have blown away the detail I wanted.

If you guys are really interested I can post some of the marked up images I'm using to document the design.

Pat - glad to hear you're interested! I did look briefly at those sysex files and I think they might just be data updates (as opposed to software updates). I'll look at all the software stuff further once I prove that the hardware signal path isn't what's limiting the current design.
« Last Edit: February 07, 2010, 06:17:34 PM by chiizu »

Re: Trigger iO reverse engineering
« Reply #8 on: February 07, 2010, 06:15:39 PM »
That's great new Chiizu! Wow you work fast my friend.

Hellfire I'm not sure how I would post them from here I have always used 3rd party hosting for forum stuff. The way I got the pictures to chiizu was to give him access to my NAS that I have hosted at home. It was a rather large transfer (65MB zipped, 41 Hi-res images) not a problem at all to transfer that to him but that would get taxing to pull up for every person who clicks on the thread no matter who is hosting it.

Re: Trigger iO reverse engineering
« Reply #9 on: February 15, 2010, 01:44:14 PM »
Slow but steady progress - I have most of the pin connections on the microcontroller documented.

I'm finishing up a list of connections that I can't determine from pictures (traces are hidden beneath IC packages). Is anyone here comfortable with using a multimeter to do a few connectivity checks for me?

I'll try and post some more this weekend.

Alesis

  • Guest
Re: Trigger iO reverse engineering
« Reply #10 on: February 15, 2010, 02:24:54 PM »
Tell me what you guys are trying to accomplish. I can't promise anything, but I am very interested in hearing what the community feels are shortcomings in the Trigger|iO.

Thanks,
Dan

Re: Trigger iO reverse engineering
« Reply #11 on: February 15, 2010, 03:01:59 PM »
Dan - thanks for chiming in. I think the nitpicks are best covered in this thread (http://www.dmdrummer.com/index.php?topic=39.0).

I think a lot of us are interested in a "Trigger to MIDI-only" product that has a reasonable number of inputs and can enable the same features as "high end" triggering systems (custom x-talk settings, positional sensing, multi-zone)... all for a "Trigger-to-MIDI-only" price. The very existence of the plethora of DIY edrum projects on the net is (I think) proof of the viability of this market segment.

We think that the Trigger|iO comes tantalizingly close to this goal already. I know it's a lot to ask of a company to support everything its customers want, so I wanted to explore the possibility of providing a custom 3rd-party firmware for users who have accepted the risks. I think it's a win-win - Alesis gets revenue from the Trigger|iO hardware and doesn't have to spend R&D or support dollars making their power users happy.

Let me know if Alesis would like to offer any help - schematics (the kind that I don't have to draw myself) would be real nice.  ;D

Alesis

  • Guest
Re: Trigger iO reverse engineering
« Reply #12 on: February 15, 2010, 03:06:25 PM »
chiizu,

Thanks, I will review the linked thread. I think a lot of what's you're collectively asking for is not unreasonable for us to consider. Roland owns a patent on their flavor of positional pickup, which may make it difficult for us to include that component of the wish list. That said, please do keep me posted about what you learn. There's no reason I can't take a "crowd-sourced" concept to the guy who pays the bills if there's a strong business case behind it.

Best,
Dan

Offline ghostman

Re: Trigger iO reverse engineering
« Reply #13 on: February 15, 2010, 04:33:36 PM »
Shortcomings:
Input 4 - why is this non-configurable?  it MUST be Piezo/Switch.

really... that's it.  but it irks me to no end!
Alesis DM10 & Trigger IO, 5 8" single input DIY shells; 2 18" DIY Bass drums, 1 13" DIY eSnare, PinTech 14" Visulaite Hi-Hats, 2 PinTech 14" choke-able crashes & 18" dual-zone ride; Steven Slate Drums EX.  Mounted on Superstrut custom rack.

Re: Trigger iO reverse engineering
« Reply #14 on: February 15, 2010, 07:05:38 PM »
Chiizu I can possibly run the traces for you. You will have to walk me through what you would need done. I do have a basic multi-meter but I have mainly only used it for checking voltage on things and continuity on fuses. Maybe it won't be necessary if Dan can hook you up with schematics.

PM me if you want me to give it a try for you and we can go from there. ------BZ

Re: Trigger iO reverse engineering
« Reply #15 on: February 20, 2010, 12:30:34 AM »
Alesis, I wish the Hihat pedal chick note didn't happen in the middle of the stroke, input 4 was PP And two more inputs would be nice.  Other than that I'm pretty happy with it.  I'm planning on adding the Alt Mode DITI when it comes out to take care of this.  I would have rather paid $150 more for the IO to get everything in one box.
« Last Edit: February 20, 2010, 02:47:02 PM by Marc Bergmueller »

Re: Trigger iO reverse engineering
« Reply #16 on: March 01, 2010, 06:55:25 PM »
Reverse Engineering is my middle name :P (not really)

I would love to help in any way i can, not much of a circuit guy but i can write about any programming language you can think of. I will do what i can to help this project out, let me know any area i can assist.

- Luke

Re: Trigger iO reverse engineering
« Reply #17 on: March 02, 2010, 12:44:28 PM »
Reverse Engineering is my middle name :P (not really)

I would love to help in any way i can, not much of a circuit guy but i can write about any programming language you can think of. I will do what i can to help this project out, let me know any area i can assist.

- Luke

Luke, do you live in the UK?

Sorry OP, back on topic...

Re: Trigger iO reverse engineering
« Reply #18 on: March 02, 2010, 05:59:25 PM »
No sir, Born and Bred in Iowa. Although i know a few people that live in Canada lol.

Sorry to disappoint ;D

Re: Trigger iO reverse engineering
« Reply #19 on: March 02, 2010, 09:52:55 PM »
Luke - thanks for the offer! If you're interested in doing some of the embedded software then you'll probably want to get the Silicon Labs dev kit.

Funny that you're from Iowa - I was up around Sioux Center this weekend and I just got back home to Texas tonight.

Anyway, general project status update: I'm still waiting on a response from Alesis (in an attempt to use more "official" channels to reach our goals). I'll give them a little while longer before we dive back in.

Re: Trigger iO reverse engineering
« Reply #20 on: March 03, 2010, 06:04:30 PM »
getting the kit tonight after i build a PC for a friend. I'll be ready when you are :) Oh, my sister and brother-in law live in Friendswood texas.

Re: Trigger iO reverse engineering
« Reply #21 on: March 17, 2010, 02:37:00 PM »
chiizu,

Thanks, I will review the linked thread. I think a lot of what's you're collectively asking for is not unreasonable for us to consider. Roland owns a patent on their flavor of positional pickup, which may make it difficult for us to include that component of the wish list. That said, please do keep me posted about what you learn. There's no reason I can't take a "crowd-sourced" concept to the guy who pays the bills if there's a strong business case behind it.

Best,
Dan


Un-Freakin'-Real!!!   :o I can't believe this response from Alesis!

Ok...so I'm a little late coming into this but I happened to stumble upon it while being bored at work.

In my experience in the proprietary software/hardware field, I'm shocked that you guy's haven't been slapped with a Cease and Desist letter! Some might say "homebrew" or hacks are bad...I disagree.

Just one more reason why I continue to buy Alesis products. My next purchase upon returning to home will be the DM 10 Studio or DM 10 Pro!
It's easier to ask for forgiveness than to ask for permission!

Re: Trigger iO reverse engineering
« Reply #22 on: March 17, 2010, 02:58:26 PM »
Yep, I've been pleased with Alesis' openness so far. I'm still waiting on a formal response regarding the level of support they want to commit to. It has been almost a month since my inquiry and if I don't hear back soon then we may just proceed alone.

Regarding "Cease and Desist" - this would be silly and groundless since everything we want to do is covered under fair use protection. If Alesis doesn't agree to help, the custom firmware will be non-commercial, open source, and developed from scratch to avoid any copyright issues with Alesis.

In other news, I have a Trigger iO unit in my hands now so I won't need any more assistance with picture taking and board probing. Thanks again to BobZilla for his help with that before!

Offline rockdude

Re: Trigger iO reverse engineering
« Reply #23 on: April 06, 2010, 05:17:13 PM »
This is a very interesting thread! I haven't posted here in a long while due to my disappointment of Alesis not being interested in doing any firmware updates or improving the Alesis Trigger IO. The thread you (chiizu) linked to earlier was started by me and clearly illustrated several "issues". It's funny that they said they would read the thread now, since they've already answered me in the particular thread. They're just not interested in doing anything further for the Alesis Trigger IO and that's it.
I would say go for it without Alesis involvement. You would just end up sitting and waiting in eternity otherwise.

I would be glad to assist you in your attempts to dig into this units brain and remove it's flaws  :)  It's seems we've got a talented crew volunteering already.

Re: Trigger iO reverse engineering
« Reply #24 on: April 06, 2010, 05:35:58 PM »
Don't worry, I haven't forgotten about the project. In fact, my buddy and I finished construction of our first mesh head pad over the weekend (along with a hotwire to make foam cones!).

I still haven't heard back from Alesis, so I'm probably going to just write them off.

Unfortunately, my house is on the market at the moment, so I'm a bit strapped for time. As my buying/selling plans settle down I will be able to devote more time to the Trigger iO. Stay tuned...