Register a SA Forums Account here!
JOINING THE SA FORUMS WILL REMOVE THIS BIG AD, THE ANNOYING UNDERLINED ADS, AND STUPID INTERSTITIAL ADS!!!

You can: log in, read the tech support FAQ, or request your lost password. This dumb message (and those ads) will appear on every screen until you register! Get rid of this crap by registering your own SA Forums Account and joining roughly 150,000 Goons, for the one-time price of $9.95! We charge money because it costs us money per month for bills, and since we don't believe in showing ads to our users, we try to make the money back through forum registrations.
 
  • Post
  • Reply
evol262
Nov 30, 2010
#!/usr/bin/perl

JawnV6 posted:

I don't see what magic an FPGA brings you.

Reprogrammable silicon.

Adbot
ADBOT LOVES YOU

mod sassinator
Dec 13, 2006
I came here to Kick Ass and Chew Bubblegum,
and I'm All out of Ass

evol262 posted:

Reprogrammable silicon.

A CPU is just as reprogrammable though.

JawnV6
Jul 4, 2004

So hot ...
... ok, perhaps some clarification is in order. I am very familiar with FPGA's and their uses and capabilities.

I am questioning, for this specific problem space, what they're bringing to the table when I can find what seems to be complete solutions on other, boring and traditional, computing substrates.

evol262
Nov 30, 2010
#!/usr/bin/perl

mod sassinator posted:

A CPU is just as reprogrammable though.

It is most assuredly not until you can dump VHDL on it and turn your Haswell into a DAC, SPARC-alike, change pinouts on the fly, or anything else you can do with a FPGA. Even Atmel and other embedded CPUs are still limited in flexibility.

ante
Apr 9, 2005

SUNSHINE AND RAINBOWS
Tbqh a CNC controller isn't exactly rocket science.

mod sassinator
Dec 13, 2006
I came here to Kick Ass and Chew Bubblegum,
and I'm All out of Ass

evol262 posted:

It is most assuredly not until you can dump VHDL on it and turn your Haswell into a DAC, SPARC-alike, change pinouts on the fly, or anything else you can do with a FPGA. Even Atmel and other embedded CPUs are still limited in flexibility.

Sure... but if you're just moving a router bit around on a plane, why do you need to change the digital logic?

evol262
Nov 30, 2010
#!/usr/bin/perl

mod sassinator posted:

Sure... but if you're just moving a router bit around on a plane, why do you need to change the digital logic?

The only real advantage is resiliency if you want a single-board solution in an extremely hazardous environment. So essentially nil, but I'm not all that familiar with CNC itself, and it's entirely possible that reprogrammable logic is helpful for interfacing with commercial CNC equipment.

JawnV6
Jul 4, 2004

So hot ...

evol262 posted:

The only real advantage is resiliency if you want a single-board solution in an extremely hazardous environment. So essentially nil, but I'm not all that familiar with CNC itself, and it's entirely possible that reprogrammable logic is helpful for interfacing with commercial CNC equipment.

I'm really unimpressed that you came in here to explain FPGA 101 without bothering to check the domain-specific solution I recommended for the informed questioner.

Short answer: Reprogrammable logic really doesn't help. The biggest problem is sourcing a few amps to drive the servos and and any FPGA is going to have similar limits to a micro. (fake edit: nah, virtex7 claims 14mA DC pin output where even a cheap ATmega can handle 40mA)

If you really can't be assed to google the specific board I recommended that already solves exactly this problem here are the technical specs. Surprise surprise, parsing assumed-correct gcode just takes a Atmel ATxmega192A3.

evol262
Nov 30, 2010
#!/usr/bin/perl

JawnV6 posted:

I'm really unimpressed that you came in here to explain FPGA 101 without bothering to check the domain-specific solution I recommended for the informed questioner.

Short answer: Reprogrammable logic really doesn't help. The biggest problem is sourcing a few amps to drive the servos and and any FPGA is going to have similar limits to a micro. (fake edit: nah, virtex7 claims 14mA DC pin output where even a cheap ATmega can handle 40mA)

