Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Thomas Hornschuh
    @ThomasHornschuh
    I understood that I need ESP32 MicroPython and an SD Card to use program over Wifi and it will be faster?
    --compressed saved a second, down from 25 to 24 seconds
    Lawrie Griffiths
    @lawrie
    Programming via the ESP32 is much faster, particuarly when writing to flash. You don't need an SD card for that as you can use the ESP32 flash memory, but an SD card gives much more storage.
    lawrie@ubuntu20:~/ulx3s-examples/blinky/OpenSource$ time fujprog ulx3s.bit 
    ULX2S / ULX3S JTAG programmer v4.6 (git e0cedeb built Aug 16 2020 17:16:13)
    Copyright (C) Marko Zec, EMARD, gojimmypi, kost and contributors
    Using USB cable: ULX3S FPGA 85K v3.0.3
    Programming: 100%  
    Completed in 7.40 seconds.
    
    real    0m7.697s
    user    0m0.118s
    sys    0m0.022s
    Also 85F boards take longer to program than 12F boards.
    With the ftp server on the ESP32 you can also program via ftp.
    Lawrie Griffiths
    @lawrie
    lawrie@ubuntu20:~/ulx3s-examples/blinky/OpenSource$ ftp 192.168.0.144
    Connected to 192.168.0.144.
    220 Hello, this is the ULX3S.
    Name (192.168.0.144:lawrie): 
    230 Logged in.
    Remote system type is UNIX.
    Using binary mode to transfer files.
    ftp> put ulx3s.bit fpga
    local: ulx3s.bit remote: fpga
    200 OK
    150 Opened data connection.
    226 Done.
    280833 bytes sent in 1.06 secs (258.1400 kB/s)
    Thomas Hornschuh
    @ThomasHornschuh
    The default fujprog command like above is programming the FPGA SRAM I assume?
    What is installed on the ESP32 from the factory (for the boards delivered over CrowdSupply)?
    Lawrie Griffiths
    @lawrie
    micropython is on it by default, but you should follow the instructions in https://github.com/emard/esp32ecp5 to connect to your router and upload the ftp server.
    Yes fujprog programs the sram, unless you do -j FLASH, and that is very very slow.
    Thomas Hornschuh
    @ThomasHornschuh
    Neverthless, I will take care of ESP32 later, from all the prebuilt bitstream what can be recommended as a good "smoke test" to use DRAM and HDMI output, just to check if everything works?
    Goran Mahovlic
    @goran-mahovlic
    SaxonSoc :)
    Lawrie Griffiths
    @lawrie
    Or NES?
    SaxonSoc involves setting up an sd card.
    Goran Mahovlic
    @goran-mahovlic
    I think Dobrica mada script for that
    But yes, for NES SD card is not needed
    Lawrie Griffiths
    @lawrie
    Ah, but you do not the ESP32 to load games, so probably not good.
    Goran Mahovlic
    @goran-mahovlic
    I changed quickstart - to be as in this chat
    But I cannot find example you are referring to?
    oohh ulx3s-examples/blinky
    Lawrie Griffiths
    @lawrie
    Yes
    Thomas Hornschuh
    @ThomasHornschuh
    Let me check out, I'm lost track of all the links, I think it is part of the gojimmypi installer script.
    Lawrie Griffiths
    @lawrie
    @danrr_au_twitter's game is nice and does not need the ESP32 or an sd card but it does need a large file written to flash which takes ages using fujprog -j FLASH
    Thomas Hornschuh
    @ThomasHornschuh
    OK, understood the message, go for ESP32 first. Just to avoid any misunderstandings: The ftp server is also part of MicroPython?
    Lawrie Griffiths
    @lawrie
    Yes, it is written in micropython - uftpd.py.
    Goran Mahovlic
    @goran-mahovlic
    @ThomasHornschuh I have found and proposed changes ... gojimmypi will clear that script as it install many things :)
    I think it is already on ESP32 - but wifi may be turned off - need to check what is default setup after testing...
    Lawrie Griffiths
    @lawrie
    Most of the retro-computing stuff loads roms via the ESP32 using an OSD (on-screen display) which overlays the HDMI output and lets you choose files from an SD card or the ESP32 flash memory using the buttons (or sometimes a game controller). You need to upload and import osd.py for that. The versions of osd.py differ a bit.
    You start te OSD by pressing all 4 buttons at once.
    You sometimes need an extra .py file as well as osd.py.
    @goran-mahovlic Even if Wifi is on, you really need to change main.py to connect to your router and get an IP address.
    Thomas Hornschuh
    @ThomasHornschuh
    @goran-mahovlic Just looked at the updated quick-start. The frist chapter states to run the "test scripts". I tried to understand what they do, but do be honest this is quite confusing. I hope you don't feel anoyed by my remarks, but I know from Feedback I get from users of my own FPGA projects, that many people trying their first steps with an FPGA board are much less skilled than I, also with basic Linux things. But if you want to avoid that buyers of this board get discouraged. So just maybe just remove the "know-your-programmer" chapter and state that the quick-start is for the production boards sold over Crowd-Supply and inteded for a clean start with newest tools.
    Goran Mahovlic
    @goran-mahovlic
    I moved this chapter to the end of the page
    No, thank you for remarks, as we all know where to start from, and we really need user feedback
    Goran Mahovlic
    @goran-mahovlic
    But you are right - I removed "test script and issue" from Quickstart and left use new fujprog
    Thomas Hornschuh
    @ThomasHornschuh

    Ignoring all my detours I did, the sucessfull way for me was

    At the end it this is very simple and straight forward, and will take maybe 30 Minutes if you do it right at the first try

    Dolu1990
    @Dolu1990
    Is it possible that the SPI IS25LP128F flash is setup in quad mode by the ECP5 ?
    David Shah
    @daveshah1
    That would only be if you request that
    ie with the ecppack --spimode argument
    Although actually I don't think that uses full quad mode
    Just the quad read command
    emard
    @emard
    @Dolu1990 yes quad read mode could be possible, we can fix this by flashing directly your or another bitstream which will set it 1-bit mode
    @Dolu1990 I have made experiment that after 85F boots, I read SPI flash in 1-bit mode from esp32 and that works normally. Flash can be also written in 1-bit mode. Actually to all other operations flash just appears as normal.
    Dolu1990
    @Dolu1990
    Hoo right, thanks
    emard
    @emard
    board should still be online
    I think you can upload "passthru" bitstream from "ecp5_prog" directory and the connect tp ttyUSB0 115200, you should see micropython prompt. Then import ecp5; ecp5.flashrd(addr, length) or ecp5.flash("bitstream.bit") flash should work