Modification of Ikea FREKVENS with Raspberry Pi Pico to play Conway's Game of Life.
- Start with random pattern and play game of life
- If stable pattern or oscillator with period 2 occurs game will be restarted.
- Control:
- Red button
- short press - turn ON and cycle LED brightness
- long press - turn OFF
- Yellow button
- short press - cycle speed
- long press - restart life
- Red button
FW is written in MicroPython.
Use Thonny or mpremote
to load content of src
directory into Pico.
cd src
# copy everything (.) in to remote (:)
mpremote cp -r . :
# run main.py to see stdout
mpremote run main.py
One need to disassembly Ikea FREKVENS box, remove original MCU board and connect RPi Pico. Steps:
- Disassembly, there are some tutorials already, e.g. here or here
- Remove original MCU (green) PCB and solder connector in place (or directly connect according to the following table via wires).
- (optional) disassembly power supply block and replace AC output plug with 3D printed USB connector holder. USB data pins are available on back side of RPi Pico as test points.
Board | Pin/Wire | RPi Pico PIN | Note |
---|---|---|---|
LED PCB | 1 (Vcc) | VSYS | |
LED PCB | 2 | GPIO 4 | En |
LED PCB | 3 | GPIO 3 | Data |
LED PCB | 4 | GPIO 2 | Clk |
LED PCB | 5 | GPIO 5 | Latch |
LED PCB | 6 (Gnd) | GND | |
Buttons | Red wire | GND | |
Buttons | Black wire | GPIO 10 | Yellow button |
Buttons | White wire | GPIO 11 | Red button |
Connection between power supply and main PCB (4V and GND) is same.
‼ If USB connection is used, one must de-solder diode that are between VUSB
and VSYS
from Pico PCB. (here's why)
- Add predefined startup (e.g. glider)
- Performance improvement (use SPI or PIO for communication, speed up game generation computation)