Show Posts
Pages: [1] 2
1  Development / Other Software Development / Re: New alternative IDE for Arduino on: October 09, 2012, 12:23:16 pm
@tochinet:
not right now, no. Cortex M3 etc. are so different in their architecture that it's not an easy task. Maybe if someone already has finished compatability layers. But it's definitely not a priority. I already worked with PICs and the lpc1769, but their support and documentation is not comparable to AVR/Arduino. That's why I came back here.

@AlxDroidDev:
While being an AVR and therefore possibly 100% compatible it's certainly not pin compatible, to my Atmega328p, so I can't replace it on my devboard. But I'm thinking about creating my own board with an Xmega similar to the Xmegauino.

@VisualMicro:
Well git in my opinion is the best versioning system out there, and it grows to be the most popular as well. github is a very nice platform to do coding on, and most of the libs are already there or in similar repositories like google code. So I'd like to make the IDE git-enabled so it can keep libs up to date. Also it would need something like an XML format as you already said, to identify the libs, give them paraemters etc. But that shouldn't be a big problem. Imo, these XML don't have to be created by the actual lib creators but can be in an own git repository where everybody that wants can collaborate to keep them up to date. Once there's a lot of libs in there, lib creators will want to have their libs in there as well.
This also forces lib creators to use git, which I think is a good thing (or at least any versioning system, doesn't have to be limited to git)
2  Development / Other Software Development / Re: New alternative IDE for Arduino on: October 08, 2012, 05:02:46 pm
Actually another thing I'd like to include in the IDE is git integration together with something like a project and/or library repository where everyone can add their libs in form of a git / github project.
3  Development / Other Software Development / Re: New alternative IDE for Arduino on: October 08, 2012, 10:13:40 am
Actually the Raspberry PI belongs to my colleague and he doesn't really know what to do with it either, he just bought one out of curiosity. I guess it's good if you wanna do network stuff and control a display.
I would probably prefer an Arduino for anything else, since it's easier to see what actually happens on the device. Then again, having 32k ROM and 2k RAM currently is getting a bit difficult.
I'm building an autonomous device and my sketch is already at 30.5k, even though I'm trying to code as efficient as possible. But I guess there's a lot that can be scraped off still if I take a knife to the libraries. (Especially the Ethernet library which has a lot of code that can be removed for my purposes)
4  Development / Other Software Development / Re: New alternative IDE for Arduino on: October 06, 2012, 06:17:16 pm
Hey,

thanks for the feedback. Right now I'm in the final phase of my diploma thesis at my university, so the project will move slowly, but everyone can submit patches / pull requests, if they wanna help me develop.

1)
Sure that's np, but what should the default value be? Maybe a selection on the first start of the program, where you can choose between beginners, advanced or expert mode.

2)
Yeah, so far I have simple ini format files. Xml is a possibility as well, tho i'm not sure if that's necessary. I want the project files to have a lot more information later, especially for libraries.

3)
That's also something I would add to the project file: different Debug levels and what defines have to be used for it, or maybe to simplify it, which include file should be used. Didn't put too much thought into that one yet.

As for the Rasberry PI: I have had one in my hands already, but I haven't used it. No idea what they need / use etc.
My main focus would probably be to get the Ethernet stuff going, so I can flash my W5100 boards without using USB.

If the Arduino Due doesn't come with a new IDE, maybe this IDE could become an option for the community as official IDE as well. I'm not fixed on any part yet and I welcome any open source additions to the project via git.
5  Development / Other Software Development / Re: New alternative IDE for Arduino on: October 05, 2012, 03:00:23 pm
Not to be rude, but please could you discuss the Eclipse stuff in your own thread? I'm trying to get some feedback on my IDE here.

As for combination: you can have multiple ino/pde/cpp/c files and include libraries easily. I'm using MultiWii myself for my Quads.
One possibility that I think would be fitting is to use the Arduino preprocessing on ino/pde files and not to do it on cpp files.

In my opinion, having the preprocessor is not a bad thing pre se, but it's also not helpful if you can't see what it's doing.
So why not make a automatic header file, that's updated whenever you save a file in the project, which contains all the definitions.

This way users can see what's going on and learn from it.
6  Using Arduino / Programming Questions / Re: Need hint, time get lost... on: October 04, 2012, 12:43:02 pm
Maybe the delay(10) which delays your main loop for 10ms whenever there's serial data. Depends on your serial traffic, but I don't see anything else that would be as obvious.