If you really can't be assed to google the specific board I recommended that already solves exactly this problem here are the technical specs. Surprise surprise, parsing assumed-correct gcode just takes a Atmel ATxmega192A3.

This utterly misses the point, and the technical limitations of FPGAs regarding pin output limitations are trivially solved.

Flatly, FPGAs are useful for prototyping something that you want to get fabricated, and neither TinyG nor any given microcontroller solution is appropriate for that class of problems. I didn't come in here to "explain FPGA 101". I'm asserting that parsing assumed-correct GCode and (maybe) talking DNC is not the sum of the problem domain of CNC.

The point of asserting that I don't work with CNC is not to say that "I'm here to explain FPGAs to you, because I don't get CNC", it's that I'm not sure of the future problems on CNC compatibility and proprietary protocols, but the uptake of MESA cards should tell you a lot about problems the RPi kit is trying to solve.

ante
Apr 9, 2005

SUNSHINE AND RAINBOWS
Pretty sure CNC control and FPGAs don't intersect why are we even talking about this?

Cockmaster
Feb 24, 2002

JawnV6 posted:

... ok, perhaps some clarification is in order. I am very familiar with FPGA's and their uses and capabilities.

I am questioning, for this specific problem space, what they're bringing to the table when I can find what seems to be complete solutions on other, boring and traditional, computing substrates.

