8-Ch P-Mos Breakout

While prototyping our projects, we Makers often need to interface devices with a higher current draw, like motors, or RGB lights, to our microcontrollers. These typically are unsuitable for connecting directly to an Arduino, ESP32 or Raspberry Pi’s GPIO pins. This is usually the time when we start grabbing transistors or MOSFETs.

While I normally keep a few leaded transistors and MOSFETs in the lab, These are not always convenient to use, as they may be in big packages or have the wrong specifications for the task that we are trying to perform.

SMD versions are more common in my lab, but they come with the problem of being small, and also completely unfriendly to the breadboard environment.


I have thus been playing with an idea to make a series of dedicated breakout boards for just this purpose. Having an easy way to test a specific MOSFET for a design, and having more than one of them handy, without all the wiring issues, and using the bare minimum of those DuPont wires!

I came up with the following prototype, which, while not completely optimised yet, already makes things easier. The breakout board provides 8 P-Channel Mosfets, with a single source connection, and individually broken-out Drain and Gate pins.

LED indicators on each channel provide a visual indication of the status of each P-Mos device, and the breakout can also be mounted directly into an enclosure if needed.

What is on the PCB?

Each channel comprises a P-Channel Mosfet, in this case, a SI2301, which has a suitably low gate voltage, a pullup resistor on the gate, to keep it from floating, a status-indicating LED and a current-limiting resistor for the LED.

No gate resistor was added, as this would change depending on the actual MOSFET, as well as the microcontroller that you use. The Gate pullup resistor can also be left unpopulated, in case you need to do something specific there.

Two rows of 10-way, 2.54 header pins are at the top and bottom of the PCB, to make using the breakout on a breadboard possible.

The Pinouts are as follows

H2 – Top V+ D1 D2 D3 D4 D5 D6 D7 D8 GND
with Dx corresponding to the Drain pin of each MOSFET. All the Source pins are internally connected together, as I assumed that I will use the same source voltage on each channel anyway.

H1 – Bottom V+ G1 G2 G3 G4 G5 G6 G7 G8 GND
with Gx corresponding to the gate pin of each MOSFET.

V+ and GND for each header is internally connected, to make it possible to supply V+ and Gnd on any of the two headers.

PCB Top Layer

The Schematic

Schematic

Using the Breakout

Using the breakout is straightforward. Connect a source voltage to either of the V+ pins and Ground to either of the GND pins. ( the ground is used internally for the status LEDs)

Connect your load, with the positive to a drain pin, let us say D1, and the load ground to your breadboard, or power supply ground. Connect the corresponding gate pin, in our case G1, to the microcontroller pin of your choice, through a suitable gate resistor, and pull it high at setup, to ensure that the MOSFET stays off. Pull low to activate as needed.

Please note that you should not try to switch excessively large currents through a single MOSFET Channel, as the PCB traces can realistically only handle approximately 300 to 400mA per channel.

Note 2: If you are driving an inductive load, it is considered good practice to add a flywheel diode on the load as well. This will protect the MOSFET from back EMF when the MOSFET is switched off.

PCB Back

Manufacturing

The PCB for this project has been manufactured at PCBWay.
Please consider supporting them if you would like your own copy of this PCB, or if you have any PCB of your own that you need to have manufactured.

PCBWay

Example code for using the breakout (Arduino)

// Declare Gate driving GPIO pins
int gate1 = 10; 
int gate2 = 11;


void setup() {
// Set the GPIO pins as outputs and drive them HIGH
// This keeps the channels switched "OFF"
  digitalWrite(gate1,HIGH);
  digitalWrite(gate2,HIGH);
  pinMode(gate1,OUTPUT);
  pinMode(gate2,OUTPUT);

// Writing to the GPIO's before setting their pin Mode,ensures that the
// GPIO's are in fact initiated in a know correct state.

  Serial.begin(115200);

}

void loop() {
// In the loop, we just toggle the GPIOs, thus
// alternatively switching the channels on or off
  digitalWrite(gate1,!digitalRead(gate1));
  digitalWrite(gate2,!digitalRead(gate1));
  delay(1000);
  }

Dual 555 Latching Switch Module

In a recent post, I looked at a single-channel version of this module. While it may be a repetitive post, I will continue, as it shows how easy it is to double up on this circuit to provide more than one latching switch on a single circuit board. The current drawn by this module is so little, even when energised, that it compares favourably with even a microprocessor-controlled solution.

