Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Lawrie Griffiths
    @lawrie
    Looks good enough to me, but the cable can apply some twisting force to it, so anyone who was using it more than just casually might appreciate a way of fixing it more firmly. But that applies to a lot of Pmods.
    Goran Mahovlic
    @goran-mahovlic
    I can add "ears" for screws and check out how it looks :)
    emard
    @emard
    For USB and ETH board to be properly put in a box, screw holes must be there for mechanical strength.
    Goran Mahovlic
    @goran-mahovlic
    Thanks to Drew we just got sponsorship for PMODs
    So I will accept wishes for next next PMODs
    Lawrie Griffiths
    @lawrie
    It that Drew Fustini of OSHPark?
    Goran Mahovlic
    @goran-mahovlic
    Yes :)
    Lawrie Griffiths
    @lawrie
    I have implemented @Dolu1990's flash access on the ulx3s, if anyone is interested. You can do things like:
    oot@buildroot:~# hexdump -C -n 100 /dev/mtd3
    00000000  93 06 10 00 13 06 00 00  93 05 09 00 13 05 0a 00  |................|
    00000010  ef f0 8f f8 6f f0 5f b4  03 a5 89 00 b7 e5 56 c0  |....o._.......V.|
    00000020  93 85 45 fb 13 05 85 10  ef 00 0b 8e 93 04 05 00  |..E.............|
    00000030  e3 00 05 c4 03 a5 89 00  b7 15 54 c0 13 86 04 00  |..........T.....|
    00000040  93 85 45 5b 13 05 85 10  ef 10 0b ef 13 8c 04 00  |..E[............|
    00000050  6f f0 df e8 03 a5 89 00  b7 15 54 c0 13 06 00 00  |o.........T.....|
    00000060  93 85 85 57                                       |...W|
    00000064
    root@buildroot:~# flash_erase /dev/mtd3 0 1
    Erasing 4 Kibyte @ 0 -- 100 % complete 
    root@buildroot:~# echo "Hello" >/dev/m
    mem               mmcblk0p1         mtd1              mtd2ro
    memory_bandwidth  mtd0              mtd1ro            mtd3
    mmcblk0           mtd0ro            mtd2              mtd3ro
    root@buildroot:~# echo "Hello" >/dev/mtd3
    root@buildroot:~# hexdump -C -n 100 /dev/mtd3
    00000000  48 65 6c 6c 6f 0a ff ff  ff ff ff ff ff ff ff ff  |Hello...........|
    00000010  ff ff ff ff ff ff ff ff  ff ff ff ff ff ff ff ff  |................|
    *
    00000060
    emard
    @emard
    I'm interested, please release updated stuff :))
    Lawrie Griffiths
    @lawrie
    You just need to use sdimagef or sdimagef64 to get the versions with linux flash support. I have copied the dts as well as the dtb to /boot so you can see what dts is being used.
    emard
    @emard
    wonderful!
    Lawrie Griffiths
    @lawrie
    If you flash uboot-env-bin@0x310000, you should get a u-boot environment that you can save with saveenv. It currently saves to /boot/uboot.env in partition1, which must be ext2 or ext4.
    I could produce a version for you that uses partition2.
    You then need to override the kernel bootargs to make linux use partition 2. I have not tried that. You can see the existing bootargs in the dts.
    Lawrie Griffiths
    @lawrie
    There is now a version of u-boot in uboot-env2.bin@0x310000 that uses partition 2. That is it stores the environment in partition 2 and gets uImage and dtb from partition 2. You still need to override bootargs to make linux use partition 2 as the root partition.
    emard
    @emard
    saving environment works, wow this are developing fast!! I should download new stuff and try
    Lawrie Griffiths
    @lawrie
    Has anyone used the Ulx3s with an LCD screen. I would quite like to use it with this screen, which a few of use developed for the TinyFPGA BX - https://discourse.tinyfpga.com/t/bx-portable-game-console-project-collaboration/553/124
    Goran Mahovlic
    @goran-mahovlic
    Do you have some link for this screen?
    We did use some SPI screen but from Arduino
    It could be driven by a double Pmod. If it could be mounted in such a way that the buttons were accessible, it could make a self-contained portable gaming device .
    We used the 8080 8-bit interface and no touch screen option.
    Lawrie Griffiths
    @lawrie
    I believe @daveshah1 produced an LCD Pmod. Has that been used with the Ulx3s?
    Goran Mahovlic
    @goran-mahovlic
    yes, we have @daveshah1 LCD supported and next one should be https://www.tme.eu/hr/details/rfe43bh-aiw-dns/displeji-tft/raystar-optronics/
    That is used in envox BB3
    Lawrie Griffiths
    @lawrie
    I have Verilog and SpinalHDL drivers for that 320x240 8-bit interface LCD. We used it with PicoSoC on the TinyFPGA BX, but I have also used it from SaxonSoc (but not SaxonSoc Linux).
    Goran Mahovlic
    @goran-mahovlic
    would be so cool to have SaxonSoc Linux display
    Lawrie Griffiths
    @lawrie
    Yes, In was looking into what would be involved with that when I thought about supporting that 320x240 display.
    There is a @daveshah1 tweet (about the LiteX Linux version) that said that supporting a 320x240 display using a frame buffer console driver should not be too hard. That could either drive HDMI or use an LCD display. Not on our immediate roadmap, but I was interested in seeing what it would involve doing.
    emard
    @emard
    @daveshah1 made a double PMOD PCB for this I think 320x240 display, it is directly pluggable to ULX3S, it has VGA compatible timing and signals so core effort is very small. For a good framebuffer burst capable read of SDRAM is required. Tiled text graphics would be much faster than framebuffer. If we have linux-side developer then my c2 acceleation 2D video can be supported used also....
    Lawrie Griffiths
    @lawrie
    Yes, I have seen @daveshah1's PMOD and I saw Matt Venn's version of it he used on the iCEBreaker board - https://github.com/daveshah1/pmods
    I am not too keen on making one myself as my surface mount soldering skills are not very good, and I am not sure which LCD to use , or how to mount it. I have not seen anywhere where an assembled one can be bought.
    Lawrie Griffiths
    @lawrie
    I used tiled based graphics on the driver I wrote for the ili9341 8080 interface LCD I mentioned above - https://github.com/SpinalHDL/SaxonSoc/blob/dev/hardware/scala/saxon/board/blackice/peripheral/Ili9341.scala.
    Goran Mahovlic
    @goran-mahovlic
    emard
    @emard
    https://www.adafruit.com/product/1601 thy also have some SPI display maybe it's same as yours but it has a lot of other PINs, I didn't go into details if it has VGA signaling or some parallel bus so some ready-made cores like f32c driver for david's lcd35 can be used
    Baj its ili 3941 :(
    emard
    @emard
    Yea I made this example :)
    Trellis compiles this example in 5s on my celeron
    Goran Mahovlic
    @goran-mahovlic
    @emard would this be ok?
    PMOD.png
    Lawrie Griffiths
    @lawrie
    The Adafruit display looks similar, but the buydisplay version has solder jumpers that allow them to be programmed using various interfaces (and is much cheaper). It is the 8-bit 8080 mode that I use rather than SPI. That is also used on some cheap Arduino shield TFTLCD displays, which I have also used with ice40 fpgas. It drives it fast enough to use tiled graphics or a framebuffer.
    The buydisplay ones also also ili9341.
    Goran Mahovlic
    @goran-mahovlic
    David PMOD is using LQ035NC111
    emard
    @emard
    @goran-mahovlic Yes exactly, in the plastic box are placeholders for the screws, you can use 2.5 mm holes on PCB. Screws are 2.2 mm going into plastic.
    @lawrie 8080 is parallel so I guess it should be fast enough with some 15-20 MHz same thing as David's PMOD that has pixel rate of 19.2 MHz
    @goran-mahovlic I'm not sure will we have space on topmost hole because of the box edge but screw is small so perhaps it's possible too but we must try first
    Goran Mahovlic
    @goran-mahovlic
    well bottom is then also problematic
    Lawrie Griffiths
    @lawrie
    The 8-bit LQ035NC111 is more sensible for use with FPGAs and gives 24-bit RGB, whereas the ili9341 8080 one is 16-bit 565 RGB. But the ili9341 interface does give some flexibility.