Show Posts
Pages: [1]
1  Using Arduino / General Electronics / Re: I found this by accident on: October 10, 2012, 07:20:02 pm
Stand-alone computer is already done.  The following might sound like an ad, but not everybody understands what SolderCore and CoreBASIC is, and how it differs from what an Arduino is.  It's somewhat unfortunate that we decided to use an Arduino footprint for SolderCore as this has clearly led to confusion.

You can pop a keyboard on the SolderCore, connect up a VGA monitor using our Arcade Shield, and then run a completely battery-powered Arduino-format "PC".  With a connection to the Internet too!

This is shown in one of the videos that I posted to YouTube.  If you're not interested in this, that's fine, stop reading now.

I simply used a PS/2 keyboard to type in CoreBASIC programs using the built-in editor on SolderCore and then ran them on the SolderCore.  No PC involved.  Full 3D graphics output, full sensor fusion, all battery powered.  You can even see me edit up the program and run it from inside the CoreBASIC editor, immediately after I made the changes.  No recompiles, nothing.  The 3D image is computed using quaternions from the output of the fused sensor data, and the calculations are all written in BASIC.



The code for that demo is available:

http://www.soldercore.com/examples/3d-cube-3.bas

Any program on our server can be downloaded to the SolderCore over the Internet using the EXAMPLE keyword.  The HELP keyword queries the network to present our help documentation as it is on the server: it's not pre-formatted, the SolderCore downloads and interprets the HTML.  And to download a firmware upgrade over the internet to get the latest version of CoreBASIC?  Just type FIRMWARE RUN.

So, how would similar be done on an Arduino, any version?  You're free to chose whatever hardware combination you feel appropriate.  :-)

SolderCore is not an Arduino, and does not even intend to address hard real-time programming.  But what it does have is a little novel.
2  Using Arduino / General Electronics / Re: I found this by accident on: October 10, 2012, 06:41:44 pm
From the links you gave previously, which are to Coridium Corps' website, you have confused the BASIC system they offer (BASICtools or Coridium BASIC) with the SolderCore and CoreBASIC.  None of the features I exposed were part of Coridium's offering simply because the two companies behind the two distinct products are absolutely distinct and the code and people behind the two products have nothing in common.  Coridium don't sell CoreBASIC, and there is no "previous version" of CoreBASIC, this is the first release of CoreBASIC for the SolderCore, Freedom Board, Raspberry Pi, and BeagleBone.

Therefore, whilst you may have read my post carefully, you have made some association between products that simply does not exist.

I happen to be well acquainted with C, having written the CrossWorks C compiler for MSP430, AVR, MAXQ20, and MAXQ30 and can perfectly understand the high-level view of porting an application from one platform to another.  And I also write a lot of the code for CrossWorks' GUI, CrossStudio.  And I also implemented the CoreBASIC firmware and the mass storage an TCP/IP stacks that it is based on from zero, in C, using our own RTOS.  Oh, and all the C runtime support in our products.  So, I think I'm qualified to have an opinion, but then I have not expressed any opinion on Arduino or its ecosystem.  And yes, I even program Arduino using my own dog food.
3  Using Arduino / General Electronics / Re: I found this by accident on: October 10, 2012, 12:15:24 pm
> I thought it kind follows the same arduino path: dumb it down so it can be used by everyone.

Well, that may be a bit hard.

> If that's your strategy, "speed" is 2ndary. Ease of use and beginner-friendliness are king.

You program on the SolderCore iteself.  You telnet into it, so you can use any PC or tablet with a telnet client.  You want to draw a line on an Adafruit TFT display?

INSTALL "ADAFRUIT-TFT-TOUCH-SHIELD"
LINE 0,0 TO 100,100

So, you can do that in a couple of seconds. And you can do it across the Internet, if you wish.

Oh, accelerometers and gyros?  Sure.

INSTALL "ADXL345" AS ADXL
PRINT ADXL.A

That prints the current sensor's readings in g.  Interactively.  Need to change the range or bandwidth?

ADXL.RANGE = 8  ' 8 g range
ADXL.BANDWIDTH = 10   ' 10 Hz bandwidth

Need to create an IMU that fuses accelerometers, gyros, and magnetometers?  Sure, you can do that:

INSTALL "CORE-MPU" AS MPU
INSTALL "AHRS" USING MPU AS AHRS

You can then get heading, pitch, roll, or quaternion output.  You don't need to use that particular board, the AHRS driver will fuse any A, G, M set of sensors to do this for you.  Simple.

I could go on, but obviously, "real programmers" can do this the hard ware in C if they wish.  :-)

-- Paul.
4  Using Arduino / General Electronics / Re: I found this by accident on: October 10, 2012, 05:02:15 am
You might want to look at the Freescale Freedom Board.  The cost of a SolderCore is approximate equivalent to an Arduino Uno and an Ethernet Shield combined, and you don't lose any I/O in the process.  I ported CoreBASIC to the Freedom Board and it runs acceptably quickly.

The idea of SolderCore is to get customers using the hardware to do something, prototyping even faster than Arduino.  It's a no-hassle way to pop on a shield and have it work out of the box, quickly. Or do add sensors and have them work immediately.  CoreBASIC is pretty fast, and the built-in drivers are what make it hassle free.
5  Using Arduino / General Electronics / Re: I found this by accident on: October 09, 2012, 05:23:37 pm
> I'm not a fan of the board, I have a Coridium and it makes a great paper weight, when the fan is off.

Not a fan without even looking at the documentation?

> Supposed to work in basic too I suspect the basic is the same.

Actually, it isn't the same.  CoreBASIC is far more advanced than the Coridium stuff.  It supports complex numbers, quaternions, matrices, and so on.

> Interestingly there is a "Free" C compiler but if you set it up you can't go back to basic... So we have another interpreted Basic like the Stamp...

No, quite unlike the Stamp, in fact.

> That needs a 64 (I think) MHz core to operate...

That would be 80 MHz.  The BASIC interpreter is fast, but is distributed with native-code pre-written drivers for a whole range of sensors, busses, shields, and it even has networking built in and program download and firmware upgrade over the Internet.  And you can debug a CoreBASIC program across the world using an internet connection.  So, I think you're not open minded and are coloured by your exposure to existing products.

> maybe at 2/3rds of the Arduino's speed.

Or maybe not.  You're just supposing.  CoreBASIC can compute things a lot faster than an Arduino in many cases.  Just saying.
Pages: [1]