BTW: While PaulS is kinda talking down to you, you're still the one asking for help and even though he's not helping you with the question you asked, he still gave you some valuable advice.
So if you don't want to discourage other people to help you, maybe show a bit less attitude?
7  Development / Other Software Development / Re: New alternative IDE for Arduino on: October 03, 2012, 09:25:44 pm
That's nice. For me Eclipse is no option tho, since I really dislike it personally. It also has a huge unnecessary overhead. For me it's like cutting bread with a swiss army knife.
8  Using Arduino / LEDs and Multiplexing / Re: Cheap addressable RGB strip - how to control? on: October 03, 2012, 05:21:10 pm
Well it's not the standard serial either. And in my opinion the strips are completely useless for anything else than decoration. You could disassemble the controller and try to use it as a remote switch maybe.

In another project I disassembled a cheap remote control for airplanes and found a very similar looking protocol (if you can call it that), so maybe it's some weird china standard that I don't know about.

Here's the old pde file from the software I wrote. Not sure if it's the newest version, but it contains some of the defines and timings.

Most important part is probably this:
Code:
//                      cccccc-ddddddd
//#define RAINBOW+COL 0b111110 011***1 // shifts a pixel for pwm
//#define SWIPE+M1+M2 0b111110 010***1
//#define SWIPE+MYST1 0b110010 010***1
//#define CMD_SETPWM  0b10**100010***0 // pwm speed for fading
//#define CMD_SHIFT   0b1***10 011***1 // shifts a pixel into the register
//#define SWIPE+MYST2 0b011110 010***1
//#define CMD_CLS1    0b01**10 0111*00 //?? before foreground paint, set background as well
//#define CMD_BG      0b01**10 0110*00 // paint background
//#define CMD_SWIPE   0b010010 010***1 //?? responsible for program 69
//#define CMD_CLS2    0b001010 0100000 //?? before background paint
//#define CMD_FG      0b00**10 0101*00 // paint foreground
//#define CMD_EMPTY   0b000010 0100001 // shifts pixels, removed bg, but not all of it

It took me quite a long time of fiddling with my oscilloscope, simply trying out all possibilities and combinations and some logical thinking to come up with the stuff. I think I had a better documented file as well, I'll have a deeper look later.

Warning:
some of the information in the document is probably conflicting and outdated.

Full file:
http://pastebin.com/2J8hcfEc
9  Development / Other Software Development / Re: New alternative IDE for Arduino on: October 03, 2012, 05:12:57 pm
What does this mean? No combining of .ino files?
Quote
that this IDE does *not* (on purpose) preprocess the source files before compilation like the original IDE

That means, that the source files are left untouched before being passed to the gnu preprocessor and compiler. So #includes won't be inserted, *.inos won't be combined, function headers won't be auto-created etc.
I rather have it a bit more complicated than unpredictable / problematic. I wouldn't be opposed to add it and make it turned on by default as long as you can turn it off easiy.
10  Using Arduino / LEDs and Multiplexing / Re: Cheap addressable RGB strip - how to control? on: October 03, 2012, 07:49:14 am
Interesting that this thread got revived at some point.

I can tell you guys a bit more about what I found out myself. At one point I pretty much figured out the entire mechanism behind it, it's very unusual (at least to what I'm used to).

Unfortunately this is quite some time ago and I'm unsure if I still have any of my documents to this. In the end it turned out that this strip is useless for anyone who want's to address single LEDs fast.

There is one command that just shifts in a new color from the left but there's no latch, so the shift is done at once. The frequency you can do that with is not satisfying since when you go to the max (which I belive was something like 30 Hz for 5m) you get weird artifacts due to the missing latch. Also you cannot shift any color, but only red, green or blue or any on/off combination of those (yellow, white, etc.).

To get PWM you have to send another command where you make the strip mix all of it's current colors with the neighbouring color to the right or the left. And there's some other stuff, mixing segments of the strip etc.

If anyone is seriously interested, I can look for the documents, I might still have them on another PC.

In general I got to the conclusion that this strip is absolutely useless for anything else than what the controller that comes with it does. So if you just wanna light your room this one might be for you, but if you want to address each LED to display something then you should go for a different strip, which is also what I did.

My strip now serves as a remote controlled ceiling light for a friends living room.



PS:
There's no data/clock line. It's more like two intermixed serial lines with varying bit times within the single bits. And also command and value bits are mixed. It's a huge mess.
11  Development / Other Software Development / New alternative IDE for Arduino on: October 01, 2012, 03:52:00 pm
Hey guys,

I'm currently working on a somewhat complex project for Arduino and I got a bit frustrated with the simplicity of the Arduino IDE. So I decided to create my own IDE that also will eventually include my bootloader for flashing via ethernet. (which already exists in the playground).

