I’m trying to use the Artemis Nano as the brains of a functional Pip Boy conversion, and I am running into some mental roadblocks here. You can read all about the project in my [Hackaday IO Project Page. I am rather scared of breaking off soldered cables when I am manhandling the PipBoy, so I was looking for a Qwiic solution. However, most of the things I want to connect are just simple two wire buttons or LEDs.
The Fritzing diagram below shows the rough components of what I currently need to wire together:
The OLEDs have the same I2C address, so ideally I would hook them up on separate I2C ports/pins so I don’t have to put a Mux inbetween. Would that work? If yes, how would I address them?
Question 2:
The Rad Module has 3 2-wire buttons, a 3-pin rotary encoder, a VU meter that handles 3.3V and a LED inside that VU module that also takes 3.3V. Ideally I would have as few wires going from the Rad Module to the Artemis Nano. How could I go about that?
Question 3:
Ideally I would make the connections between modules, well… modular. I don’t think you can easily drive those buttons and switches on a Qwiic connection, right? Space is an issue, and bascially any connector I add reduces that space.
The nano exposes at least two IOM modules (which handle I2C/ SPI) - one through the Qwiic connector and another on pins 6 / 7. IN the current core version you can declare a new TwoWire object on those pins like this:
TwoWire ExtraWire(3);
Where 3 indicates which IOM module is used - the number 3 is the one that controls pins 6,7,8 (Apollo3 pads 43, 42, and 38).
Soon we are releasing a new core (v2.0.0) that will:
a) provide Wire1 on the Nano (connected to those pins)
b) change the way you declare additional TwoWire objects (you will then use a constructor with the pin names that you want to use)
Q2
You could probably use an I2C GPIO expander like either of these:
Otherwise you only need one wire from each button (the other is common an you use internal or external pull resistors for each button) - one more wire for the LED (the other side could be common with the button common) two more for the rotary encoder (I think… b/c one is GND) and it looks like just one more for the VU meter (but I don’t know what that is exactly so I can;t be sure - what kind of communication does the VU meter use?) I think that is 8 wires including a common GND to all devices. Besides the VU meter (which I am not sure about) these can all be any GPIO
Q3
If I were doing this project I would find some good connectors to use in between the modules and the Nano. I would then solder one side to the Nano and the other to your module. You can find pretty small ones - perhaps a 2*5 1.27mm pitch cable with a breakout to PTH holes for easier soldering?
The labels on this one are for SWD debug cables, but you can use them however you like (you get 10 wires in a convenient cable!)