EXT Cartridge Module

Good to hear that you found a way to get the screen working back, even if you are somewhat back to step 1.

I’ve managed to lose my printer paper tray so removed it ready for this to go in if the project gets finished. Godspeed OP

Hey @fip how’s it going?

It just occurred to me that A06 has a microcontroller embedded right inside the cpu (Technically there are two, but one is used for “trusted firmware”, and the other can be programmed by user).

It’s a cortex M0, shares IO resources with rk3399, and can communicate with the main cpu via shared memory/mailboxes.

In theory we could achieve a good lot of peripheral controls with this controller.

how’s it going?

Still waiting for my Teensy4.1, I might be tempted to buy one off eBay instead.
Getting one right now sucks in general, but the switch to it is necessary.

Currently I’m cleaning up the firmware, the 3rd revision of the board is done but before ordering the PCB I’d like to test again on a breadboard fist.


The current state of the kernel module is in this git.

It just occurred to me that A06 has a microcontroller embedded right inside the cpu
In theory we could achieve a good lot of peripheral controls with this controller.

Sounds doable, but not by me, programming this MCU on the RK3399 is out of my skill level.
Plus I can’t get any info about it on the internet when I google for it.

2 Likes

It’s so cool, I hope uconsel can be adapted later

@fip here’s my design:

See comments in “Cartridge” block for design rationales.

3 Likes

I like the design, puts mine to shame really.
Now I really regret putting a microcontroller into it, it makes the design more complex and less robust I believe.

The support for all boards via the DIP switches is really good.
I do not necessarily like the I2C port expander, but that’s only me since if you’re not concerned with bandwidth it’s perfectly reasonable, which you should anyway if you’re using Linux GPIO to drive them.

Still kind of married to my design for myself only, but this could be sunk cost fallacy and I’m considering stopping now.
I believe this design is a real win for everyone as it is cheaper, more reliable, with thought put into it and it’s easy to assemble too.

2 Likes

The first iteration has errors all over the place:

  • USB3.D- ESD diode isn’t connected
  • The pwm fan controller SDA/SCL wired to SCL/SDA
  • The pwm fan output is shorted to GND
  • Wrong USB-A port
  • I2C chips are 5V, A06 won’t boot if I wire them up.
    • Bought TXS0102 2-bit level shifter, VSSOP-8, and tried to flywire on the 0.5mm pins and failed :joy:
    • Luckily, the functionalities can be verified by an arduino. Tested working.
  • I2C bus should not be disconnected when no cart is installed
  • UART should not be disconnected when no cart is installed
  • Wrong footprint for DIP switch
  • All components are crammed to the same side of the board while there is actually space on the back (by far the worst design decision)

I fixed these issues and submitted another run, but then discovered that

  • Cartridge port doesn’t fit with back case, need to indent 13.2mm

I guess it’s really different from writing code :stuck_out_tongue: