I think I have to consider myself more of a IOIO developer than a IOIO user 
;)

I have an application firmware that my colleagues and I took from one of 
your versions and included some of our code to boot our DSPs. So indeed 
this Application firmware might be outdated for the newer IOIOLib in 
Android. I think I need the newest version of the Application firmware that 
you have as an MPLab project so I can modify it to include my code to boot 
my DSPs.

Is that possible?

Le lundi 2 février 2015 17:03:22 UTC+1, Ytai a écrit :
>
> You don't need to upgrade the bootloader, only the application firmware. 
> For your (old) version of the board, this is done using the IOIO manager 
> application, which unfortunately requires you to be using an Android <4.1. 
> This is only a one-time process, you'd be able to use the IOIO with any 
> Android later.
> On Feb 2, 2015 7:36 AM, "Vincent Nadon" <[email protected] 
> <javascript:>> wrote:
>
>> Hi,
>>
>> Thanks for your help! 
>>
>> After thinking about it, in the end I would probably end up copying every 
>> function in Java anyways to update the Libraries. So I will simply 
>> transcode my micro controller functions in Java as you said.
>>
>> I started slowly to do so, but I see some errors about incompatible IOIO 
>> version in my LogCat...?
>>
>> I get the same error message as in the following post 
>> https://groups.google.com/forum/#!msg/ioio-users/5rziYMOYouc/kVK_lic10qMJ 
>> except 
>> I have a different IOIO bootloader version. I think it's because I'm using 
>> the most recent version of the IOIOLib for Android with an older version of 
>> the bootloader. To fix the problem I need compatible bootloader files to 
>> compile in MPLab which I can't find on the IOIO page. Is it possible to get 
>> them?
>>
>> Here is the LogCat error message I get:
>>
>> 02-02 16:32:13.558: I/IncomingState(25002): IOIO Connection established. 
>> Hardware ID: SPRK0016 Bootloader ID: IOIO0306 Firmware ID: IOIO0326
>>
>> 02-02 16:32:13.558: V/IOIOImpl(25002): Querying for required interface ID
>>
>> 02-02 16:32:13.598: E/IOIOImpl(25002): Required interface ID is not 
>> supported
>>
>> 02-02 16:32:13.598: E/IOIOBaseApplicationHelper(25002): Incompatible IOIO 
>> firmware
>>
>> 02-02 16:32:13.598: E/IOIOBaseApplicationHelper(25002): 
>> ioio.lib.api.exception.IncompatibilityException: IOIO firmware does not 
>> support required firmware: IOIO0005
>>
>> 02-02 16:32:13.598: E/IOIOBaseApplicationHelper(25002): at 
>> ioio.lib.impl.IOIOImpl.checkInterfaceVersion(IOIOImpl.java:208)
>>
>> 02-02 16:32:13.598: E/IOIOBaseApplicationHelper(25002): at 
>> ioio.lib.impl.IOIOImpl.waitForConnect(IOIOImpl.java:135)
>>
>> 02-02 16:32:13.598: E/IOIOBaseApplicationHelper(25002): at 
>> ioio.lib.util.IOIOBaseApplicationHelper$IOIOThread.run(IOIOBaseApplicationHelper.java:58)
>>
>> Thanks again!
>>
>> Vincent
>>
>> Le dimanche 1 février 2015 07:22:55 UTC+1, Ytai a écrit :
>>>
>>> If you want my honest opinion, I have a good guess that converting your 
>>> code to Java would be way easier than the way you're approaching it. It 
>>> will also have the benefit of being able to upgrade the firmware and 
>>> IOIOLib very easily in the future without having to port the code.
>>>
>>> If you're insisting on doing it the hard way, what I would do is:
>>>
>>>    1. Make sure you are able to build and install the standard firmware 
>>>    on the IOIO.
>>>    2. Read both firmware protocol.c file and the software 
>>>    IOIOProtocol.java file and make sure you understand how the protocol 
>>> works 
>>>    and then what is the overall sequence of how a Java call on the Android 
>>>    eventually gets to the proper function on the IOIO and how functions on 
>>> the 
>>>    IOIO can send data that eventually shows up on the Android.
>>>    3. Add your custom functions to the standard firmware and plumb them 
>>>    through in a similar fashion. Make sure you don't collide with the 
>>> standard 
>>>    firmware on resources, such as the I2C buses, etc.
>>>
>>>
>>>
>>> On Thu, Jan 29, 2015 at 3:43 AM, Vincent Nadon <[email protected]> 
>>> wrote:
>>>
>>>> I am aware that I am using the IOIO pic (PIC24) in a different way from 
>>>> it's intended usage. What I do specifically with the PIC24 is as follows:
>>>>
>>>> 1) I program some DSPs during bootup. To do so I use I2C protocol 
>>>> between the Pic and the DSPs.
>>>>
>>>> 2) I have created some functions on the Pic to control the DSPs.
>>>>
>>>> 3) I have a rotary switch to control the Pic and start some of the 
>>>> functions I created and therefore controlling the DSPs through I2C.
>>>>
>>>> 4) We have an Android App that one of my colleague started based on the 
>>>> IOIO libraries. The colleague is now working abroad and I need to 
>>>> customize 
>>>> everything for my needs in my project. Mainly what I want to do is control 
>>>> my DSPs through the IOIO (PIC24) with Bluetooth or USB and gather the data 
>>>> that I read with the Pic send it to the Android App so that I am able to 
>>>> see it as a Graph.
>>>>
>>>> We already have some functions in the Android App that can control the 
>>>> DSPs through the Pic, but they are not very practical since I would need 
>>>> to 
>>>> copy every function I created in the Pic into the Android App. So I 
>>>> instead 
>>>> I want to simply use the functions I already programmed in the Pic through 
>>>> the Android App. I would like to still be able to control the Pic with my 
>>>> rotary switch if possible.
>>>>
>>>> The main problem that I have now is to make the communication from the 
>>>> Android App to the PIC24 work using the IOIO libraries, without 
>>>> interrupting the functionnality of I2C to initialize the DSPs (program 
>>>> them).
>>>>
>>>> I am attacking this next week, it is quite a challenge for me.
>>>>
>>>> Le mercredi 28 janvier 2015 18:30:38 UTC+1, Ytai a écrit :
>>>>>
>>>>> Are you aware of the fact that you're using the IOIO in a way that is 
>>>>> very different from its intended usage? If this is unintentional, better 
>>>>> read the wiki. Otherwise, in order to help you I need some context and 
>>>>> specifically, what you're trying to do, how you were thinking about doing 
>>>>> it and why you need custom firmware as opposed to using the standard one.
>>>>>
>>>>> On Wed, Jan 28, 2015 at 9:04 AM, Vincent Nadon <[email protected]> 
>>>>> wrote:
>>>>>
>>>>>> Using another Android App my colleagues and I created (based on IOIO 
>>>>>> examples) makes also the I2C crash. It seems that the Android Apps are 
>>>>>> trying to take the I2C connexion over and therefore shut downs 
>>>>>> everything 
>>>>>> else. It even reboots the micro controller in order to obtain the 
>>>>>> bluetooth 
>>>>>> connexion.
>>>>>>
>>>>>> Maybe I don't put the following code in the right place? ( it is 
>>>>>> placed in my main function in main.c before my other function calls)
>>>>>>
>>>>>>
>>>>>>   while(1){
>>>>>> /************Bluetooth Communication***********/
>>>>>>
>>>>>>
>>>>>> BOOL connected = ConnectionTasks();
>>>>>>     if (!connected
>>>>>>         && state > STATE_OPEN_CHANNEL) {
>>>>>>       // just got disconnected
>>>>>>       log_printf("Disconnected");
>>>>>>       SoftReset();
>>>>>>       state = STATE_INIT;
>>>>>>     }
>>>>>>     switch (state) {
>>>>>>       case STATE_INIT:
>>>>>>         handle = INVALID_CHANNEL_HANDLE;
>>>>>>         state = STATE_OPEN_CHANNEL;
>>>>>>          //_LATD3 = 0;
>>>>>>         break;
>>>>>>
>>>>>>       case STATE_OPEN_CHANNEL:
>>>>>>         if ((handle = OpenAvailableChannel()) != 
>>>>>> INVALID_CHANNEL_HANDLE) {
>>>>>>           log_printf("Connected");
>>>>>>           state = STATE_WAIT_CHANNEL_OPEN;
>>>>>>         }
>>>>>>          //_LATD3 = 0;
>>>>>>         break;
>>>>>>
>>>>>>       case STATE_WAIT_CHANNEL_OPEN:
>>>>>>        if (ConnectionCanSend(handle)) {
>>>>>>           log_printf("Channel open");
>>>>>>           AppProtocolInit(handle);
>>>>>>           state = STATE_CONNECTED;
>>>>>>         }
>>>>>>         //_LATD3 = 0;
>>>>>>         break;
>>>>>>
>>>>>>       case STATE_CONNECTED:
>>>>>>         AppProtocolTasks(handle);
>>>>>>         break;
>>>>>>
>>>>>>       case STATE_ERROR:
>>>>>>         ConnectionCloseChannel(handle);
>>>>>>         SoftReset();
>>>>>>         state = STATE_INIT;
>>>>>>         // _LATD3 = 0;
>>>>>>         break;
>>>>>>     }
>>>>>> /************ END Bluetooth Communication***********/
>>>>>>
>>>>>>
>>>>>> Le dimanche 25 janvier 2015 21:13:06 UTC+1, Ytai a écrit :
>>>>>>>
>>>>>>> This app is not related to the official IOIO codebase. You better 
>>>>>>> contact the author with this question.
>>>>>>> On Jan 22, 2015 1:02 PM, "Vincent Nadon" <[email protected]> 
>>>>>>> wrote:
>>>>>>>
>>>>>>>> Hi,
>>>>>>>>
>>>>>>>> I have a problem with Bluetooth communication using Hardware tester 
>>>>>>>> app. It crashes I2C communication with other devices attached to IOIO 
>>>>>>>> microcontroler. Is this normal?
>>>>>>>>
>>>>>>>> Thanks for your help!
>>>>>>>>
>>>>>>>> Vincent
>>>>>>>>
>>>>>>>> -- 
>>>>>>>> You received this message because you are subscribed to the Google 
>>>>>>>> Groups "ioio-users" group.
>>>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>>>> send an email to [email protected].
>>>>>>>> To post to this group, send email to [email protected].
>>>>>>>> Visit this group at http://groups.google.com/group/ioio-users.
>>>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>>>
>>>>>>>  -- 
>>>>>> You received this message because you are subscribed to the Google 
>>>>>> Groups "ioio-users" group.
>>>>>> To unsubscribe from this group and stop receiving emails from it, 
>>>>>> send an email to [email protected].
>>>>>> To post to this group, send email to [email protected].
>>>>>> Visit this group at http://groups.google.com/group/ioio-users.
>>>>>> For more options, visit https://groups.google.com/d/optout.
>>>>>>
>>>>>
>>>>>  -- 
>>>> You received this message because you are subscribed to the Google 
>>>> Groups "ioio-users" group.
>>>> To unsubscribe from this group and stop receiving emails from it, send 
>>>> an email to [email protected].
>>>> To post to this group, send email to [email protected].
>>>> Visit this group at http://groups.google.com/group/ioio-users.
>>>> For more options, visit https://groups.google.com/d/optout.
>>>>
>>>
>>>  -- 
>> You received this message because you are subscribed to the Google Groups 
>> "ioio-users" group.
>> To unsubscribe from this group and stop receiving emails from it, send an 
>> email to [email protected] <javascript:>.
>> To post to this group, send email to [email protected] 
>> <javascript:>.
>> Visit this group at http://groups.google.com/group/ioio-users.
>> For more options, visit https://groups.google.com/d/optout.
>>
>

-- 
You received this message because you are subscribed to the Google Groups 
"ioio-users" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to [email protected].
To post to this group, send email to [email protected].
Visit this group at http://groups.google.com/group/ioio-users.
For more options, visit https://groups.google.com/d/optout.

Reply via email to