Well since parts are impossible to get, i moved on. Got a quote
from one of the robber barons for an LED controller with an MRSP at
Digikey of $1.65 in qty 1. They wanted $55 each for an MOQ of 25.
Below is the result. I started this on Tuesday and just sent it to
FAB. Not sure I can get everything for it right now, but it will be
good enough for demo purposes. There was no way I was going to
build any of my new Brick Controller. So I switched to an LED
controller. This is a subset of what the Brick Controller was, just
no motor control. This made power much easier since I did not need
to make 9VDC. The LEDs are powered from VUSB, ie directly from the
USB bus. The PCB is 48x64mm and is designed to fit exactly on a 6x8
LEGO plate.
The differences from complete design freedom are:
1. Had to put in a new BT module(RN4870 vs RN4020), the one I have been using is not
available for years if ever. MIcrochip does not appear to be
upgrading it for BT 5.x spec from 4.2. The BT SIG has deprecated
4.2 already and wont certify any 4.2 after 1/1/2023, according to
the Microchip website when you look at the RN4020 module. The RN4870 module is BT 5.1 but the smaller version cant be found, so I am
using the larger version. I have about 15 of these I bought months
ago as a hedge. They claim firmware compatibility, we shall see.
2. The processor is a PIC32MX270F256 and of the same family as the new Brick
Controller (PIC32MX470F512) and I am hoping the firmware changes will be minimal.
There seems to be lots of these floating around. Hopefully tomorrow
they will still be there.
3. If you look carefully you will see a small square IC (U1). That
is the LED controller(LP55231). This a previous version, but is firmware
compatible with the one I used on the new Brick Controller (LP5569). I
bought 20 of these months ago from one of the robber barons. For
whatever reason they were only 3x in cost. The biggest issue for me
is that the LP55231 is a source to the LEDs while the LP5569 is a sink. While this might not seem like a big deal, it
actually has large implications in the wiring of a MOC. At
least I try to minimize the number of wires running through a MOC. Using 36-42 gauge wire, you want to minimize the number of
wires that can break. So in my case, I minimize the number of
source wires since this is the common wire. All my previous
designs used an N-FET to sink drive the LEDs, that way I can
parallel up multiple LEDs and not worry too much about the current
load. So I added N-FETs to the output of this older controller to make LED connections sink driven. I
give up the current control the LP55231 provides, but I use PWM to
control intensity anyway. With the VUSB supplying the drive
voltage, a 120 to 150 ohm resistor provides the necessary current to
brightly light the LED. When the the new LED controller becomes
available, those N-FETs and one resistor per channel will go away.
4. I added 5 more LED channels using the 5 PWM controllers in the
PIC32. These would normally control the motors, but they work
nicely with LEDs also. So this gives me 15 LED channels, which
sounds like a lot, but I can get very carried away with lighting
effects.
5. I added 4 inputs, 3 digital and one analog. Though the analog
can be make into a digital. The 3 pin connector has 3.3VDC, ground
and input to either a Schmidt Trigger or a unity gain OP-AMP. This
shroud provide all the input I can use.
The PCBs should arrive in about 7 days ( if Shenzhen doesnt
shutdown). That will give me two weeks to build, debug, test and
then implement in one of my LEGO displays. This should be fun.
More on the reason for the fast approaching deadline in a few days.