Accurately driving a CNC machine at decent speed (as well as many robotics applications) requires tight real-time control, something that FPGAs are way better at than a traditional CPU (I hear ARM CPUs in particular don't do so great with real-time control).

booshi
Aug 14, 2004

:tastykake:||||||||||:tastykake:

Cockmaster posted:

(I hear ARM CPUs in particular don't do so great with real-time control).

Nope, they don't. That's why LIRC needs to be used for IR output via GPIO. The pi on it's own cannot handle the timing.

Zuph
Jul 24, 2003
Zupht0r 6000 Turbo Type-R

Cockmaster posted:

(I hear ARM CPUs in particular don't do so great with real-time control).

That has nothing to do with the CPU itself, and everything to do with the software running on it. Linux isn't built for hard real-time operation.

evol262
Nov 30, 2010
#!/usr/bin/perl

Zuph posted:

That has nothing to do with the CPU itself, and everything to do with the software running on it. Linux isn't built for hard real-time operation.

"What is CONFIG_PREEMPT_RT?" It's not VxWorks or QNX, but it's passable.

JawnV6
Jul 4, 2004

So hot ...

Cockmaster posted:

Accurately driving a CNC machine at decent speed (as well as many robotics applications) requires tight real-time control, something that FPGAs are way better at than a traditional CPU (I hear ARM CPUs in particular don't do so great with real-time control).

Care to take a gander at the CPU based CNC controller board I've posted a couple times about and maybe critique that instead of echoing seemingly baseless assertions? It's a shipping product and if they're blatantly lying through their teeth it would be nice to know.

Aurium
Oct 10, 2010

evol262 posted:

This utterly misses the point, and the technical limitations of FPGAs regarding pin output limitations are trivially solved.

Flatly, FPGAs are useful for prototyping something that you want to get fabricated, and neither TinyG nor any given microcontroller solution is appropriate for that class of problems. I didn't come in here to "explain FPGA 101". I'm asserting that parsing assumed-correct GCode and (maybe) talking DNC is not the sum of the problem domain of CNC.

The point of asserting that I don't work with CNC is not to say that "I'm here to explain FPGAs to you, because I don't get CNC", it's that I'm not sure of the future problems on CNC compatibility and proprietary protocols, but the uptake of MESA cards should tell you a lot about problems the RPi kit is trying to solve.

Considering you know the requirements chip you have to drive, the pin output limitations of a microcontroller are borderline trivial. Sure, on a FPGA you can just hook it up to pin x, and on a uC you have to hook it up to pin 8, oh well, the board will be routed slightly differently. Once it's built, it's not like the driver chip is going to change where it's i/o is. And if you move to a different driver, you'd probably have to reroute anyway.

The real reason for the rise of the MESA cards is that the parallel ports, even in industrial computing, are going away and people want an ever increasing amount of i/o data directly into the computer. And for this, yes the parallel capabilities of a FPGA is a great tool. But then you're talking to a PCIe or PCI bus. With the LOGi, the best you're going to see is SPI bus speeds. The non internal bus mesa cards are really just there to support the line and make it look complete. Using the USB one for example will always be hobbled by the fact that USB has huge latency. It'd still be fine for low speed or non synchronous applications. Its the same reason why just about all USB cnc controllers have an onboard interpreter. Different paradigm.

But really, I think bringing up the MESA cards actually explains a lot about your perspective. You're more talking about building more or less arbitrary systems about of much higher level components. If you've already used 30 of your available 35 channels connecting to random stuff, and all you have is a random assortment of pins, and you need a clock, you absolutely need to be able to call one of the last available pins as a clock for the next thing. Or have I mischaracterized your problem?

Going back to the LOGi for a moment. I can see it being a useful GPIO expander and preprocessor, but at the same time, the RPi is a slow machine with a slow bus and doesn't really need the help of a high speed data adapter to swamp it. The beaglebone has more computing power, and is closer to the fast computer + bus + i/o on the bus model. Except it still has a slow bus. It also has plenty of native i/o. Still, to take an ocilloscope as an example, plenty of them are a fpga + an ARM, and you end up with more than the sum of the parts. For motion in particular the RPi could probably use it to get enough i/o to drive a bunch of channels, but I can't help but think that a board with collection of bog standard i2c gpio expanders and motor drivers wouldn't be the more economical solution. It is unfair to compare a general purpose device to an optimized solution though.

evol262
Nov 30, 2010
#!/usr/bin/perl

Aurium posted:

Considering you know the requirements chip you have to drive, the pin output limitations of a microcontroller are borderline trivial. Sure, on a FPGA you can just hook it up to pin x, and on a uC you have to hook it up to pin 8, oh well, the board will be routed slightly differently. Once it's built, it's not like the driver chip is going to change where it's i/o is. And if you move to a different driver, you'd probably have to reroute anyway.

But really, I think bringing up the MESA cards actually explains a lot about your perspective. You're more talking about building more or less arbitrary systems about of much higher level components. If you've already used 30 of your available 35 channels connecting to random stuff, and all you have is a random assortment of pins, and you need a clock, you absolutely need to be able to call one of the last available pins as a clock for the next thing. Or have I mischaracterized your problem?
I think this is exactly the use case of the LOGi, but without the assumption that it's industrial CNC with a fixed budget. Fitting with the Pi's userbase, you're talking about a group of people who may want to change vendors to whatever they got a deal on without a significant investment, and the flexibility of simply reprogramming the FPGA to match requirements without laying out a new board is appealing. While dumping a GPIO expander on would certainly be more economical and more familiar to the average hobbyist, a relatively cheap FPGA opens up a lot of opportunities for inventors who want to lay out arbitrary environments in hardware. Whether that's really useful for CNC is an entirely different question.

beuges
Jul 4, 2005
fluffy bunny butterfly broomstick
I've ordered a whole bunch of Raspberry Pis to deploy in kiosks. They work fine for the most part, but there are a few which stay stuck on that colourful screen on startup and don't proceed to boot. Power cycling gets them started up once in a few tries but they're more stuck than not.
Is there anything simple that I can do to try and sort these out or do I just RMA all of the ones that are doing this?

Fuzz1111
Mar 17, 2001

Sorry. I couldn't find anyone to make you a cool cipher-themed avatar, and the look on this guy's face cracks me the fuck up.
Yeah probably RMA (unless using a different sdcard helps). The only time I have seen that happen is running 1ghz overclocks at stock volts, and even then, only on samples that overclock poorly (the "made in UK" ones in my experience).

Hadlock
Nov 9, 2004

So apparently you can build a joystick using two hall effect sensors, three if you want a throttle, a magnet, and an arduino and the unojoy library, but only has 6 input pins.

Looks like the Adruino Leonardo has 12 analog inputs but only supports keyboard and mouse with no Unojoy support

Actually what'd I'd like is a netduino with unojoy support but that's probably not happening.

Looks like between the Arduino Uno, Sensors and Magnet I'd be about $40 out the door? $30 for an Uno seems steep but maybe I've been spoiled by cheap "hacker" bits/mini computers like the Pi for $35 and Beaglebone Black for $45...

ante
Apr 9, 2005

SUNSHINE AND RAINBOWS
If you treat an Arduino as a less-powerful computer than a Pi, then yeah, it doesn't seem worth it.

Think of it more as instead of having a cheap computer that can do everything kinda well, it's a development package to make as many $2 chips as you want do one thing really well and have guilt-free permanent deployment.

From that perspective, the Arduino is actually really good value for money.

Aurium
Oct 10, 2010

Hadlock posted:

So apparently you can build a joystick using two hall effect sensors, three if you want a throttle, a magnet, and an arduino and the unojoy library, but only has 6 input pins.

Looks like the Adruino Leonardo has 12 analog inputs but only supports keyboard and mouse with no Unojoy support

Actually what'd I'd like is a netduino with unojoy support but that's probably not happening.

Looks like between the Arduino Uno, Sensors and Magnet I'd be about $40 out the door? $30 for an Uno seems steep but maybe I've been spoiled by cheap "hacker" bits/mini computers like the Pi for $35 and Beaglebone Black for $45...

Did you see the leonardo port, LeoJoy?

Cockmaster
Feb 24, 2002

JawnV6 posted:

Care to take a gander at the CPU based CNC controller board I've posted a couple times about and maybe critique that instead of echoing seemingly baseless assertions? It's a shipping product and if they're blatantly lying through their teeth it would be nice to know.

I'm sure the TinyG would work well for most of the hobbyist CNC machines and 3D printers currently out there. The main advantage of an FPGA is that it has the potential to easily allow for more advanced machines (5 axis mills, upgrading stepper motors to servos).

It'd be especially useful for reading encoders - one quardrature encoder requires two interrupt lines to be read by a CPU, and most CPUs have a limited number of them. A decent FPGA could be set up to keep track of as many encoders as one could possibly need.

LtDan
May 1, 2004


Hadlock posted:

So apparently you can build a joystick using two hall effect sensors, three if you want a throttle, a magnet, and an arduino and the unojoy library, but only has 6 input pins.

Looks like the Adruino Leonardo has 12 analog inputs but only supports keyboard and mouse with no Unojoy support

Actually what'd I'd like is a netduino with unojoy support but that's probably not happening.

Looks like between the Arduino Uno, Sensors and Magnet I'd be about $40 out the door? $30 for an Uno seems steep but maybe I've been spoiled by cheap "hacker" bits/mini computers like the Pi for $35 and Beaglebone Black for $45...

You could go with a clone Arduino Uno board like the SainSmart Uno for under $20. I've never used one with the unojoy library but it should be compatible for all intents and purposes.

Barfoid 3
Jun 1, 2013

by Lowtax
Where are the good beagle bone project videos

Barfoid 3
Jun 1, 2013

by Lowtax
I got the beagle bone (the fact that I just needed a USBto hook to my computer. And I got a $~50 electronics basic kit with a breadboard etc. I want to start making baby's first stuff like making an LED blink, etc etcetera. I got the book "getting started with beaglebone". Anyone know of other good resources. There's the book from the beaglebone website but it's $40 and i suspect it's over my head.

mod sassinator
Dec 13, 2006
I came here to Kick Ass and Chew Bubblegum,
and I'm All out of Ass
Adafruit has some tutorials to check out: http://learn.adafruit.com/category/beaglebone

Also if you're totally new to electronics, this is a good book: http://www.amazon.com/Make-Electronics-Discovery-Charles-Platt/dp/0596153740

JawnV6
Jul 4, 2004

So hot ...

Cockmaster posted:

I'm sure the TinyG would work well for most of the hobbyist CNC machines and 3D printers currently out there. The main advantage of an FPGA is that it has the potential to easily allow for more advanced machines (5 axis mills, upgrading stepper motors to servos).

It'd be especially useful for reading encoders - one quardrature encoder requires two interrupt lines to be read by a CPU, and most CPUs have a limited number of them. A decent FPGA could be set up to keep track of as many encoders as one could possibly need.
Thanks for the response! I've met someone from that team and couldn't really get my questions about it across to our machinists. They dove deep into explaining XYXABC/XYZABC and I lost the thread.

You'd really be surprised how many people applying for embedded positions can't come up with the word quadrature.

Barfoid 3
Jun 1, 2013

by Lowtax

mod sassinator posted:

Adafruit has some tutorials to check out: http://learn.adafruit.com/category/beaglebone

Also if you're totally new to electronics, this is a good book: http://www.amazon.com/Make-Electronics-Discovery-Charles-Platt/dp/0596153740

Sick, thanks.

booshi
Aug 14, 2004

:tastykake:||||||||||:tastykake:
Set up my first RetroPie today for some fun with the family for the holidays. Runs great.

As for my main Pi, I'm still trying to find more things I can do with it. Currently, it hosts my personal website, is a minidlna server, and has a few controls via GPIO (IR for TV/stereo/AC/Heat, controls 2 RF controllers for remote sockets/light switches, and controls my buzzer to get into my condo building (that was fun to get cleared)). I also keep the camera module up to check in on my cat (or to stream when we get crazy snow). Any other ideas? I should also note that all of the home automation is almost finished set up with an Android app for control from anywhere, using Google's API for security.

Also, for BeagleBone Black people out there, what is the best route to get wifi working with them? My research project uses Raspberry Pis, so I have an army of 60+ of them, but I recently got the same shield I use for the BBB, but getting wifi to work has been a pain. I'd probably have more luck switching to a Debian-based OS just due to my familiarity with it compared to Arch.

Amberskin
Dec 22, 2013

We come in peace! Legit!

peepsalot posted:

Are there any pi-like low cost boards out there now with a bit more CPU/RAM suitable for GUI desktop stuff. Beaglebone black? Anything else? Looking for a nice little embedded box for a simple public web browser terminal. Seems the pi really struggles on this sort of thing.

http://cubieboard.org

I've got the cubietruck: dual core Cortex-A7 at 1GHz, 2GB of RAM, gigabit ethernet, SATA drive interface. The drawback is the software: it comes with a crappy version of Android installed, and the current version of Cubian (the debian-based distro for the cubies) does not work well with the cubietruck. I have installed lubuntu on mine, and I have got now a decent system running. Ah, and the price tag is a little bit higher (89 USD, case included).

Of course, I use my cubi (as well as one of my raspies) as a headless machine where I run retrocomputing stuff (basically VAX, PDP11 and S/370 stuff), so i can't tell if it would work as a desktop computer.

evol262
Nov 30, 2010
#!/usr/bin/perl

Amberskin posted:

http://cubieboard.org

I've got the cubietruck: dual core Cortex-A7 at 1GHz, 2GB of RAM, gigabit ethernet, SATA drive interface. The drawback is the software: it comes with a crappy version of Android installed, and the current version of Cubian (the debian-based distro for the cubies) does not work well with the cubietruck. I have installed lubuntu on mine, and I have got now a decent system running. Ah, and the price tag is a little bit higher (89 USD, case included).

Of course, I use my cubi (as well as one of my raspies) as a headless machine where I run retrocomputing stuff (basically VAX, PDP11 and S/370 stuff), so i can't tell if it would work as a desktop computer.

It also support Hyp mode.

barnold
Dec 16, 2011


what do u do when yuo're born to play fps? guess there's nothing left to do but play fps. boom headshot
Jesus christ, I have never encountered anything as stupid and inane as the Raspberry Pi troubleshooting process. If somebody could help me out here, it would be greatly appreciated.

I first got my Pi today and opened it up to install the OS. I decided to roll with Raspbian as it is the recommended choice. It successfully finished and I restarted only to get no video. Pressed 1, 2, 3, 4, and nothing. I'd get a nice color gradient splash screen for a few moments, then my monitor would go to "No Signal" and stay there.

I went into the Raspbian IRC for help and was told to format the card and plunk the Raspbian image straight onto it. Well holy loving poo poo guess what, I can't because the initial install partitioned 6.8GB of the 8GB SD card as the loving Ext2 Linux file system. GParted couldn't help me, neither could Ext2 Volume Manager or even Windows' built-in DiskPart or Disk Management. Absolutely NOTHING would fee up that partition for me to image Raspbian directly onto it.

After that, I decided to just go back and try the NOOBS lite installer to see if it would fix itself. I would have used the normal NOOBS installer, but it was 2GB and again, I only had a functional 1.17GB to work with. I followed everything exactly as it should be, popped the card back into the Pi, turned it on, and got absolutely nothing. No blinking ACT light, and as a matter of fact, no reaction from the ACT light at all. Didn't flash when the power was plugged in, never indicated that anything was happening, nothing. So right now I'm out $80 (it was a kit) and 5 hours of my Christmas Day with nothing to show for it but pure frustration. I'm about ready to kick the thing down the stairs and cash in the chips.

ante
Apr 9, 2005

SUNSHINE AND RAINBOWS
http://www.overclock.net/t/1366419/solved-how-can-i-go-about-reclaiming-lost-space-on-sd-card#post_19416298

Amberskin
Dec 22, 2013

We come in peace! Legit!

FFStudios posted:

I went into the Raspbian IRC for help and was told to format the card and plunk the Raspbian image straight onto it. Well holy loving poo poo guess what, I can't because the initial install partitioned 6.8GB of the 8GB SD card as the loving Ext2 Linux file system. GParted couldn't help me, neither could Ext2 Volume Manager or even Windows' built-in DiskPart or Disk Management. Absolutely NOTHING would fee up that partition for me to image Raspbian directly onto it.

I'm not sure if I understand the problem. IIRC you must snap the image over the physical device, not the previous partition. The image itself contains two partitions: a small FAT which holds /boot and the / (root) one in ext* (don't remember if it is ext2 or ext3-4). The root partition is just 2GB, once you have booted the card for the first time you wlll be offered the chance to expand that partition to the whole SD (you can do that also ussing the raspi-config utility at any time).

EDIT: re-reading your last lines, there is a chance you have got a defective raspi. Check if the SD is firmly inserted: that SD reader is lovely (and be careful with it since it's cheapo plastic and breaks easily).

Amberskin fucked around with this message at 02:35 on Dec 26, 2013

barnold
Dec 16, 2011


what do u do when yuo're born to play fps? guess there's nothing left to do but play fps. boom headshot
I put the micro-SD card in my phone for god knows what reason, and using its built-in format tool it somehow obliterated the Linux partition and restored my 8GB. :suicide:

Amberskin
Dec 22, 2013

We come in peace! Legit!

evol262 posted:

It also support Hyp mode.

Could you elaborate a little bit on that? I understand HYP mode is related to virtualization (something akin to VT-x), is that right? And more important, is there any way to use that capabilities under linux?

evol262
Nov 30, 2010
#!/usr/bin/perl

Amberskin posted:

Could you elaborate a little bit on that? I understand HYP mode is related to virtualization (something akin to VT-x), is that right? And more important, is there any way to use that capabilities under linux?

It's that exactly -- hardware virt. Needs a modified uboot (easy), and KVM supports it already.

Dr. Dos
Aug 5, 2005

YAAAAAAAY!
Out of curiosity is there still an awful wait to get a Pi if you order one these days? I ordered mine in June or July as an early birthday present and it showed up in late September, making it an astutely on time birthday present.

But I kind of want the 512mb model and to make the current one into a nice little emulator box.

Adbot
ADBOT LOVES YOU

mod sassinator
Dec 13, 2006
I came here to Kick Ass and Chew Bubblegum,
and I'm All out of Ass

Dr. Dos posted:

Out of curiosity is there still an awful wait to get a Pi if you order one these days? I ordered mine in June or July as an early birthday present and it showed up in late September, making it an astutely on time birthday present.

But I kind of want the 512mb model and to make the current one into a nice little emulator box.

It probably depends where you're ordering from. A site like Adafruit keeps them in stock and only sells when they're available--you should be able to get one pretty quickly there: http://www.adafruit.com/products/998

  • 1
  • 2
  • 3
  • 4
  • 5
  • Post
  • Reply