The real advantage will obviously be the cost, as the hand full of discrete components needed for this is way cheaper than a microprocessor alone, and the fact that it doesn’t need any coding makes for an attractive solution.

It is however worth noting that the circuit is quite sensitive to external interference, sometimes resulting in unwanted operation. This does not concern me too much, as 1) This is still a prototype and 2) While it does work as intended, and surely is quite useful, I do not intend using it to switch any high current load, or control any expensive or important equipment.

Since the previous post looked at the base circuit in detail already, I think it will be a good idea to talk a bit about electrical isolation, tracking and keeping the AC and DC sides of a circuit separated completely

In the picture above, we can clearly see that the DC side (near my hand, at the top is contained completely on the right side (top in this case) of the PCB. The hashed copper pour also stops clear of the two relays. There are only four tracks
going to the relay coils, and they are all on the same layer of the PCB.

Also note the square cut-out slot around the common terminal of each of the relays. This provides additional isolation to the relay, as well as the DC side of the circuit, as air is a very good insulator ( at least for 220v at no more than 10A — or so I was taught …) These cutouts will prevent any mains voltage of tracking, think burning towards, towards any other tracks in this area.

The entire left-side top layer ( underneath the relays) are also completely free of copper, to make tracking even more difficult.

If we now look at the bottom layer of this same PCB, we will see that the DC side and its ground-plane are once again completely separated from the relay contact terminals. Also note that the tracks connecting the screw-type connector and the relay terminals are very thick (100mil), straight and as short as possible. All copper around these tracks has also been etched away, further reducing the chances of tracking.

In a production PCB, Warning labels would also be present in the bottom silkscreen of the PCB in this area, warning the user of the possibility of mains voltage in this area. As this is a prototype, and to make the above-mentioned points easier to see, I have not added these labelling on these boards.

Important Disclaimer:
Electricity is NEVER “SAFE”. There are only safe practices and procedures. It is always the responsibility of the user to ensure their own safety. While the design shown above is considered “SAFE” by myself, I only consider it “SAFE” because I am aware of the risks involved in using such a circuit to switch mains voltage, at a certain current, and under a specific use scenario. DO NOT BE FOOLED into simply replicating this circuit, or parts of it, and believing it is “SAFE”. Every use case of a circuit is different, and the devices connected and controlled by it will always differ. Make sure that you ACTUALLY know what you are doing BEFORE using any High voltage/Current and switching it with any electronic device.

Manufacturing

The PCB for this project has been manufactured at PCBWay.
Please consider supporting them if you would like your own copy of this PCB, or if you have any PCB of your own that you need to have manufactured.

PCBWay

Some More Pictures

AI-WB2 and XIAO RP2040 Combo

`Ai-Thinker (#notsponsored) should be quite well known to many makers as a company that manufactured and designs many of the modules that we use in our projects. We, MakerIoT2020, definitely make use of quite a few of their products, like the RA-02, as well as their ESP32-S module.



A few months ago, I got the opportunity to play with one of their newest projects, the AI-WB2, which is based on the BL602 Risc-V Chip. After a very very bumpy ride, mainly due to the chip being quite new, and documentation being virtually nonexistent in the English language, I decided to take a step back, and stop trying to reinvent the wheel 🙂 Afterall, I don’t want to use Apache NuttX or a similar RTOS for every project, as the thought of having to write almost all of the different required components from scratch, does not really appeal to me. especially as the SDK is in Chinese, and the English version of it is a bit patchy, to say the least…

This made me quite a bit frustrated, at least until I decided to change my thinking, and take a look at the stock AT command set that comes shipped on the modules from the factory… While excellent for use as a WiFi modem, it did not seem to allow any access to any of the GPIO on the WB-AI2 module… But wait… is that really a problem? No… Let me tell you why…

I also have a few XIAO Modules ( the RP2040 and SAMD21 ) lying around, and those do not have any connectivity options onboard…

A few very quick tests later, It was clear that the AI-WB2 will be a very compact
WiFi as well as BTLE connectivity solution for these XIAO modules, and, If I design with the future in mind, the GPIO pins of the AI-WB2 module can also become useable to me as well… once the firmware and SDK gets more accessible..

What followed from this is a very basic prototype PCB, with the XIAO RP2040 as the main processor, and the AI-WB2-12F as a “connectivity co-processor”, meaning that all communications functions will be offloaded to the AI-WB2 and the results of those, sent back to the XIAO for processing…

This in itself presents quite a few challenges, especially on the communications handling, and using the second UART port, which is currently not possible with the official Arduino Core for the RP2040… Luckily, the XIAO RP2040 uses an alternative core, that supports the second UART port quite well …

What is on the PCB?

AI-WB2-12F XIAO Combo

The Top Section of the PCB is dedicated to the AI-WB2-12F and its supporting components, including a flash and reset button. The GPIO for the WB2-12F is broken out onto H1.

At the right, below H1, is a series of jumpers, connecting the Xiao RP2040 and WB2-12-F Uart ports, or, alternatively, connecting the XIAO Rp2040 to the pin headers at the side of the PCB.

The rest of the PCB is dedicated to the Xiao RP2040 or Xiao SAMD21 module, with its supporting circuitry, and a dedicated Reset button for the SAMD21 module ( also works for the RP2040)

The board is powered with 5v DC through a dedicated header at the left bottom. This directly powers the Xiao and indirectly powers the WB2-12-F through a 3.3v LDO Regulator. Please note that although the Xiao is powered via 5v, the GPIO pins are all 3.3v logic!

The Schematic and PCB

Schematic

PCB Layout

Software

MQTT Connection on the AI-WB2-12F

AI-Thinker Example

The full AT command set example is available here

For the Xiao RP2040, like I used, it is possible to use the second UART to connect to the AI-WB2 chip.

As I am still not completely done with my development, I will not release the full code at this moment.

I have also been informed by AI-Thinker that a new version of the AT-command firmware is available that will allow using the GPIO on the AI-WB2 via AT Commands. I am currently investigating that new version, and that is also a big reason for not releasing any code at this stage.

Manufacturing

The PCB for this project has been manufactured at PCBWay.
Please consider supporting them if you would like your own copy of this PCB, or if you have any PCB of your own that you need to have manufactured.

PCBWay

More Pictures

Useful ESP12E-DEV Prototype Shield

ESP-12E Prototype Shield

In answer to quite a few requests for a prototype shield, similar to my ESP32-S Dev Prototype shield, but for use with the ESP-12E DEV board, I have decided to do a quick design, and make it available publicly

This is the MakerIOT2020 ESP12E-DEV Prototype Shield. It is similar in purpose to the above-mentioned ESP32-S Dev Prototype shield, but I have also added some additional cosmetic changes to make it a little easier to use as well.

With many of my prototype designs, I tend to sometimes leave out something, as I usually use it for my own purposes only, but with this design, as many people specifically asked for it, I took a bit more care, as it is no longer just a prototype, right?

What has changed?

The most obvious is the increased prototyping area. The initial ESP32-S version had a 60-hole breadboard-style prototyping area. The new design has 128 prototype holes.

There is also a dedicated power input header, something that I somehow left out on the ESP32-S version… The Flash and Reset push-buttons were also moved inline, and to the bottom of the shield, making it more comfortable to use.

The design retains the plated through-hole design on the prototype area with connecting tracks on both sides of the PCB to allow for a bit more current.

The big ground plane on both sides of the PCB has also been retained.

PCB Design and Schematic

Top Layer Layout
Bottom Layer Layout

The prototype shield is for all purposes a breadboard. I did thus not bother with a formal schematic. I believe that it is easy enough to understand the connections by just looking at the two images above.

Manufacturing

The PCB for this project has been manufactured at PCBWay.
Please consider supporting them if you would like your own copy of this PCB, or if you have any PCB of your own that you need to have manufactured.

You can get your own copy here

PCBWay

Some More Pictures of the PCB

Easy to use ESP32-S DEV Prototype Shield

While my recent ESP32-S Dev Board really does the trick to help my development cycle along, I very quickly ran into another obstacle, in the sense that, after doing stuff on the breadboard, moving those components onto a more permanent location, either as a next stage prototype or more likely that the project is so small and insignificant not to warrant the effort actually to design a PCB for it. This could be rectified by using another one of my recent designs, an SMD breadboard PCB, but that would not always do either.

MakerIoT SMD Prototype development PCB
MakerIoT SMD Prototype development PCB

That got me thinking, and while staring at the ever-present Arduino Uno on its corner of the work-bench, I suddenly remembered that I have once seen an Arduino Prototype Shield, like a plug-on breadboard, with breakouts of all the pins etc…

While I do not personally own a lot of commercial Arduino Shields, as I tend to build my own or design a custom-purpose PCB instead, it did not take me long to settle on a new design, that could potentially solve my problem, and hopefully, someone else’s as well…

ESP32-S DEV Prorotype Shield - Unassembled, Top side

So what is on this PCB?

To start off, the PCB is in the same form factor as the ESP32-S Dev Board, namely the Arduino Uno form factor. There are however a few changes, mainly in the number of pins in the headers. This is mainly to accommodate as many of the ESP32-S’s gpio’s as possible. ( Actually, they are all broken out, EXCEPT for the 6 gpio’s that are usually used with the internal Flash memory.)

The PCB is designed to be stacked either on top of, or even below, the ESP32-S Dev Board, depending of course on the type of headers that you decide to solder onto the PCB.

In order to make connecting to the gpio pins easier, each header row is in fact a double row, with solderable pads in parallel for each gpio on the header row.

Flash and Reset buttons are available on top of the shield, they can be fitted of left off, depending on personal preference, as well as how the shield will ultimately be used.

The prototyping area in the centre has been slightly reduced from the standard 5-pin-spacer-5-pin column of the traditional breadboard to a 3-pin-gnd-3v-3-pin column layout. the prototyping holes are at a standard 0.1″ or 2.54mm pitch.

In total, 60 prototype holes, divided into rows of 10, 3 columns deep, are provided, labelled A-F and 1-10.

3.3v and ground are provided in the centre-two rows, to make power easily accessible.

ESP32-S DEV Prototype Shield
ESP32-S DEV Prototype Shield
ESP32-S DEV Prototype Shield - Back
ESP32-S Dev Prototype Shield – Back

The PCB Design

As this design is basically just two rows of header pins, with a few switches, and a big unconnected prototype area, I did not bother to do a formal schematic for this PCB, but instead jumped straight into the PCB design software and manually designed and routed the tracks and pads that make up this shield.

PCB – Top Layer
PCB – Bottom Layer – Note that this is a “TOP-Down” view, and should be mirrored for actual production

Note that there are big copper pours on both top and bottom layers, in an attemp to reduce electrical noise and provide better shielding.

Manufacturing

The PCB for this project has been manufactured at PCBWay.
Please consider supporting them if you would like your own copy of this PCB, or if you have any PCB of your own that you need to have manufactured.

You can get your own copy here

PCBWay

Some more pictures of the device

Conclusion

Some final thoughts on the completed PCB.
While definitely useful, I have made a purpuseful design flaw on this board, by not including a breakout for the VIN pin. My reasoning at that stage was that I would always be powering the device directly from 3.3v, and would therefor not need access to the VIN pin for power.

Upon completion of the device, and while testing it in a stacked configuration, I realised that that VIN pin would have been quite nice to have access to.

Not a big problem though, as if is very easy to add a 2-pin connector to the power rails, or even solder a wire directly to VIN. Ugly, but totally doable, as this is in fact still a prototype, and it can grow and be fine-tuned to my exact requirements over time.

ESP8266-12E in Arduino Form Factor

As a followup to my recent ESP32-S in Arduino Form Factor device, I decided to also produce a similar circuit board for the ESP8266-12E. Although some people mostly consider these as obsolete, I still find them extremely useful for small projects, and thus use quite a lot of them.

With their lower total pin count and similar low cost to the bigger ESP32 modules, these do force you to get quite creative with the available pins, as well as how and what you can interface.

ESP8266-12E in Arduino Form Factor, with optional I2C pullups as well as Wake from sleep function on GPIO16

What is on the PCB?

For this design, I have once again tried to keep it very lean, including the absolute bare minimum supporting components needed for correct operation.
This includes pull-up and pull-down resistors on the various strapping pins, as well as some decoupling capacitors.

I also did not include a USB-to-Serial converter circuit, as these are used only once or twice, and also consume power while not being needed all the time.
As most of my devices are uploaded OTA anyway, an external stand-alone USB-to-Serial adapter is perfect to upload the initial firmware.

Jumpers to control the onboard I2C pullup-resistors, as well as the Wake-up-from-deep-sleep function on GPIO16 were also added, in addition to the Reset and Flash push-buttons to place the device into initial programming mode.

A 3.3v LDO regulator was also added, for convenience mostly, when powering the device from a bench power supply unit. The recommended voltage for this LDO would in my opinion be 7v Dc, although the datasheet states it can be up to 15v DC… In my opinion, that stresses the component a bit much though, as most of that excessive voltage is dissipated as heat.

PCB Layout – Blank board, front and back

Blank ESP-12E Dev board PCB – Front
ESP-12E Dev board- Back

To try and minimise heat-related issues with the LDO regulator, I have incorporated an on-PCB heatsink for the LDO regulator, which is via-stiched together on both sides of the PCB. This type of heatsink seems to work quite well in many of my other designs, so I decided to use it here as well.

I have also made use of big copper pours on both sides of the PCB to ensure that there is a good ground plane, as well as make use of differential pairs for the routing of the UART and I2C tracks.

Schematic

ESP-12E Dev Board Schematic

PCB Design


Manufacturing

The PCB for this project has been manufactured at PCBWay.
Please consider supporting them if you would like your own copy of this PCB, or if you have any PCB of your own that you need to have manufactured.

You can get your own copy here

PCBWay

Some assembly pictures

Procedure to upload initial firmware

Due to the fact that this device does not have an onboard USB-to-UART (Serial) converter, it will be necessary to use an external device the first time that you upload firmware, or while you are using it on the bench if you do not want to use OTA…

The easiest way to do this, in my opinion, is the following:
1) Power the device from a bench power supply, set at 7V DC via the VIN and GND Pins, available on the bottom left and right of the device ( you can use either side, not both 🙂

2) Now connect your external USB-to-UART converter to the device, as follows:
UART Converter <-> ESP-12E Dev Board
Rx <- TxD
Tx -> RxD
Gnd — GnD

Do Not connect the power (VCC) from the USB-to-UART Converter!

Now start your Adruino IDE, or similar, and connect to the Serial monitor.
Press the reset button on the board, and watch for output in the serial monitor.

If you see output, at 115200 BPS, press end hold flash, and then press and let go of reset, while still holding the flash button.

Wait a few seconds, and then upload your sketch, remembering to manually reset the board after the upload has completed.

I would recommend that you upload the Arduino OTA sketch, from the examples, and modify it to connect to your local WiFi. That way, you will be able to upload all following sketches via your local Wifi, providing that you do not remove the OTA code from the sketch.



A RISC-V IoT Development Board

Most of us will not know about RISC-V, or have had access to a RISC-V Chip.
This will thus be truly one of the most difficult posts I have written, due to many factors…

To name a few of these:
– The learning curve is extremely steep because there is extremely limited information available on the chip
– I can not at the moment allowed to divulge any information on the chip used, as I have received a few “sneak-preview” modules, and the manufacturer, who shall also remain anonymous for now, has not released it to the public yet.
– Most of the information available on the BL-602 ( on which the chip is based) is in relation to the BL-IOT-SDK, or Apache NuttX, an RTOS for use with microcontrollers.
While the NuttX project has excellent documentation, it is written in a very technical style, and focused on very basic, very advanced or very specific things. This will hopefully be improved upon to make it more “new-end-user-that-is-learning” friendly in future.

As most of us can no doubt see, This post is quite a challenge. I will thus focus on the PCB I designed to use with the “mystery BL-602” chip, and provide a lot of links to where you can get information on Apache NuttX, as well as how to use it with the BL-602 in general.

Once the module has been officially released, I will do a followup-post, with specific documentation etc, which, although I have already got some of it in my possession, I can not release at the moment for ethical reasons.

I think it fair to tell you all this much, and , unintentionally, have to create anticipation on what and where etc… My apologies for that, but rules are rules, and secrets are meant to be kept, until told otherwise…

So, lets get started. Some links to get you started and show you where this is going…

Apache Nuttx is the RTOS that you will most likely have to use to do anything useful with the BL-602 chip, as well as other microcontrollers, notably the ESP32-S3 and some of the STM32 chips.

Bouffalo Labs are the people behind the BL-602, as well as the BL-IOT-SDK, which will also be quite useful in designing solutions around the BL-602

Run Rust on RISC-V Firmware will provide some excellent points to get started

LEE Lup Yuen seems to be the kind person who has written most of the extensive and useful documentation on NuttX and the BL-602, amongst others…

NuttX Incubator on Github is a very detailed source, also by Mr Lee Lup Yuen, that aims to get us started with the BL-602 and NuttX – This link is HIGHLY recommended!

My Prototype PCB

Carrier PCB – Disclaimer – I have edited the silkscreen to remove Chip markings- This will be released to the public at a later stage. As mentioned above, it is necessary at this moment to keep this information confidential.

I decided to design an extremely basic, bare PCB with basically just the BL-602 chip and its supporting circuitry. This will allow me to focus only on the chip, as well as provide maximum flexibility in the future by the addition of add-on shields with specific functions. with this in mind, I purposely chose a PCB footprint similar to the Arduino UNO.

It is also worth mentioning that the chip module used on this PCB IS NOT a standard BL-602, although the footprint looks similar.

At the moment, I am however pulled between being frustrated at the lack of available information and also being excited at the possibilities that are already there or will open up in the future.

Needless to say, some people will be frustrated at the “seeming lack of details in this post”. Lets all stay calm, and remember that I will post a followup, with all the details soon.

Manufacturing

Over the past eight years, PCBWay has continuously upgraded their MANUFACTURING plants and equipment to meet higher quality requirements, and now THEY also provide OEM services to build your products from ideas to mass production and access to the market.


The PCB for this project has been manufactured at PCBWay.
Please consider supporting them if you would like your own copy of this PCB, or if you have any PCB of your own that you need to have manufactured.

PCBWay

If you would like to have PCBWAY manufacture one of your own, designs, or even this particular PCB, you need to do the following…
1) Click on this link
2) Create an account if you have not already got one of your own.
If you use the link above, you will also instantly receive a $5 USD coupon, which you can use on your first or any other order later. (Disclaimer: I will earn a small referral fee from PCBWay. This referral fee will not affect the cost of your order, nor will you pay any part thereof.)
3) Once you have gone to their website, and created an account, or login with your existing account,

4) Click on PCB Instant Quote

5) If you do not have any very special requirements for your PCB, click on Quick-order PCB

6) Click on Add Gerber File, and select your Gerber file(s) from your computer. Most of your PCB details will now be automatically selected, leaving you to only select the solder mask and silk-screen colour, as well as to remove the order number or not. You can of course fine-tune everything exactly as you want as well.

7) You can also select whether you want an SMD stencil, or have the board assembled after manufacturing. Please note that the assembly service, as well as the cost of your components, ARE NOT included in the initial quoted price. ( The quote will update depending on what options you select ).

8) When you are happy with the options that you have selected, you can click on the Save to Cart Button. From here on, you can go to the top of the screen, click on Cart, make any payment(s) or use any coupons that you have in your account.

Then just sit back and wait for your new PCB to be delivered to your door via the shipping company that you have selected during checkout.

RaspberryPi Pico Carrier PCB

The Rp2040 chip from the RaspberryPi foundation should be quite well known to everybody by now. Many companies have also released their own development boards based on it. The original Raspberry Pi Pico is popular, based on its small size.


For myself, there is however a serious drawback, its small size, while perfect for breadboard, made it necessary for the developers to place the pinouts on the back of the board. This makes it necessary to either memorise the pinouts or always have a pinout diagram handy when working with it.

The module also comes with castellated holes, making it ideal to place onto a custom PCB as a “component”. This got me thinking, I can easily design a custom RP2040-based PCB, but manually assembling the tiny RP2040 is something that my poor eyesight will make a bit challenging (staring at computer screens for many years does really take its toll as you get older).


Finding components in stock (excluding the RP2040) is also a challenge in my area.

This made me think about taking a popular footprint ( like the Arduino Uno ), and placing a Pico module directly onto the board, labelling all the pins clearly on the front, and installing female headers to access them.

While it is obviously not a very complicated PCB, it will definitely help me to utilise the fantastic little chip more effectively.

Assembling the PCB should only take a few minutes, as you only have to solder the pico and female header pins to the board. When completed, it should look like this:

If you have already soldered headers to your Pico, you can still use this PCB as well. You can also use the new Pico W with this board, the only difference is that the Pico W does not have castellated holes on the pins, so you would have to use header-pins. Also, the debug port now has a connector, so you will have to use the port directly on the Pico for that.

A good introduction to the new Pico-W can be found here. I have not bought any yet, so have no pictures to show, or comments to make on its operation.

What is next

I have plans to start designing a series of add-on shields with specific functions for this platform, since being freed from the breadboard, the Raspberry Pi Pico suddenly became much more interesting to me.

While smaller seems to be better in the electronics world of today, breadboarding, in my humble opinion, is quite aged, and can be extremely unreliable, due to poor connections etc. It is however very quick and fast, without requiring you to solder anything.

I am thus attempting to get the best of both worlds, by not being tied down to a breadboard, but with the freedom to go there if I choose, or just designing and using a custom shield of my choosing.

Manufacturing

Over the past eight years, PCBWay has continuously upgraded their MANUFACTURING plants and equipment to meet higher quality requirements, and now THEY also provide OEM services to build your products from ideas to mass production and access to the market.


The PCB for this project has been manufactured at PCBWay.
Please consider supporting them if you would like your own copy of this PCB, or if you have any PCB of your own that you need to have manufactured.

PCBWay

If you would like to have PCBWAY manufacture one of your own, designs, or even this particular PCB, you need to do the following…
1) Click on this link
2) Create an account if you have not already got one of your own.
If you use the link above, you will also instantly receive a $5 USD coupon, which you can use on your first or any other order later. (Disclaimer: I will earn a small referral fee from PCBWay. This referral fee will not affect the cost of your order, nor will you pay any part thereof.)
3) Once you have gone to their website, and created an account, or login with your existing account,

4) Click on PCB Instant Quote

5) If you do not have any very special requirements for your PCB, click on Quick-order PCB

6) Click on Add Gerber File, and select your Gerber file(s) from your computer. Most of your PCB details will now be automatically selected, leaving you to only select the solder mask and silk-screen colour, as well as to remove the order number or not. You can of course fine-tune everything exactly as you want as well.

7) You can also select whether you want an SMD stencil, or have the board assembled after manufacturing. Please note that the assembly service, as well as the cost of your components, ARE NOT included in the initial quoted price. ( The quote will update depending on what options you select ).

8) When you are happy with the options that you have selected, you can click on the Save to Cart Button. From here on, you can go to the top of the screen, click on Cart, make any payment(s) or use any coupons that you have in your account.

Then just sit back and wait for your new PCB to be delivered to your door via the shipping company that you have selected during checkout.

USB Power Supply Module

USB Ports are quite handy to power all our day-to-day electronic devices, but most charging devices are limited to a single port. While it is possible to get a commercial multi-port USB-Charger ( I have quite a few myself), they are usually limited in charging current or very cheaply made.

I decided to do my own, at this time limited to supplying power only, but with a few added features to make it my own.

Features

  • Individual switching of ports
  • Individual power LED indicator on each port, that can be left disconnected for total dark operation ( I don’t like charging lights in the bedroom )
  • Switchmode Power Supply unit, up to 2A output
  • Wide input supply options, not limited to 5v
  • Wide power tracks to ensure decent current transfer, and reduce heat generation on the PCB

Why did I choose to build my own?

We use USB ports on almost all our electronics devices, and most of the charging units that comes with these are quite badly designed. They are underpowered, have only one port, and have annoying lights that are quite bright at night.

I wanted a single unit that can accept up to 4 devices, control each port individually, as well as be relatively small and compact for travel use.

The PCB

The PCB is a double layer, with wide power tracks on opposite sides of the board. The component count is quite low, with only USB3 Type Female connectors(4), a single MP1584 Buck converter module, 4x current limiting resistors for the LED indicators, as well as male header pins for the switches and LED indicators.

The biggest challenge was to get the port spacing correct so that it will be easy to use all of them at the same time. CNC cutting the enclosure should also not be too difficult as well, once I get around to designing that in CAD/CAM

The Schematic

I have chosen to keep it simple on this revision, and only supply power via the ports. I plan to maybe do a full data-capable USB 3.0/ USB3.1 Hub later.

Manufacturing

Over the past eight years, PCBWay has continuously upgraded their MANUFACTURING plants and equipment to meet higher quality requirements, and now THEY also provide OEM services to build your products from ideas to mass production and access to the market.


The PCB for this project has been manufactured at PCBWay.
Please consider supporting them if you would like your own copy of this PCB, or if you have any PCB of your own that you need to have manufactured.

PCBWay

If you would like to have PCBWAY manufacture one of your own, designs, or even this particular PCB, you need to do the following…
1) Click on this link
2) Create an account if you have not already got one of your own.
If you use the link above, you will also instantly receive a $5 USD coupon, which you can use on your first or any other order later. (Disclaimer: I will earn a small referral fee from PCBWay. This referral fee will not affect the cost of your order, nor will you pay any part thereof.)
3) Once you have gone to their website, and created an account, or login with your existing account,

4) Click on PCB Instant Quote

5) If you do not have any very special requirements for your PCB, click on Quick-order PCB

6) Click on Add Gerber File, and select your Gerber file(s) from your computer. Most of your PCB details will now be automatically selected, leaving you to only select the solder mask and silk-screen colour, as well as to remove the order number or not. You can of course fine-tune everything exactly as you want as well.

7) You can also select whether you want an SMD stencil, or have the board assembled after manufacturing. Please note that the assembly service, as well as the cost of your components, ARE NOT included in the initial quoted price. ( The quote will update depending on what options you select ).

8) When you are happy with the options that you have selected, you can click on the Save to Cart Button. From here on, you can go to the top of the screen, click on Cart, make any payment(s) or use any coupons that you have in your account.

Then just sit back and wait for your new PCB to be delivered to your door via the shipping company that you have selected during checkout.

An SMD Breadboard

The electronics Breadboard is definitely one of those things that electronics hobbyists use quite a lot. It allows you to prototype your design relatively easily, with the use of breakout modules, wires and leaded components.

While this seems like a good thing, these breadboards are also unfortunately not perfect. The wires and connectors add electrical noise, and stray capacitance, as well as a certain level of unreliability.

My biggest issue with breadboards is not that though. it is the fact that you can only use through-hole components. Breakout PCBs is sort of a middle ground, as they allow you to connect SMD chips to stuff on a breadboard with wires, but that is not the issue here.

Doing a lot of prototyping, having a lot of components lying around, and then having to still try and find TH versions of everything to prototype with becomes costly in terms of time and space. If you have a larger project, but you are not yet at a stage to have a PCB made, adding another breadboard to the already cluttered setup is sometimes quite a challenge.

To get rid of this major point of frustration to me, I decided to try to solve it for myself by designing a SMD breadboard Hybrid.

What is on the board?

Quick Specifications

-300-hole solderable breadboard (dual layer, plated through-hole pads)
-64 0805 SMD pads, with plated through hole pads for connectors
-8 BJT/Mosfet footprint pads (SOT233/SOD23-3) with 3 plated through-hole pads per terminal
– 3 Power rails, 30 holes each for Vcc and Ground (Common ground on all)
– Mesh-style ground plane on both sides of the PCB.
– 4 mounting holes

Details

To address all of the various issues that I have with breadboarding, I did the following:

I hardly ever use more than a 300-hole breadboard for single stage of a project.
Many of these circuit blocks could benefit from being a permanent soldered solution, but does not warrant the time and expense to design a dedicated PCB to hold them.

The first thing to do was thus to design a 300-hole PCB breadboard, complete with top and bottom power rails.

My next issue was SMD components. Chips have many footprints, and to try and design for each of them would turn into a nightmare. Breakout PCB’s would thus still be used for those. My biggest issue was BJT’s Mosfets Capacitors, diodes and resistors.

These can be bought in lead versions, but that was exactly what I tried to get away from, so it needed some thinking.

Resistors, capacitors and diodes have only two terminals, and could thus easily be soldered onto 0805 resistor pads (depending of course on the capacitor size )

BJTs and Mosfets need their own footprint.

Each of the SMD components has a corresponding through-hole pad, to easily connect it to a different part of the board as needed. BJT’s and Mosfets have 3 per leg.

Hopefully this will make things a bit more organised in future, and save me some time;

Manufacturing

Over the past eight years, PCBWay has continuously upgraded their MANUFACTURING plants and equipment to meet higher quality requirements, and now THEY also provide OEM services to build your products from ideas to mass production and access to the market.


The PCB for this project has been manufactured at PCBWay.
Please consider supporting them if you would like your own copy of this PCB, or if you have any PCB of your own that you need to have manufactured.

PCBWay

If you would like to have PCBWAY manufacture one of your own, designs, or even this particular PCB, you need to do the following…
1) Click on this link
2) Create an account if you have not already got one of your own.
If you use the link above, you will also instantly receive a $5 USD coupon, which you can use on your first or any other order later. (Disclaimer: I will earn a small referral fee from PCBWay. This referral fee will not affect the cost of your order, nor will you pay any part thereof.)
3) Once you have gone to their website, and created an account, or login with your existing account,

4) Click on PCB Instant Quote

5) If you do not have any very special requirements for your PCB, click on Quick-order PCB

6) Click on Add Gerber File, and select your Gerber file(s) from your computer. Most of your PCB details will now be automatically selected, leaving you to only select the solder mask and silk-screen colour, as well as to remove the order number or not. You can of course fine-tune everything exactly as you want as well.

7) You can also select whether you want an SMD stencil, or have the board assembled after manufacturing. Please note that the assembly service, as well as the cost of your components, ARE NOT included in the initial quoted price. ( The quote will update depending on what options you select ).

8) When you are happy with the options that you have selected, you can click on the Save to Cart Button. From here on, you can go to the top of the screen, click on Cart, make any payment(s) or use any coupons that you have in your account.

Then just sit back and wait for your new PCB to be delivered to your door via the shipping company that you have selected during checkout.