bessman on main
Fix typo in README (compare)
bessman on main
Update workflow to run on new m… (compare)
bessman on legacy
Initial commit Create LICENSE Added framework for firmware. F… and 60 more (compare)
bessman on master
bessman on bootloader
bessman on pslab-esp-server
bessman on development
bessman on bootloader
Move bootloader to pslab-bootlo… Move firmware to repository root (compare)
bessman on bootloader
Prepare for repository split Remove drawio flowchart (compare)
set_state
, PWMGenerator uses the firmware function sqr4. This function outputs a PWM signal on every SQ-pin, including pins which should be constant high or constant low. It is therefore necessary to reset pins which should not have PWM signals on them after calling the firmware function.
Regarding tests/test_spi.py:
For testing SPI transfer, I planned to connect MISO and MOSI (SDO -> SDI)
. Simple but, has some cons: can't test write and read independently, and can't test SMP bit of SPI config (main problem).
Then second plan, use logic analyser for MOSI and PWM generator for MISO. By this we can test write and read separately and can test SMP bit of SPI config. But testing SMP bit need precision PWM wave generation.
Like:
For testing, we need a PWM wave with the same frequency as SPI and 50% phase shifted from SPI. So that if we read, we get 0 (when SMP=0; Input data is sampled at the middle of data output time) and 0xFF (when SMP=1; Input data is sampled at the end of data output time).
Like:
SCK: ___|```|___|```|___|``
PWM: `|___|```|___|```|___|
SMP=0: ___|_______|_______|__ (Input Sample)
SMP=1: _______|_______|______ (Input Sample)
Here's a decent board for those interested in FPGAs:
https://github.com/GlasgowEmbedded/glasgow
And the other one from the Radiona hackerspace:
https://radiona.org/ulx3s/
Both are open hardware and work with open tooling. The Glasgow is very much like PSLab, but based on an FPGA.
Glasgow is a tool for exploring digital interfaces, aimed at embedded developers, reverse engineers, digital archivists, electronics hobbyists, and everyone else who wants to communicate to a wide selection of digital devices with high reliability and minimum hassle. It can be attached to most devices without additional active or passive components, and includes extensive protection from unexpected conditions and operator error.
Sooo... they're all based on Lattice FPGAs (Lattice being an FPGA vendor). Arrow is just a distributor, and they do have Lattice among their catalog:
https://www.arrow.com/en/products/lcmxo3lf-9400e-5mg256c/lattice-semiconductor
@mariobehling could you ask the person who contacted you if they would offer their workshop based on the open tooling that the community made for Lattice FPGAs?
The Glasgow is very much like PSLab, but based on an FPGA.
Where would you see a difference to what a future PSLab FPGA could offer compared to the Glasgow board?
From the current chat at gamozo's stream:
It will be a lot of fun. The RISC-V based retro inspired console that drr developed is a great IP to run on this platform. As well as the Doom implementation and a few more things.