I opened up a github repository for this, feel free to give it a try and help me develop.
Warning: it's still in an early phase, I won't take any responsibility for any potential harm this program does. Make sure to back up your files. Use at own risk.

https://github.com/Emmeran/Ethernet-Flasher-IDE

Basically it's a QsciScintilla file editor with some project and library management added. It will compile the arduino core and your application as specified in the build profiles.
Please note, that this IDE does *not* (on purpose) preprocess the source files before compilation like the original IDE.
If you want to use libs, you have to right click "Libs", click "Add Library..." and select the library folder from where you stored it.

This program isn't meant to replace the orginial Arduino IDE but might be nice for more experienced programmers that want to have some more options.

In the future I want to add API files for the autocompletion, the Ethernet bootloader, a bootloader flashing method, upload support for the EthernetFlasher, examples, new project wizzards and other goodies.



Let me know what you think,

Cheers,
Emmeran
12  Using Arduino / LEDs and Multiplexing / Cheap addressable RGB strip - how to control? on: October 06, 2011, 08:54:54 pm
Hey guys,

I found this rather cheap RGB LED strip on eBay:
http://cgi.ebay.com/ebaymotors/12V-Waterproof-5M-IC-D7001-digital-RGB-versatile-led-strip-l-controller-/220849026721?pt=Motors_Car_Truck_Parts_Accessories&hash=item336ba0b6a1

It arrived yesterday and I was planning on putting it behind the projector screen in my living room to do some atmo light. But as it turns out the strip doesn't use a shift register as one would suspect, at least not in the common sense.

I used my scope to try and reverse engineer what I need to send to the strip, but turns out it's doing some weird stuff and I'm unable to find any documentation anywhere.

Here's what I found so far, maybe somebody knows what this is:

The strip has four wires: GND +5V DTI CKI
DTI and CKI are on another source online called DAT_RECV and CLK_RECV so I was assuming a shift register with data and clock.

The scope told me a different story. There is a ~7bit signal both on CKI and DTI (but different ofc). Here's the timing of a "shift pixel" command in 10ths of microseconds (0.1us): (| means a falling/rising edge)
// DTI + 32 | 10 , 14 | 26 | 16 , 16 | 18 , 16 | 18 , 18 | 14 , 20 | 12 , 22 | 14 +
// CKI | 32 , 10 | 14 , 26 , 16 | 16 , 18 | 16 , 18 | 18 , 14 | 20 , 12 | 22 , 14 |   

Both lines are high by default, CKI becomes LOW, 3.2us later DTI becomes low as well, 1.0us later CKI rises to HIGH again etc.
Finally CKI becomes HIGH 1.4us after DTI.

Each of the areas between two | depict one bit. Both CKI and DTI are used to transfer actual data (or I'm misunderstanding something completely).

So far I achieved to do some stuff, like shifting pixels through the strip, but only in the direction of the shift register and only in RGB + mix of full red, full green etc. The controller that came with it is able to do all kinds of nice effects, but it seems that the ucs on the strip are doing some of the controlling themselves (1 uc handles data i/o tells 2nd uc what to do. 2nd uc controls 8 rgb LEDs => 24 channel LED driver).

Thanks for any help and sorry for the long post! smiley

I hope it'll be possible to hack this strip, since adafruits alternative has the disadvantage of price and availability. :-/
13  Using Arduino / Microcontrollers / Re: Using Timer1 on Arduino Ethernet on: September 25, 2011, 09:05:47 pm
Well no, sorry, that makes no sense.

The solution is this:
Code:
TCCR2A = (TCCR2A | _BV(COM2B1)) & ~(_BV(COM2B0) | _BV(COM2A1) | _BV(COM2A0));

plus (what I didn't do previously) changing all OCR2A's to OCR2B's.

Thanks anyways.
14  Using Arduino / Microcontrollers / Re: Using Timer1 on Arduino Ethernet on: September 25, 2011, 06:40:21 am
Thx,  tried that (with TCCR2A tho, I believe that's a mistake on your side), but it didn't work.
Not on the Arduino Ethernet nor on the Uno.
15  Using Arduino / Microcontrollers / Using Timer1 on Arduino Ethernet on: September 24, 2011, 04:25:08 pm
Hi guys,

I want to use timer 1 for Arduino PCM as described in the playground (www.arduino.cc/playground/Code/PCMAudio) on my Arduino Ethernet while also using the Net features. Is that possible?

It uses non-inverting PWM on OC2A which apparently is pin 11 and therefore MOSI on SPI. My app didn't work. Does that mean it's not possible or is there maybe a way to change the pin to another.

Thx
Pages: [1] 2