6 ms·
They're all shit. Get a Lenovo mini PC off eBay and stick Debian on it. I replaced my shitty Pi with a Lenovo M600. If you want a dependable computer, stay awa
by baz00 3y ago
They're all shit. Get a Lenovo mini PC off eBay and stick Debian on it. I replaced my shitty Pi with a Lenovo M600.
If you want a dependable computer, stay away from pseudo-embedded hardware.
- LispSporks22 3y agoI like this idea, but what do you do for GPIO (and SPI, I2C etc.)?
- synack 3y agoArduino or similar over USB.
- petsfed 3y agoThis is, in almost every respect, the better way. Any non-real-time operating system will eventually get a little bit buggy around timing intensive operations like I2C or (especially) SPI. Better to have your GPIO operations performed by a dedicated micro that only handles your serial traffic and whatever pin-twiddling operations you need to do. Ideally, your serial traffic is in a binary protocol like MODBUS-RTU, so your traffic parser is as fast as possible. Bitbanging I2C or SPI is tedious but generally pretty achievable in a bare-metal application. But unless you're hacking your kernel to force that kind of timing fidelity, bit banging on an RPi running Debian is just impossible.
- megous 3y agoSounds like this would be very annoying compared to a SBC. You have typically several SPI, UART, I2C, gpio interfaces on the pin header on usual ARM SBCs. Ready to use from Linux via standard API, using DMA, etc.
- petsfed 3y agoI once had a very simple I2C operation performed on an Orange Pi running project nerves. I had to add a try-again loop to the I2C operation, because the underlying OS kept disrupting the I2C timing. I2C is generally run between 100-400 KHz, so you'd think it wouldn't be an issue, but it definitely was. You can get around this by patching the kernel to carve out timing protection for those operations, but speaking as a firmware programmer, if I'm patching the kernel to avoid writing a simple arduino sketch, I've made some pretty deep mistakes.
- megous 3y ago100 khz is still very fast, with sub-millisecond I2C tranfers possible. You'll have the same issue on any SBC running Linux. You'd need to carefully use realtime process scheduling, if you want more predictable timing on a general purpose OS for such stringent timing requirements.
- baz00 3y agoThis is the correct solution. What I see a lot of is people trying to cram all sorts of shit into a Pi and expecting everything to work properly. I actually wrote a fairly small event-driven kernel for AVR parts a few years ago called XOC "exec-or-communicate" which could do small real-time tasks easily (combinational logic, state machines, interrupt handling) and delegated complicated ones to a host machine over virtual serial port. It was used for a metering system I developed. The AVR side could withstand a complete host failure and reboot.
- kcb 3y agoOr esp32 over wifi.
- westurner 3y agoUSB to 2x20 pin GPIO (like Raspberry Pi have) should be easy. Found this: "Ryanteck RTk.GPIO (PC GPIO Interface)" https://uk.pi-supply.com/products/ryanteck-rtk-gpio-pc-gpio-interface https://uk.pi-supply.com/products/ryanteck-rtk-gpio-pc-gpio-... gpiozero > Remote GPIO: https://gpiozero.readthedocs.io/en/stable/remote_gpio.html https://gpiozero.readthedocs.io/en/stable/remote_gpio.html : > GPIO Zero supports a number of different pin implementations (low-level pin libraries which deal with the GPIO pins directly). By default, the RPi.GPIO library is used (assuming it is installed on your system), but you can optionally specify one to use. For more information, see the API - Pins documentation page. > One of the pin libraries supported, pigpio, provides the ability to control GPIO pins remotely over the network, which means you can use GPIO Zero to control devices connected to a Raspberry Pi on the network. You can do this from another Raspberry Pi, or even from a PC. Presumably, e.g. TLS to secure that control channel is your responsibility. Parallel ports > Pinouts: https://en.wikipedia.org/wiki/Parallel_port#Pinouts https://en.wikipedia.org/wiki/Parallel_port#Pinouts "The parallel port" (2023) https://news.ycombinator.com/item?id=34585216 https://news.ycombinator.com/item?id=34585216 Serial port: https://en.wikipedia.org/wiki/Serial_port https://en.wikipedia.org/wiki/Serial_port UART: Universal asynchronous receiver-transmitter: Serial TTL: https://en.wikipedia.org/wiki/Transistor%E2%80%93transistor_logic#Serial_signaling https://en.wikipedia.org/wiki/Transistor%E2%80%93transistor_... : > TTL serial refers to single-ended serial communication using raw transistor voltage levels: "low" for 0 and "high" for 1. [31] UART over TTL serial is a common debug interface for embedded devices. "Possible to use a 9 Pin Serial port as "GPIO" using ioctl()?" https://stackoverflow.com/questions/27789099/possible-to-use-a-9-pin-serial-port-as-gpio-using-ioctl https://stackoverflow.com/questions/27789099/possible-to-use... D-subminiature > Typical applications > Communications ports: https://en.wikipedia.org/wiki/D-subminiature#Communications_ports https://en.wikipedia.org/wiki/D-subminiature#Communications_... Crosstalk: https://en.wikipedia.org/wiki/Crosstalk https://en.wikipedia.org/wiki/Crosstalk "Can you hotwire this computer to transmit a tone through the radio?" https://www.getyarn.io/yarn-clip/aac07d77-c6d6-4da7-bdd3-b93de8ea229d/gif https://www.getyarn.io/yarn-clip/aac07d77-c6d6-4da7-bdd3-b93... https://en.wikipedia.org/wiki/Air-gap_malware https://en.wikipedia.org/wiki/Air-gap_malware
- mianos 3y agoESP32s. So easy. As well supported as any RaspberryPi. Proper real time on the metal. Interrupts. Native i2c, i2s, spi, serial with a cross-plane so you can re-route most pins around, depending on the board and a few minor caveats.
- ghusto 3y agoI've been using one for my media centre for many years, only swapping it out for newer versions for the performance upgrades. No issues here, and things like CEC are plug'n'play.
- coolliquidcode 3y agoIf you are hobbling with a PI it's all about the community support, form factor, low power and the header pins. Hopefully if you are buying a Pi you already have a specific project in mind. For example: I use a few zero 2 w's with shairport-sync to make Airplay stereos. I use the header pins to control a relay to turn on and off an audio amp. Pi 4+ would actually work a lot better for this especially when playing audio on multiple of these setups at once. A Lenovo mini pc wouldn't be as easy to hide.
- baz00 3y agoI wouldn't go too far down the "community support" thing with the RPi foundation. Careful if you say anything negative, even in a constructive tone, in case Liz shuts your threads down. I had some problems with brownouts on the RPi 2 and posted a technical thread. It was deleted and my account terminated. There are various reports of this from community refugees who switched to other platforms.
- coolliquidcode 3y agoI guess by community support is if you want to build something you'll find 100 tutorials on how to do it or it will even be part of the GitHub project. I never visit the official forums. These community mods are crazy with the little bit of power given. I had similar issues with arstechnica.com before it became an echo chamber.
- jLaForest 3y agoBut that mini PC likely has as much as 10x the power draw... They are not interterchangable for lower power use cases
- auspiv 3y agoNo they don't. I have a Dell Optiplex 3070 SFF (not even ultra small form factor, it is standard desktop sized) that idles at 8W. It has an i5-9500, 8GB memory, and a 128GB NVMe.
- megous 3y agoVarious Orange Pi boards idle at 1-1.5W. The latest ones around 2.4W (not optimized, yet).
- sangnoir 3y agoMy Rpi Zero idles at 0.2W - it's nor in the same computing class as SFF/NUCs. I don't run a homelab in it; and I find it ideal for ambient, always on compute/networking/monitoring tasks
- darkwater 3y agoThat's not totally true. I have a Dell Optiplex mini-PC version (and not that new) and it draws on average 10W, which is surely more than a RPi4 but not 10 times.
- megous 3y agoFarily comparable RK3399 idles at 1.1W.
- da768 3y agoDepends, there are Celeron N systems in the <2W idle territory thanks to the smaller node process.
- smarx007 3y agoAs a reminder, Pi 5 no longer recommends to use the 15W supply recommended for Pi 4 and suggests a 25W one instead.
- greggsy 3y agoThey’re an order of magnitude more powerful than a Pi or a clone, and are much easier to deal with from a compatibility standpoint. The power considerations are pretty negligible from a cost per year perspective. I really only use mine for pseudo IOT applications where space is a factor, like for OctPi and a Shairplay receiver.
- zalthor 3y agoWhat’s the power consumption on that? The biggest draw for these machines (to me at least), is how they seem to run on a 5w power source.
- auspiv 3y agoTry to run even a Pi 3 on 5W and let me know how it goes. You'll get undervolt warnings like crazy. Not sure if you looked at the article but these are the power adapters listed. These SBCs are not exactly low power anymore: 5V/5A (USB-C) 5V/4A (USB-C) 5V/5A (USB-C)
- petsfed 3y agoYou might be able to run on a 5W supply, but my experience is that booting on a less than 15W supply is a recipe for corrupted SD cards and hard-to-trace bugs. My biggest frustration with hobbyist boards is how little power the can source to e.g. the USB ports. Its super frustrating to need a powered USB hub to add e.g. a USB indicator light. The fact that you can power the RPi from the powered USB hub seems hacky, but maybe that was always the intent.
- doubled112 3y agoI sure wish I could get my Pi 4 to boot with a powered USB hub attached. After trying three I gave up.
- snvzz 3y agoBy all means, use a good power source. Yet note that a good power source doesn't mean that these SBCs will suddenly draw 15W sustained. Average draw will be much lower than any of these NUC-like devices. e.g. my VisionFive 2 is below 4w.
- baz00 3y agoM600 idles around 5-8 watts. If you spank it hard it gets up to 12W. That has a 500Gb SATA SSD and 8Gb of RAM and ethernet. Note that the M600 does not have any active cooling. The entire unit is a big heatsink. The thing will run as a headless network computer with just the power supply (a proper Lenovo SMPS brick) and an ethernet port connected.
- beebeepka 3y agoAfter my 3b+ died and the 4 was nowhere to be found, my enthusiasm kind of shifted towards something even crazier - Ryzen 7840 based machine for 5x the price. Since these SBCs keep getting pricier and need active cooling while software is still far from ideal, it's not that big of a jump.
- naikrovek 3y agodo you have strong opinions on the matter? geez
- baz00 3y agoIt's called experience. Most of it negative.
- naikrovek 3y agoevery person I know who has had problems with the Pis has had problems because they've cheaped out on either storage or power supply. the official power supplies (and others with the same ratings) are only sufficient if you don't plug anything into the USB port, don't have any hardware drawing power from the GPIO, and don't utilize Bluetooth and wifi 100% of the time at full throughput or anything. boot to a fast thumb drive, power the board via a 30W or more power supply, and get an onboard battery so in the rare event that the onboard power regulation can't keep up, a battery powered supply can deliver power through the GPIO pins. Raspberry Pis are built down to a price point, not up to a quality level. they are extremely good per unit of money spent on them, but they are not perfect. calling them "shit" shows a general lack of understanding, to me.
- baz00 3y agoOh no they are shit. And I used to design embedded systems years ago. I know exactly what I'm talking about. And you basically outlined it: they are bad quality and we have all these power problems and here's the insane list of workarounds. Incidentally I ran mine of an Agilent E3614A which was worth 30x the price of the Pi.
- naikrovek 3y agothey aren't industrial embedded computers, so comparing them to some $1500 hardened industrial embedded platform is not only unfair, it's not a comparison that's respectful of the other participants in the conversation. you're relying on people not knowing about embedded hardware so that it appears your comparison is fair. The Raspberry Pi is not an embedded platform in the ways that you are using for comparison. The Raspberry Pi is an educational platform.
- hyperdimension 3y ago> some $1500 hardened industrial embedded platform It's just a (respectable( power supply. I'm assuming OP just wanted to say that power quality was not the issue.
- ianburrell 3y agoThere are multiple uses for the Pi. The mini PC is good are being computer, which Pi really isn't good at. But the mini PC can't do the other uses. For example, the mini PC doesn't run on PoE. It won't fit in enclosure and can't put it on pole outside. But that is what I'm planning to do with Pi for ADS-B receiver. The mini PC doesn't have PPS support or ability to install GPS receiver. That is what I need for Stratum 1 time server. A lot of things I want to do just need USB. The question is if one PC or multiple Pis is better. I like idea of Pi per task since are independent units.
- SillyUsername 3y agoAttach a BT or old fashioned wired GPS to it over USB...
- pastage 3y agoYou need to attach the GPS and its PPS pin (Pulse per second) to the gpio on the rpi. Gives you microsecond NTP, pretty cool if you need that. It can be used to sync network, radios and audio over long distances.