I considered moving to the PiPico2W, but the flash is only 4Mbytes so I'm nervous about running out of space for larger projects, especially if I need WiFi. I've gotten used to dumping lots of runtime info into logfiles for debugging & logging, and that requires having a filesystem or some sort of tethered development system. So as of today, no disruptive technology has emerged that has convinced me to change; maybe I'm too entrenched with the RasPi.
For those of you who remember working on a VAX-11/780 mainframe, the RasPi outperforms it. Who in their right mind would have thought of using a VAX to run a nixie-tube clock ? On Saturday, January 11, 2025 at 1:45:35 AM UTC-8 David Pye wrote: > A vote here for the Pi Pico. > > Arm MCU, with good, well documented libraries. > > WiFi version (Pico w) available and relatively cheap too. > > I personally don't like the overhead of running a full Linux OS, and feel > that a Pi of any sort is excessively overpowered for a (relatively simple) > clock device. > > David > > On Sat, 11 Jan 2025, 05:24 gregebert, <[email protected]> wrote: > >> For the RasPi, I just use C (gcc). Since it's a full Linux device, >> there's tons of stuff out there for free. >> 512MB of RAM, but a good chunk of that is for Linux. I usually have 32GB >> micro SD cards. >> I write all of my own code, except the GPIO stuff (digitalRead, >> digitalWrite) is thru wiringPi. >> It is handy, though, because I can just login to the RasPi from anywhere >> to do software development work, and I never need to plug-in cables, etc. >> >> For FPGAs, I mostly use the Altera EP2C5 (25USD) , and sometimes the >> EPM240 (12USD). Both are available on PCBs on Ebay. >> The Quartus software is free for compiling the FPGA code, and I use >> Modelsim for simulating the FPGA code (Verilog). I do have to physically >> plug the JTAG programmer into the USB port on my Linux server to update the >> FPGA code, but I try to minimize FPGA code changes (essentially freeze the >> "hardware"), and make all changes thru software. Sometimes that's not >> possible. >> >> The RasPi + FPGA can do anything imaginable, but as I said, the main >> drawback is the boot time. Fortunately, our electric utility is pretty >> reliable, so unplanned reboots happen less than once per year. >> >> On Friday, January 10, 2025 at 2:11:03 PM UTC-8 newxito wrote: >> >>> That's the memory usage of my calculator project: >>> RAM: [= ] 7.2% (used 23640 bytes from 327680 bytes) >>> Flash: [=== ] 27.9% (used 365721 bytes from 1310720 bytes) >>> >>> Which tools and development environment do you use to program the Raspi >>> Zero W? >>> And for the FPGA? >>> >>> gregebert schrieb am Freitag, 10. Januar 2025 um 21:43:22 UTC+1: >>> >>>> I evaluated Arduino about 15 years ago and decided against it because I >>>> thought there was only enough RAM/ROM for very simple projects. So for a >>>> few years I used FPGAs, then Raspberry Pi Zero W, and now I have the >>>> ecosystem in-place to use FPGA, RasPi, or both. >>>> >>>> I'm curious how many lines of source code (it's similar enough to C) >>>> can be compiled onto an average Arduino device. >>>> >>>> >>>> >>>> On Friday, January 10, 2025 at 1:38:31 AM UTC-8 newxito wrote: >>>> >>>>> I like PlatformIO, but unfortunately, they do not support newer >>>>> versions of the arduino-esp32 framework which are required for newer >>>>> hardware (financial disagreement with espressif). >>>>> Since I use espressif MCUs with the arduino-esp32 framework in all my >>>>> nixie projects, I’m currently looking for alternatives. I found these >>>>> options: >>>>> - Arduino IDE >>>>> - PlatformIO using pioarduino >>>>> - pioarduino extension for Visual Studio Code >>>>> - ESP-IDF extension for Visual Studio Code >>>>> - ESP-IDF Eclipse plugin >>>>> I have not made a decision yet, but I spent some time migrating the >>>>> firmware of a project to the ESP-IDF extension for vscode. Maybe the >>>>> following will be useful for someone. It’s not a tutorial, just some >>>>> reformatted notes on how it worked for me. As always use at your own risk. >>>>> >>>>> Using the ESP-IDF Extension for Visual Studio Code with the >>>>> arduino-esp32 component >>>>> >>>>> ----------------------------------------------------------------------------------- >>>>> >>>>> + Install Visual Studio Code >>>>> + Install the ESP-IDF extension >>>>> + Click "Configure ESP-IDF extension" and select EXPRESS >>>>> - Set download server to github >>>>> - Select the latest version of ESP-IDF that supports the latest >>>>> version of the arduino-esp32 component >>>>> (https://github.com/espressif/arduino-esp32/releases) >>>>> - Click install >>>>> >>>>> + After installation create an ESP arduino project as follows: >>>>> - Click "Components Manager" or run command "Show ESP Component >>>>> Registry" >>>>> - Search and select arduino-esp32 >>>>> - Go to examples, select hello_world and click "Create Project from >>>>> this example" >>>>> - Build the project >>>>> - Close vscode and rename the project directory to the desired >>>>> project name >>>>> - Start vscode and use "open folder" to open the project folder >>>>> - Copy the source files (c, cpp, hpp) to the main directory >>>>> - Create an include directory >>>>> - Copy the header files to the include directory >>>>> >>>>> + Edit CMakeList.txt in the main directory: >>>>> - Register all c, cpp and hpp files in the directory, ignore h files >>>>> - Specify include directories >>>>> - Specify requirements >>>>> >>>>> For example: >>>>> >>>>> idf_component_register(SRCS >>>>> "main.cpp" >>>>> “driver.cpp” >>>>> "helper.hpp" >>>>> >>>>> INCLUDE_DIRS "." "../include" >>>>> "../components/Adafruit_BusIO" >>>>> "../components/RTCLib" >>>>> >>>>> REQUIRES arduino-esp32 >>>>> REQUIRES nvs_flash >>>>> ) >>>>> >>>>> + Manually add arduino libraries: >>>>> - Use command "Create New ESP-IDF Component" >>>>> - Enter the name of the component, e.g. RTCLib >>>>> - Delete everything in the components\RTCLib directory except >>>>> CMakeList.txt >>>>> - Manually copy the library code files (c, cpp, h, hpp) to the >>>>> component\RTCLib directory >>>>> - Edit CMakeList.txt file >>>>> >>>>> Example CMakeList.txt file for RTCLib: >>>>> >>>>> idf_component_register(SRCS >>>>> "RTClib.cpp" >>>>> "RTC_DS1307.cpp" >>>>> "RTC_DS3231.cpp" >>>>> "RTC_Micros.cpp" >>>>> "RTC_Millis.cpp" >>>>> "RTC_PCF8523.cpp" >>>>> "RTC_PCF8563.cpp" >>>>> >>>>> INCLUDE_DIRS "." "../Adafruit_BusIO" >>>>> REQUIRES arduino-esp32) >>>>> >>>>> If the library depends on other libraries add an idf_component.yml >>>>> file, for example: >>>>> >>>>> dependencies: >>>>> # Define local dependency with relative path >>>>> Adafruit_BusIO: >>>>> path: ../AdaFruit_BusIO >>>>> >>>>> Some sdk options: (change with the "SDK Configuration Editor") >>>>> >>>>> + Compiler options for debugging, performance and size: >>>>> - Assertion Level >>>>> - Optimization Level >>>>> >>>>> + Arduino options (not set if creating the arduino project manually >>>>> without using the example): >>>>> - Kernel >>>>> set ConfigTICK_RATE_HZ = 1000 >>>>> - TLS Key Exchange Methods >>>>> Select "Enable pre-shared-key ciphersuites" >>>>> - Arduino Configuration >>>>> Select "Autostart Arduino setup and loop on boot" >>>>> >>>>> + A useful terminal command: >>>>> - idf.py update-dependencies >>>>> >>>>> + Some useful vscode shortcuts: >>>>> - Ctrl-Shift-P to "Show and Run Commands" >>>>> - Alt-Shift-F to format code >>>>> >>>>> I used this to do a clean reinstall on windows: >>>>> >>>>> + vscode: >>>>> - uninstall vscode >>>>> - delete directory "%userprofile%\AppData\Roaming\Code" >>>>> - delete directory "%userprofile%\.vscode" >>>>> >>>>> + esp-idf extension: >>>>> - delete directory "%userprofile%\.espressif" >>>>> - delete directory "%userprofile%\esp" >>>>> >>>>> >>>>> -- >> You received this message because you are subscribed to the Google Groups >> "neonixie-l" group. >> To unsubscribe from this group and stop receiving emails from it, send an >> email to [email protected]. >> To view this discussion, visit >> https://groups.google.com/d/msgid/neonixie-l/b9391c7a-52b6-47d9-9d89-2b2ae1d8f9b6n%40googlegroups.com >> >> <https://groups.google.com/d/msgid/neonixie-l/b9391c7a-52b6-47d9-9d89-2b2ae1d8f9b6n%40googlegroups.com?utm_medium=email&utm_source=footer> >> . >> > -- You received this message because you are subscribed to the Google Groups "neonixie-l" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion, visit https://groups.google.com/d/msgid/neonixie-l/d7f5cead-8a58-4321-bf39-e77a25601f6dn%40googlegroups.com.
