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.

Reply via email to