**** BEGIN LOGGING AT Tue Feb 01 02:59:57 2011 Feb 01 08:33:44 akiniemi: ping Feb 01 08:38:13 Jeevaka: pong Feb 01 08:40:12 examples/nettime.c is expecting the dst to be in seconds whereas isimodem and atmodem dst is filled in hours Feb 01 08:42:07 Jeevaka: the doc in types.h says it should be in seconds, so the drivers are wrong here Feb 01 08:42:27 Jeevaka: good catch ;) Feb 01 08:43:15 i will go ahead and deliver the patch then Feb 01 08:43:37 Jeevaka: thanks Feb 01 09:33:27 akiniemi: ping Feb 01 10:03:51 holtmann: i did what you recommended yesterday for gprs with the calypso. now it shows a org.ofono.ConnectionManager but activating gives an "org.ofono.Error.NotImplemented: Implementation not provided". what did i miss? Feb 01 10:10:16 That normally means you have no GPRS context attached to the GPRS atom. Feb 01 10:11:06 Show me your patch. Feb 01 10:13:21 http://mister-muffin.de/p/w2Fm Feb 01 10:14:45 This looks fine. Feb 01 10:14:55 You do have TUN/TAP kernel module loaded? Feb 01 10:15:29 You do not need to store gprs and gc in calypso_data btw. Feb 01 10:15:47 Only the stupid modems that hangup the line after PPP disconnect need that. Feb 01 10:16:00 i copied from huawei ;) Feb 01 10:16:07 That is one of the stupid ones ;) Feb 01 10:16:10 :D Feb 01 10:16:26 if (gprs && gc) Feb 01 10:16:26 ofono_gprs_add_context(gprs, gc); Feb 01 10:16:39 STE for example keeps it local in post_online. Feb 01 10:16:47 Which is post_sim for Calypso. Feb 01 10:17:13 holtmann: did you take a look to the v4 of bluetooth server support patch ? Feb 01 10:17:21 Can you run ofonod with OFONO_AT_DEBUG=1 and also -d '*gprs*'. Feb 01 10:17:24 the if is needed? can it be NULL? Feb 01 10:17:48 We kept doing that check. In theory under certain moon phases it could be potentially be NULL. Feb 01 10:18:06 Likelyhood is almost zero actually. Feb 01 10:18:10 fdanis: I have not. Feb 01 10:18:45 dropping a log-line would be nice in that case... Feb 01 10:18:52 assuming it's an error, right? Feb 01 10:18:57 emdete: If the /dev/net/tun device is not present we should log an error. Feb 01 10:19:17 there was nothing logged. i use OFONO_AT_DEBUG and --debug all the time Feb 01 10:19:33 Are you sure. That is weird. Feb 01 10:19:51 so -d '*gprs*' is --debug but filtering, right? Feb 01 10:19:58 Yes, that is a filter. Feb 01 10:20:06 Based on filenames. Feb 01 10:20:18 Print only DBG statement where filename matches *gprs* Feb 01 10:20:36 Helps you to stay sane ;) Feb 01 10:20:51 okay. i loaded tun, restarted ofono, issue my script... Feb 01 10:21:09 If you run with OFONO_AT_DEBUG=1 then you need to see at least AT commands for GPRS attach and also for ATD. Feb 01 10:21:27 CGDATA actually ;) Feb 01 10:21:33 thing is: there seems to be some timing condition, i often get that error with other dbus requests and after a while it works :/ Feb 01 10:21:33 holtmann: did you look at the powered_watches patch? Feb 01 10:21:48 Gzajac: I have not. I leave that to Denis. Feb 01 10:21:52 ok Feb 01 10:22:27 emdete: Maybe the Freerunner hardware is just bad. Feb 01 10:22:38 holtmann: maybe? harhar... Feb 01 10:22:47 Or it needs longer to attach, but then you should get not attached error back. Feb 01 10:22:48 nice, it works. :/ Feb 01 10:22:57 Hah. Sweet. Feb 01 10:23:16 but maybe there is a timing issue in ofono? Feb 01 10:23:43 There should not be. Feb 01 10:23:54 We have been using this on almost every single GSM device on the planet. Feb 01 10:24:08 However you have to wait to get attached first. Feb 01 10:25:20 emdete: Maybe our error codes are wrong. Feb 01 10:25:51 emdete: You do know that you can run monitor-ofono Python test script to see all signals coming from oFono. Feb 01 10:25:59 i can give you my script too, so you can check. it runs fine on three other devs Feb 01 10:26:08 yes, i know Feb 01 10:26:43 I am using activate-context and ConnMan. Both are just fine. Feb 01 10:26:52 with calypso? :) Feb 01 10:27:05 No idea. With all other modems that I have. Feb 01 10:27:16 I stop testing with the Calypso to be honest. Feb 01 10:27:47 these scripts have a problem: if you trigger them by hand you introduce pauses on between. these allow ofono/modem to settle down. if you fire the same in one script you get this error quite often Feb 01 10:28:22 That is why I added tools/auto-enable. We can add a tools/auto-activate for GPRS here if needed. Feb 01 10:28:30 i just have one script, works syncron. it loops getting props&sleeps until a state is reached... Feb 01 10:28:40 Essentially that is what ConnMan does. Feb 01 10:28:47 i wrote one... i will check tools/auto-enable Feb 01 10:29:19 That said, we had issues with certain modem hardware where the SIM was not ready even if the modem told us. Feb 01 10:29:57 I am always open for more test scripts. Feb 01 10:30:03 yes, i know, i have a huawei of that kind too ;) Feb 01 10:30:30 Freerunner is the most slow hardware I have seen in a while. Maybe because of that it exposes certain behavior that we don't see in other modems. Feb 01 10:30:32 holtmann: maybe one could invent a more module-like aproach for the scripts? Feb 01 10:30:35 holtmann: when do you think you can have a looki to it ? Feb 01 10:31:02 fdanis: Hopefully later today. Still need to sync with Denis. Feb 01 10:31:19 holtmann: ok, thanks Feb 01 10:31:24 emdete: Yeah, good idea, but until someone does the hard work, I don't think that happens. Feb 01 10:31:40 hard work? python is soft work always ;) Feb 01 10:31:55 I am particular lazy with Python. Feb 01 10:33:01 that's what python is for, right? Feb 01 10:38:47 akiniemi: ping Feb 01 10:40:21 holtmann: but generally speaking: there is interest in improving the scripts? Feb 01 10:40:53 If I don't have to do it, then yes ;) Feb 01 10:41:27 holtmann: he, you have to test 'em ;) Feb 01 10:41:50 Nah, I just complain if you break something. Feb 01 10:44:00 :D okay. another topic: how is mms supported? ive seen test/create-mms-context. i sended an mms to an ofoned device and did not receive any signal from ofono but ofono loggs that the sms was received. ... Feb 01 10:59:48 holtmann: you don't like mms? :) Feb 01 11:01:15 emdete: MMS is not done inside oFono. Feb 01 11:01:35 It just provides the basics. Like MMS bearer configuration. And WAP Push notification. Feb 01 11:01:50 does it decode the pdu? Feb 01 11:01:52 You need a MMS daemon or application that then uses these. Feb 01 11:02:05 is there one avaiable? Feb 01 11:02:13 Nope. It gives you the raw WAP Push PDU. Check test/test-push-notification script. Feb 01 11:53:56 Hi all, quick question about coding style, we are trying to align enum variables values with tabs, what tab size should we use, 4 or 8? if values are in line with 4 than they are not with 8 and opposite, do we bother about this much? Feb 01 11:54:05 maybe we should use just spaces here? Feb 01 11:54:22 8. Feb 01 11:54:26 And no spaces. Feb 01 11:54:30 thanks Feb 01 11:55:00 It is essentially kernel coding style with the additions/exception outlined in doc/coding-style.txt Feb 01 11:55:11 If something is unclear. Add it there as another rule. Feb 01 11:55:32 and this is an answer for my next question Feb 01 11:55:38 thanks again Feb 01 11:56:26 We are something like 98% consistent throughout the code base. So you can just take that as examples. Feb 01 11:56:44 However there are cases where wrong style slipped in or is just legacy from the early days. Feb 01 11:56:50 Patches for fixing that are always welcome. Feb 01 11:59:00 yep, we are just correcting one while slightly changing, thats why asking Feb 01 12:47:12 holtmann: another thing with a huawei modem. i added some code to enable that model. this is running unconditional and would fire for all models which is probably a bad idea. question is: how can i do that conditional for that exact model? Feb 01 12:47:55 You need to read the model during huwei_enable. Feb 01 12:48:01 HSO and MBM does that as well. Feb 01 12:49:28 holtmann: remi's patch is implementation for generic pin retry counter Feb 01 12:49:47 hm, isn't the model read anyway and somewhere stored? Feb 01 12:49:54 Yes. Seems newer specs have +CPINR. Feb 01 12:50:12 Jeevaka: Let me get that one applied and then you can re-base. Feb 01 12:50:31 holtmann: ok, got it Feb 01 12:54:07 Jeevaka: Patch looks fine. Just re-base it and we can apply it. Feb 01 12:54:12 holtmann: new command is optional, dont know whether all the modem vendors will move to the new one Feb 01 12:54:38 That is fine. Feb 01 12:54:49 We have the specific code for modem where we know the vendor command. Feb 01 12:54:57 For the other we try the other one and fail. So bad luck. Feb 01 12:55:10 If some modems heavily misbehave, then we have to see. Feb 01 12:55:21 But you never know until you try ;) Feb 01 12:56:16 agree Feb 01 12:58:18 ofonod[16414]: Device: > AT+CPIN?\r Feb 01 12:58:18 ofonod[16414]: Device: < \r\n+CPIN: READY\r\n\r\nOK\r\n Feb 01 12:58:18 ofonod[16414]: Device: > AT+CPINR\r Feb 01 12:58:18 ofonod[16414]: Device: < \r\nERROR\r\n Feb 01 12:58:19 ofonod[16414]: Querying remaining pin retries failed Feb 01 12:58:21 holtmann: can i access the modem model somewhere? Feb 01 12:58:23 This is the downside of that patch. Feb 01 12:58:57 emdete: You need to find the command that does it for your modem. It is highly vendor specific. Huawei has such a command. Feb 01 12:59:06 And also a bunch of other magic ones. Feb 01 13:00:28 emdete: Which Hauwei device is this? Feb 01 13:01:08 holtmann: most of the modems i know respond correctly to +CGMM ... it's the em770something Feb 01 13:01:24 em770 comes in various alterations. Feb 01 13:01:53 We do read the +CGMM, but you need it earlier anyway. So you might have to read it in hauwei_enable(). Feb 01 13:02:16 oups... mine needs a ^RFSWITCH=1 beforeoperating correctly... :/ Feb 01 13:02:16 Check MBM. They just read AT+CGMM Feb 01 13:02:42 okay. i just wanted to avoid useless AT commands it the data is already there Feb 01 13:02:46 Can you just not ^RFSWITCH=? and ^RFSWITCH? Feb 01 13:02:52 And in case it is disabled, enable it. Feb 01 13:03:06 We do this for USSDMODE one of the newer ones. Feb 01 13:03:10 don't know what other modems/huaweis do in thet case Feb 01 13:03:26 and i switch it off in de-activate Feb 01 13:03:50 Check if ^RFWSITCH is supported with =? and then always do it. Feb 01 13:04:20 okay. Feb 01 13:04:27 We can't give you any model number since the modem plugin is responsible for the init. The atoms are only created after modem init. Feb 01 13:04:48 And worst case you read it twice. If the modem is so fucked up, so be it. Feb 01 13:04:59 But I think you don't need it in your case. Feb 01 13:08:58 Jeevaka: pong Feb 01 13:09:12 s Feb 01 13:09:57 akiniemi: whats the point in checking the dst value with NET_INVALID_TIME when the values it can take is 0,1 or 2 Feb 01 13:10:22 Jeevaka: the network may not provide the value at all Feb 01 13:11:02 isimodem then sends NET_INVALID_TIME when it doesn't receive the info from network Feb 01 13:11:14 Jeevaka: nod Feb 01 13:51:32 padovan: ping Feb 01 13:57:48 Gzajac: pong Feb 01 13:59:04 I have one question concerning the way you are creating DUN emulator Feb 01 14:00:04 Normally we need to have the modem powered ON to create the emulator? Creating emulator when GPRS atom is creating is a bit late, isn't it ? Feb 01 14:02:25 a bit late for what? Feb 01 14:04:25 I mean when you have some AT command like CGMI or CFUN... to be sent the GRPS atom is not necessary or maybe I miss something Feb 01 14:04:45 so you need your AT emulator to be created Feb 01 14:10:56 Are those commands related to DUN? Feb 01 14:11:33 yes CGMI is in DUN spec Feb 01 14:11:43 CGMM also Feb 01 14:11:53 GMI not CGMI sry Feb 01 14:12:18 GMM not CGMM :) Feb 01 14:16:08 Bluetooth DUN will only be available for a client connection when the records are added to BlueZ SDP, so no problem if it is created when the GPRS goes online Feb 01 14:17:10 it's the way Denis suggested me. It' s better than modify modem.c Feb 01 14:17:47 BlueZ SDP can't be created before the modem is online? Feb 01 14:18:19 I agree it is not good to modify modem.c Feb 01 14:19:13 but adding generic powered_watches like online_watches could be used also Feb 01 14:19:33 not only for emulator but maybe for other future services Feb 01 14:20:57 then we create these watches when we have the future services. DUN emulator doesn't justify that to me. Feb 01 14:24:59 so how could we create emulator when modem is enable ? Feb 01 14:28:09 By now we keep listen the GPRS service, but we can change that later if needed. Feb 01 14:28:48 And now we focus on the actual DUN Server implementation. Feb 01 14:28:51 ok Feb 01 14:31:53 padovan: I thought that the Emulator will also be used for HFP AG Feb 01 14:31:53 HFP AG will need to be accessible even if the phone is not online (registered on the network) Feb 01 14:44:46 fdanis: as I said, we can change that later if needed. Feb 01 14:47:58 holtmann: where should ofono_call_init() be declared/defined? Feb 01 14:48:23 i couldn't find any similar case in ofono's code Feb 01 14:48:41 denkenz: ^ Feb 01 14:49:44 src/common.[hc]? Feb 01 14:54:17 can't we put it in voicecall.h? Feb 01 14:57:46 padovan: humn... i don't think it fits there... Feb 01 14:59:35 I don't think it fits in common.h ;) Feb 01 15:00:41 demarchi: yeah, it doesn't fit in voicecall. Feb 01 17:20:51 demarchi: Patches look good. If Denis has no further objections, I take care of apply them. Feb 01 17:27:23 my only problem is with the placing of the function implementation Feb 01 17:27:28 I'd rather see it in voicecall.c Feb 01 17:28:07 but apply it anyway Feb 01 17:28:10 not a big deal Feb 01 17:31:12 Okay. Then I take care of it. Feb 01 17:36:12 denkenz: humn... it looked weird to me, it'd be the only function with "namespace" ofono_call inside voicecall.c Feb 01 17:36:40 but... no strong feelings about it Feb 01 17:37:06 well in general I like to avoid including ofono public apis from non-atom files Feb 01 17:37:23 Or putting in public implementations in there Feb 01 17:37:30 but common is somewhat 'special' anyway Feb 01 17:38:42 if it bugs me enough I'll fix it, it is fine for now Feb 01 17:38:45 denkenz: ok... i saw there was already a ofono_uuid_to_str made that way, so i did the same (declared in include/types.h and implemented in src/common.c) Feb 01 17:40:05 yeah, I know, I'm not happy about that one either Feb 01 17:40:13 :-) Feb 01 17:40:13 But then I can only blame myself ;) **** ENDING LOGGING AT Wed Feb 02 02:59:58 2011