The Shop > Electronics & IC Programing

Pi PICO DRO/Quill-Knee combiner

<< < (3/11) > >>

JHovel:

--- Quote from: BillTodd on January 04, 2024, 03:32:31 PM ---
3) It's what we do here ;-)

 :proj:

--- End quote ---

That's all the reason we need!

BillTodd:
 I am making progress , slowly. I'm trying to abstract the display driver as much as possible to avoid rewriting if i change the hardware. I'm building a simple screen/windowing system loosely based on Kivy  (I suspect I'll run of RAM at some point and be forced to scale it back further).

How many here have played with RPIs PICOs and Python?  Would anyone like me to expand on how this is supposed to work?  Perhaps you could chip in with ideas.

[edit] schematic removed  - first time playing with kicad and got carried away with cut n paste 

AdeV:

--- Quote from: BillTodd on January 11, 2024, 07:48:48 AM --- I am making progress , slowly. I'm trying to abstract the display driver as much as possible to avoid rewriting if i change the hardware. I'm building a simple screen/windowing system loosely based on Kivy  (I suspect I'll run of RAM at some point and be forced to scale it back further).

How many here have played with RPIs PICOs and Python?  Would anyone like me to expand on how this is supposed to work?  Perhaps you could chip in with ideas.

--- End quote ---

Can't honestly say I've played with a Pi PICO yet (on the very very very long TODO list!); I have, however, been messing around with GUIs on ESP32s (a sort of Arduino-esque chip with built in WiFi, more speed & RAM). I was also looking, a while back, at doing a DIY DRO (for my lathe, as I already have a 2-axis on the mill), using a Teensy 4.0 to read the scale output, and "something" (never did get that far) to make the actual display. In the end, I just bought a Chinesium 4-axis DRO, mounted 3 of the axes & their head unit, and that's as far as I got...

I've used some medium sized TFTs with the ESP32 - I think 3.2" is the biggest you can drive using SPI, any larger and you're looking at HDMI, and that's a whole different barrel of fish, into which I do not fancy diving... I think my next step would be a regular Raspberry Pi, with an intermediary microcontroller (ESP32 or Teensy) handling the quadrature encoding & spitting out change values to the Pi, which would then update the (large) display accordingly. One then gets into "which programming language to write the display" in, and it turns - again - into a barrel of fish. Specifically, one of those Swedish(?) rotten herring barrels. Ugh.

I even tried using a web-based display with a go backend & react frontend.... but honestly, that seems like massive overkill for a DRO. Plus it's not very fast at updating, and fragile when large amounts of data are being thrown around.

I didn't consider MicroPython, because I hate Python & refuse to learn it. It will be the PHP of the future...

BillTodd:
Interesting, why the hatred of python?  It has become the defacto scripting language for linux, and a lot of neural networks . I think it'll be around a while.

Re using a raspberry pi as a display. That's something I may well do for the grinder project. I'm leaning towards using the existing motors on the Yand Z axes (to save making geared handwheels) and using another pico or two to drive the servo h bridge. Adding a pi might give me enough power to do some simple cnc grinding (of drills etc.)



AdeV:

--- Quote from: BillTodd on January 11, 2024, 01:48:42 PM ---Interesting, why the hatred of python?  It has become the defacto scripting language for linux, and a lot of neural networks . I think it'll be around a while.

--- End quote ---

A few reasons: It's an interpreted script language, which I'm not keen on for starters (I don't like JS much either!); the format of the source code is an integral part of the language, which IMHO makes it harder to read & reason about (especially in a text only paged environment), plus - from what little I've read & seen - it seems to lean heavily on global variables; you can kill one library by importing another that overwrites its keywords...

Probably the biggest for me, though: I've only got a certain amount of brain matter, and I need to know SQL, Typescript, Go, C++, C#, Regex and Bash scripting just for my day-to-day stuff... adding another language in there will force something important out, like remembering to breathe, or how to use a lathe safely! So... it's not for me. It also reminds me a lot of Visual Basic (VB in the early days): One of those languages that "anyone" can learn, then you see what they write & come to the conclusion that whilst anyone CAN learn VB, most probably SHOULDN'T! I also had similar experiences with Microsoft Access ("Anyone can create a database!") - trying to unpick the disaster that someone's created in MS Access is a nightmare, and some years ago, I had to do it multiple times.

So having said all of that: I'm one of those electronics guys that real electronics guys shake their heads about  :lol: :zap:


--- Quote from: BillTodd on January 11, 2024, 01:48:42 PM ---Re using a raspberry pi as a display. That's something I may well do for the grinder project. I'm leaning towards using the existing motors on the Yand Z axes (to save making geared handwheels) and using another pico or two to drive the servo h bridge. Adding a pi might give me enough power to do some simple cnc grinding (of drills etc.)

--- End quote ---

The Pi is great, but I wish there was a microcontroller-esque way of programming it. Waiting for Linux to boot before your program starts is - for DROs and similar - a bit of a chore. Yes, a good hacker can get that boot time down to a handful seconds, but for most of us that's going to be beyond our pay grade: If there were a nice, reasonably simple, IDE where one could burn an SD card that booted bare-metal onto the Pi (but with the ability to access the GPIOs, the HDMI, the network, the sound capabilites... then how cool would that be?  Well - so long as it wasn't Python obviously!  :lol:

Navigation

[0] Message Index

[#] Next page

[*] Previous page

Go to full version