Ever since people figured out that the Raspberry Pi 4 has a PCIe bus, the race was on to be the first to connect a regular PCIe expansion card to a Raspberry Pi 4 SBC. Now [Zak Kemble] has created a new approach, using a bridge PCB that replaces the VL805 USB 3 controller IC. This was also how the original modification by [Tomasz Mloduchowski] worked, only now it comes in a handy (OSHPark) PCB format.
After removing the VL805 QFN package and soldering in the bridge PCB, [Zak] confirmed that everything was hooked up properly and attempted to use the Raspberry Pi 4 with a PCIe extender. This showed that the Raspberry Pi would happily talk with a VL805-based USB 3.0 PCIe expansion card, as well as a Realtek RTL8111-based Ethernet card, but not a number of other PCIe cards. Exactly why this is is still unclear at this point.
As a bonus, [Zak] also found that despite the removal of the VL805 IC from the Raspberry Pi rendering its USB 3 ports useless, one can still use the USB-C ‘power input’ on the SBC as a host controller. This way one can have both PCIe x1 and USB on a Raspberry Pi 4.
This is the third iteration we’ve seen for using PCIe with the Pi. If you’re building on the work of [Thomasz Mloduchowski], which inspired [Colin Riley] to add expanders, and now this excellent hack by [Zak], we want to hear about it!
via Adding PCIe To Your Raspberry Pi 4, The Easier Way — Hackaday
Matthew Venn has created a FPGA dev board based on Lattice iCE40 8k for the Raspberry Pi. The board uses our After Dark service which features clear solder mask on a black substrate:
- Make my first PCB with an FPGA
- Keep it super simple and cheap
- Configured by on-board FLASH or direct with a Raspberry Pi
- 6 PMODs, 2 buttons, 2 LEDs, FLASH for configuration bitstreams.
What a Lattice iCE40 FPGA needs
- A clock input. Has to be provided by an oscillator, it doesn’t have a crystal driver.
- 1.2v core supply for the internal logic.
- 2.5v non volatile memory supply. Can be provided via a voltage drop over a diode from 3.3v.
- IO supply for the IO pins, different banks of IO can have different supplies. This design uses 3.3v for all banks.
- Get configured over SPI interface. This can be done directly by a microcontroller or a computer, or the bitstream can be programmed into some FLASH, and the FPGA will read it at boot. If FLASH isn’t provided then the bitstream needs to be programmed at every power up or configuration reset.
- Decoupling capacitors for each IO bank.
- FPGA iCE40-HX4K-TQ144 (8k accessible with Icestorm tools)
- 3.3v reg TLV73333PDBVT
- 1.2v reg TLV73312PDBVT
- 12MHz oscillator SIT2001BI-S2-33E-12.000000G
- 16MB FLASH IS25LP016D-JBLE (optional).
See the test program. This makes a nice pulsing effect on LED2, and LED1 is the slow PWM clock. The buttons increase or decrease pulsing speed.
Yosys and NextPNR are used to create the bitstream and then it’s copied to the Raspberry Pi specified by PI_ADDR in the Makefile.
Fomu-Flash is used to flash the SPI memory, or program the FPGA directly.
Mark Smith writes on the Surf ‘n Circuits blog about a Nixie Tube project:
Rarely during product development do you get it correct on the first design iteration. Something always goes wrong or just isn’t perfect. However, like trying for a hole-in-one on a par 3, you always try for perfection but expect to need a few extra strokes. So, while I almost hit a hole in one in the first version of the Nixie Tube HAT (Part 1), a few improvements were required. In this blog, I describe the few improvements found from Part 1 and complete the design to reach stage 6 of the surfncircuits defined development flow. As with the other projects in the blog, the complete design files in Kicad, schematics, layout, BOM, are available at GitHub for use in your own projects. You can build it yourself and the PCB can also be ordered directly from Oshpark.
From the Facelesstech blog:
So if you have been following my blog lately you may have noticed me rambling on about trying to get a Xbox 360 chat pad and an ps3 keypad working with a raspberry pi to make a portable terminal. I have finally finished my quest so join me below to see how I did it
- Raspberry pi zero w
- 3.5″ waveshare clone
- Rii Mini 518 Bluetooth keyboard
- Bluetooth dongle
- Power bank board
- 2600mAh lipo battery
- DIY USB hub
- DIY interface PCB for screen
- Various stand-offs
Raspberry pi zero w a 3.5″ screen a power bank board and a bluetooth keyboard is that makes up this pocket terminal.
From Mark Smith on the Surf ‘n Circuits blog:
Adding IOT to the Nixie Tube Clock. A clock that provides the estimated time of arrival for up to ten destinations
The ETA Nixie clock is programmed to display the normal time and up to ten different ETA times that are easy to identify and visually stimulating. The current time is displayed for 5 seconds (i.e. 8:41:38 AM), then up to ten different ETA destinations are displayed for three seconds each before the cycle is repeated. The current time displays all six digits including seconds. The ETA locations are numbered and display hours and minutes without seconds helping to distinguish between them. In our house, the ETA to work is ETA number 1 (i.e. 9:07 AM) and the ETA to school is ETA number 2 (i.e. 8:58 AM). Lots of other options are possible with custom programming of the Raspberry Pi to meet your ETA requirements.
surfncircuits has shared the board on OSH Park:
There is a new PDX Raspberry Pi and Arduino meetup organized by hosted by Mitch Bayersdorfer coming to Portland on Saturday, April 7th:
• What we’ll do:
Part social and part build time, this meet-up is for those
• What to bring
Computer. Raspberry Pi and/or Arduinos if you have them. Projects that you want to share. Items for the “parts luck” swap bin.
• Important to know
The shop where this is held only has space heaters – so please dress warmly on colder days. On very cold days, we will forego building and have a social in a heated space, if we can’t find an alternative spot.
Raspberry Pi FPGA HAT designed by Eric Brombaugh:
The icehat is a small (Raspberry Pi Zero-sized) board with a Lattice ice40 Ultra or Ultra Plus FPGA and three Digilent-compatible 8-bit PMOD receptacles.
Sergey Kiselev designed this I2S Audio pHAT:
This is a Raspberry Pi Zero pHAT form-factor I2S audio interface board based on a Cirrus Logic (Wolfson) WM8731 audio codec. It provides line input, line output, headphones output, and includes an on-board microphone.