Rank: Newbie
Groups: BetaUser, Registered Joined: 7/2/2015(UTC) Posts: 1
|
Hi I love Embrio a lot and want to use it on Teensy 3.1 , it is very small and powerful controller. ( https://www.pjrc.com/teensy/teensy31.html ) I can program Teensy with the standard Arduinu IDE ( after installing Teensyduino add on ) Can I use Embrio to program Teensy ?? Thanks Daniel
|
|
|
|
Rank: Administration
Groups: Administrators
Joined: 12/11/2014(UTC) Posts: 661
Thanks: 1 times Was thanked: 109 time(s) in 104 post(s)
|
Yes it should work. Embrio writes Arduino programs then uses the command line for the Arduino to compile and upload them. There's a text file that tells Embrio about the different boards and how to call them, C:\Users\<UserName>\AppData\Roaming\Embrio\pininfo.txt. Before you get started, download this version to that location: http://embrio.io/uploads/pininfo.txtThen open the file and make a new Info entry. The only tricky part might be the value for Tag. I think the best way to figure out what that value needs to be is compile and upload something to the Teensy through the Arduino IDE with verbose mode on and see what it uses. If you get it working, could you please paste the Info entry here for reference for others?
|
|
|
|
Rank: Advanced Member
Groups: BetaUser, Registered Joined: 9/28/2015(UTC) Posts: 31
Thanks: 1 times Was thanked: 5 time(s) in 5 post(s)
|
Is there any update to this? I really want to buy this software, but it is not ready for my needs yet, because I use DUE and Teensy the most..... these are two boards that this software does not support.
I have Embrio 1.2.5.0 and when I add this pininfo.txt file to the path stated, the software seems to replace the file using the C:\Program Files (x86)\Embrio (Windows 10) and overwriting the file I replaced with a Backup with the date attached. I have tried replacing both keeping backups, and this causes the software to think that I need to install the newest version of arduino ide 1.6x. I presently have 1.6.5 installed which works flawlessly.
I really wish this would work. Thanks Greg
|
|
|
|
Rank: Administration
Groups: Administrators
Joined: 12/11/2014(UTC) Posts: 661
Thanks: 1 times Was thanked: 109 time(s) in 104 post(s)
|
I'll check it out. It shouldn't be a problem but might require some fiddling.
|
1 user thanked EmbrioAdmin for this useful post.
|
|
|
Rank: Advanced Member
Groups: BetaUser, Registered Joined: 9/28/2015(UTC) Posts: 31
Thanks: 1 times Was thanked: 5 time(s) in 5 post(s)
|
Thank you for the prompt answer, I will be looking forward to any solutions.
Thank you, Greg
|
|
|
|
Rank: Administration
Groups: Administrators
Joined: 12/11/2014(UTC) Posts: 661
Thanks: 1 times Was thanked: 109 time(s) in 104 post(s)
|
There's a installed version of pininfo.txt in c:/Program Files/Embrio. On startup, if its Version Number (the first tag in the file) is greater than the one in C:\Users\<UserName>\AppData\Roaming\Embrio it makes a backup of the local one and copies the installed one. Could the one in your local path be older than the installed one?
Anyway I added a workaround in the last version which might be easier to use. In View -> Options, check "Upload to last board set in Arduino IDE" . Then upload to the board in the Arduino IDE, close the IDE so its settings are saved, then upload via Embrio. It should work, Embrio will compile then tell Arduino to upload using its last settings.
Let me know if that works. I haven't used those 2 boards, but this workaround should work for anything you can upload to via Arduino.
|
|
|
|
Rank: Advanced Member
Groups: BetaUser, Registered Joined: 9/28/2015(UTC) Posts: 31
Thanks: 1 times Was thanked: 5 time(s) in 5 post(s)
|
Looks like the Boards are able to download, but the issue is the pininfo.txt file that will not take to the file AppData\Roaming\Embrio path. Is there an override type pininfo.txt file that I can utilize for this?
|
|
|
|
Rank: Administration
Groups: Administrators
Joined: 12/11/2014(UTC) Posts: 661
Thanks: 1 times Was thanked: 109 time(s) in 104 post(s)
|
Are you saying that the pininfo.txt file in the installed directory is being copied into the local directory, even if the version numbers match? If so your pin info should be copied as a backup in the local folder with the current date. Is that happening? It's working as expected for me but I could have missed something.
Eventually I'll make it so you can edit this stuff in the software or something so we don't have to manually edit the text file.
|
|
|
|
Rank: Advanced Member
Groups: BetaUser, Registered Joined: 9/28/2015(UTC) Posts: 31
Thanks: 1 times Was thanked: 5 time(s) in 5 post(s)
|
I think I almost got this to work. I will let you know, the pininfo.txt may have a type-o that is causing my headache thinking it can't translate the file, therefore Embrio is thinking it is not the right version giving me the "Need to install 1.6 must have installed the 1.0" at the bottom left where you select what board to use.
Thanks Greg
|
|
|
|
Rank: Advanced Member
Groups: BetaUser, Registered Joined: 9/28/2015(UTC) Posts: 31
Thanks: 1 times Was thanked: 5 time(s) in 5 post(s)
|
Everything works great so far since the last update 1.2.8.. I can now finally simulate the DUE using the Embrio environment. The only thing I was wondering, is how to utilize the Analog Output DAC0 and DAC0. Are we just supposed to use Custom node? The options for Analog Outputs are only for the Pulse width modulating type.
Thanks Greg
|
|
|
|
Rank: Advanced Member
Groups: BetaUser, Registered Joined: 9/28/2015(UTC) Posts: 31
Thanks: 1 times Was thanked: 5 time(s) in 5 post(s)
|
Sorry, I meant DAC0 and Dac1.
|
|
|
|
Rank: Administration
Groups: Administrators
Joined: 12/11/2014(UTC) Posts: 661
Thanks: 1 times Was thanked: 109 time(s) in 104 post(s)
|
That's something I haven't learned about yet. For now use a custom Arduino node, it shouldn't be too hard to make but if you run into trouble let me know. If you make one, please consider posting it to the library so others can use it.
|
|
|
|
Rank: Newbie
Groups: Registered
Joined: 5/11/2015(UTC) Posts: 8
Thanks: 1 times
|
I'm still a little unclear..will I have any problems with a Teensy?
|
|
|
|
Rank: Administration
Groups: Administrators
Joined: 12/11/2014(UTC) Posts: 661
Thanks: 1 times Was thanked: 109 time(s) in 104 post(s)
|
I haven't tested a Teensy myself yet. I thought I bought one but can't seem to find it... I'll keep looking.
You should be fine using the "Upload to last board set in Arduino IDE" check box in the options form after you successfully upload via the Arduino IDE. I'll need to add an entry to pininfo.txt for it to show up as a selection in Embrio. I'll try to do that soon.
|
|
|
|
Rank: Administration
Groups: Administrators
Joined: 12/11/2014(UTC) Posts: 661
Thanks: 1 times Was thanked: 109 time(s) in 104 post(s)
|
If you do run into a problem it would be that the Teensy compile process has a different output than I've seen before, so the messages that Embrio looks for to know the upload happened correctly might not be there, in which case Embrio will look like it has some vague connection error. If that happens try pressing the connect button again. If that does happen or you have an issue let me know.
|
|
|
|
Rank: Member
Groups: BetaUser, Registered Joined: 12/6/2015(UTC) Posts: 10
|
I tried this just now, and it doesn't quite work. I successfully created a Teensy entry in pininfo.txt, using tag teensy:avr:teensy31.
When attempting to connect (and, I assume, upload the connection program) I get the error
invalid conversion from 'byte*' {aka unsigned char*} to 'char*' [-fpermissive] initializing argument 1 of size_t usb_serial_class::readBytes(char*, size_t) [-fpermissive]
For anyone else who wants to follow in my footsteps, I used the following section for my pininfo.txt, which is the furthest I got:
<Info> <BoardName>Teensy 3.1</BoardName> <Tag>teensy:avr:teensy31</Tag> <DigitalPins> <Pin> <Name>D0</Name> <Code>0</Code> </Pin> <Pin> <Name>D1</Name> <Code>1</Code> </Pin> <Pin> <Name>D2</Name> <Code>2</Code> </Pin> <Pin> <Name>D3</Name> <Code>3</Code> </Pin> <Pin> <Name>D4</Name> <Code>4</Code> </Pin> <Pin> <Name>D5</Name> <Code>5</Code> </Pin> <Pin> <Name>D6</Name> <Code>6</Code> </Pin> <Pin> <Name>D7</Name> <Code>7</Code> </Pin> <Pin> <Name>D8</Name> <Code>8</Code> </Pin> <Pin> <Name>D9</Name> <Code>9</Code> </Pin> <Pin> <Name>D10</Name> <Code>10</Code> </Pin> <Pin> <Name>D11</Name> <Code>11</Code> </Pin> <Pin> <Name>D12</Name> <Code>12</Code> </Pin> <Pin> <Name>D13</Name> <Code>13</Code> </Pin> </DigitalPins> <AnalogInputPins> <Pin> <Name>A0</Name> <Code>0</Code> </Pin> <Pin> <Name>A1</Name> <Code>1</Code> </Pin> <Pin> <Name>A2</Name> <Code>2</Code> </Pin> <Pin> <Name>A3</Name> <Code>3</Code> </Pin> <Pin> <Name>A4</Name> <Code>4</Code> </Pin> <Pin> <Name>A5</Name> <Code>5</Code> </Pin> </AnalogInputPins> <PWMOutputPins> <Pin> <Name>D3</Name> <Code>3</Code> </Pin> <Pin> <Name>D4</Name> <Code>4</Code> </Pin> <Pin> <Name>D5</Name> <Code>5</Code> </Pin> <Pin> <Name>D6</Name> <Code>6</Code> </Pin> <Pin> <Name>D9</Name> <Code>9</Code> </Pin> <Pin> <Name>D10</Name> <Code>10</Code> </Pin> </PWMOutputPins> </Info>
|
|
|
|
Rank: Administration
Groups: Administrators
Joined: 12/11/2014(UTC) Posts: 661
Thanks: 1 times Was thanked: 109 time(s) in 104 post(s)
|
Thanks for the update.
Could you try uploading the compiled program manually? It gets saved to C:\Users\<UserName>\AppData\Roaming\Embrio\ArduinoCompile. If that works there may be something we can do with the Tag in pininfo.txt. If not there might be some more work than I realized getting Embrio to work with the Teensy that I'll have to look into.
|
|
|
|
Rank: Advanced Member
Groups: BetaUser, Registered Joined: 9/28/2015(UTC) Posts: 31
Thanks: 1 times Was thanked: 5 time(s) in 5 post(s)
|
The downloading of Teensy does work, but using connection to simulate the program will not. This is the one of the errors that transpires when trying to compile the application from ArduinoCompile program created by Embrio:
Arduino: 1.6.5 (Windows 8.1), TD: 1.24, Board: "Teensy++ 2.0, Serial, 16 MHz, US English"
C:\Program Files (x86)\Arduino/hardware/tools/avrteensy/bin/avr-g++ -c -Os -g -Wall -ffunction-sections -fdata-sections -MMD -fno-exceptions -felide-constructors -std=c++0x -mmcu=at90usb1286 -DTEENSYDUINO=124 -DARDUINO=10605 -DF_CPU=16000000L -DARDUINO_ARCH_AVR -DUSB_SERIAL -DLAYOUT_US_ENGLISH -IC:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy C:\Users\Greg\AppData\Local\Temp\build2018557039945896630.tmp\ArduinoCompile.cpp -o C:\Users\Greg\AppData\Local\Temp\build2018557039945896630.tmp\ArduinoCompile.cpp.o
ArduinoCompile.ino: In function 'float ReadFloat()': ArduinoCompile.ino:18:28: error: invalid conversion from 'byte* {aka unsigned char*}' to 'char*' [-fpermissive] In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy/usb_api.h:2:0, from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy/WProgram.h:22, from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy/Arduino.h:1, from ArduinoCompile.ino:1: C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy/../usb_serial/usb_api.h:37:9: error: initializing argument 1 of 'size_t usb_serial_class::readBytes(char*, size_t)' [-fpermissive] size_t readBytes(char *buffer, size_t length); ^ ArduinoCompile.ino:19:21: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] ArduinoCompile.ino: In function 'long int ReadLong()': ArduinoCompile.ino:25:28: error: invalid conversion from 'byte* {aka unsigned char*}' to 'char*' [-fpermissive] In file included from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy/usb_api.h:2:0, from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy/WProgram.h:22, from C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy/Arduino.h:1, from ArduinoCompile.ino:1: C:\Program Files (x86)\Arduino\hardware\teensy\avr\cores\teensy/../usb_serial/usb_api.h:37:9: error: initializing argument 1 of 'size_t usb_serial_class::readBytes(char*, size_t)' [-fpermissive] size_t readBytes(char *buffer, size_t length); ^ ArduinoCompile.ino:26:20: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] ArduinoCompile.ino: In function 'boolean StartRead()': ArduinoCompile.ino:79:20: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] ArduinoCompile.ino: In function 'void HandleSerial()': ArduinoCompile.ino:116:26: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] invalid conversion from 'byte* {aka unsigned char*}' to 'char*' [-fpermissive]
|
|
|
|
Rank: Administration
Groups: Administrators
Joined: 12/11/2014(UTC) Posts: 661
Thanks: 1 times Was thanked: 109 time(s) in 104 post(s)
|
Looks like there's more to it than I was hoping. I just ordered a Teensy, when it gets here I'll figure out how to get it connected and make an update. Thanks for the information and patience!
|
|
|
|
Rank: Newbie
Groups: Registered
Joined: 5/11/2015(UTC) Posts: 8
Thanks: 1 times
|
Great. Paul from Teensy might be able to help, he seems super engaged and helpful.
|
|
|
|
Forum Jump
You cannot post new topics in this forum.
You cannot reply to topics in this forum.
You cannot delete your posts in this forum.
You cannot edit your posts in this forum.
You cannot create polls in this forum.
You cannot vote in polls in this forum.