This is something @jesse can answer best, but I’ll add my understanding:
One of the goals of the Model01’s firmware was to be as newcomer friendly as possible, and Arduino shares the same goal. QMK and TMK are… not easy to tweak as someone new to these things. (I’m deliberately not counting web-based configurators, because the goal was to make it easy to get started with the code, too.)
I’m counting on it being no worse than shifting from Mac OS at home to a Windows environment at work and mentally having to remember where all the short cut keys have moved to.
I have a second m01 in order for work. For now I leave my m01 at work and bring it home when I know I’ll be doing a lot of typing. For short term use at home I use a custom built keyboard which is a mix between the Atreus and ergodox. Have setup the layout to be very similar to my m01.
This is the design I’ve been using prior to the m01 but I may work on something homemade that is more similar to the m01. More thumb keys and maybe even a palm. Remove some keys from the bottom row as they aren’t very ergonomic and even though I thought I’d hate layers I like them now.
Did you build that yourself, or is it a kit? I’m asking because I’m also planning a homemade portable. Having poked around the innards of both the M01 and the Atreus, I’m thinking I’ll probably take a ‘hand-wired Atreus’ approach, but use a modified version of the M01 layout. Still debating whether to do a split or a one-piece.
I did design the keyboard myself using OpenSCAD. I then lazer cut the layers and hand wired it using a teensy and some I/o expander board. The software was the hardest because I used a teensy 3 instead of the teensy 2. The 3 requires using the teensiduino which has terrible I/o expander support. Right before I got the m01 I was able to port the keyboard to the qnk firmware but it took me a week of headaches and debugging. Because all other keyboards tend to either use two teensy 3s or a teensy 2 and the I/o extension and the real-time os has some limited support for the teensy 3 processor.
Wow, that looks great! I like that there are fewer thumb keys than the Atreus, but they’re in a more accessible arrangement. I’m still struggling to make efficient use of the Model 01 thumb keys - I may end up ‘deprogramming’ one to cut down on mis-presses.
You don’t find the split keyboard a hassle when you’re traveling? It’s really convenient to have the one-piece Atreus, I can use it on my lap quite easily. Just wish I’d gotten a 62 key model, rather than the 42.
Maybe the IO expander is needed to manage the ‘other’ half of the split keyboard? Just guessing, but I’m pretty sure the Atreus doesn’t use one, just a microcontroller.
The IO expander allows you to connect the halves of the keyboard with only four wires. Mine (and as far as I know the ergodox) use a trrs cable (four wires) that communicate with the other half using i2c which is some communication protocol I don’t know much about.
You need some sort of controller on the other half to detect which keys are pressed. I think You can look up “keyboard matrix” on google and learn how that works. It’s a semi-complex logic of setting pins to ground and using pull-up resistors to detect current flow.
So I have a separate build that’s one piece which I use for travel. And only a crappy photo of that one. Same layout minus two keys to make the rotation nice.
And like the Atreus this doesn’t need the IO expander.