Client Suite 3.0

Community contributed apps
dmolton
Posts: 182
Joined: Tue Mar 22, 2011 11:08 am

Client Suite 3.0

Post by dmolton »

Well this release was a very long time coming - sorry for the delay guys. I hope to be on this board more often and keep supporting the application as best I can once things settle down a little bit around here. I recently got caught up with work/life events and in the process of buying a new house! I'll do the best I can with bug fixes and new development until I move and plan to start developing and cranking out some new applications by the new year.

Anyway, as for the new release - First and foremost, I recently switched to an InstallShield installer for deployment. This will hopefully cut out all of the installation/uninstallation issues the old version presented.

Changelog:

Beta 3.0.1 Bug Fixes (Jan 20 2013)
  • Fixed a bug that would not send parameters to the Reef Angel portal when using USB
  • Removed MH Light settings from the Memory Tab
  • Removed Unused ATO memory references from the Memory Tab as well as the memory utility.
  • Updated the Memory INI file to include the latest memory location (329=Mem_I_SalTempComp) present in the dev libs that would cause a memory tab refresh to fail.
  • Memory utility will now show location names in alphabetical order
Beta 3.0 Bugs Fixes (Nov 15 2012)
  • Fixed Celsius/Farenheit radio buttons not getting saved properly. (Buttons were blank when viewed a second time)
  • Fixed issue where a failed memory refresh would show all controls on screen with blank/0 values
  • Fixed bug in the relay profiles form that stopped a user from deleting or creating a new profile after editing one.
  • Update Relay box image to correctly show outlet numbers on the settings form.
  • Memory tab now supports celsius temperatures (20-32 degrees) when Celsius is set as temperature style in Settings.
  • Broke apart PWM and pH groups on Memory tab
  • Grouped together dosing fields to make it more intuitive which ones work together on the controller

New Features
  • Llibrary 1.x.x support. yah!
  • Added Date and Time formatting options in Settings->General which will modify chart/grid/home page date/times display format
  • Wifi, USB and Portal settings can be modified in the Settings -> General tab directly without restarting Listener Service.
  • Reef Angel libraries can be validated during Client Suite install and enabled features shown from View -> Features File.
  • While the 2:00 connection countdown timer is active and counting on the status bar, it can be clicked to cancel the countdown and attempt reconnect immediately.
  • Added new menu item (Settings -> Memory Utility) to modify any memory location on the controller.
  • Added scheduled task that fires a cleanup executable to remove old records from database. Execution interval and record timespan are user configurable (Settings -> General tab)
  • Added a third service (ReefAngelNotifier) to handle sending email/sms notification for temps and pH outside defined threshold. Also this new service will handle pushing parameters to reefangel.com. No longer need to keep the Client running for these operations they will run in the background!
  • Created a notification panel on the main client screen that displays important information about the 3 services in real time as they occur.
  • IP Camera support! (MJPEG)
  • Implemented database encryption for locally stored email address/password and Portal Key.
  • Portal Integration. (Sync historic params, temp & relay labels both ways).
  • The enabled temp/pH chart series will be remembered between application shutdown and startup cycles.
  • Added a calculator tab for most common Mag/Alk/Cal dosing supplements.
  • Added ability to scan local network for the Reef Angel Wifi Adapter during install.
  • Expansion Module Support
    • PWM
    • Salinity
    • Vortech RF
  • .NET 4.0 required
  • InstallShield Installer!

If you haven't already, uninstall the 2.2 Client Suite before attempting installation of the new one.

This version of the Client Suite requires the 1.x.x libraries running on the controller. The 0.9.x libs are no longer supported at all.

DOWNLOAD THE INSTALLER HERE

As always, please post your comments/questions/bug reports here on this thread. Like I mentioned earlier, I'll try to do a better job of responding and fixing any issues that crop up.

-Dave

Image

Image

Image

Image
Last edited by dmolton on Sun Jan 20, 2013 8:15 pm, edited 3 times in total.
rimai
Posts: 12881
Joined: Fri Mar 18, 2011 6:47 pm

Re: Client Suite 3.0

Post by rimai »

Awesome!!!!
Roberto.
User avatar
DrewPalmer04
Posts: 818
Joined: Tue May 29, 2012 2:12 pm
Location: Christopher, IL

Re: Client Suite 3.0

Post by DrewPalmer04 »

Looks real good! :) thanks!!
Out for now...but not over.

VISIT: Ethernet Module/Wifi Alternative
binder
Posts: 2871
Joined: Fri Mar 18, 2011 6:20 pm
Location: Illinois
Contact:

Re: Client Suite 3.0

Post by binder »

Nice.
User avatar
lnevo
Posts: 5430
Joined: Fri Jul 20, 2012 9:42 am

Client Suite 3.0

Post by lnevo »

Wish we had a Mac version that nice :) looks awesome!!
fatman
Posts: 121
Joined: Wed May 30, 2012 10:44 pm

Re: Client Suite 3.0

Post by fatman »

Downloaded it yesterday and it's pretty sweet. Thanks!
Image
Ademster
Posts: 144
Joined: Tue Aug 14, 2012 1:11 pm

Re: Client Suite 3.0

Post by Ademster »

I downloaded it tonight. Errors... Doesn't start.

tried reinstalling it no change.
Adam
58 Gal
Image
fatman
Posts: 121
Joined: Wed May 30, 2012 10:44 pm

Re: Client Suite 3.0

Post by fatman »

Did you have a previous version installed? That one needs to be uninstalled before you install this version.
Image
dmolton
Posts: 182
Joined: Tue Mar 22, 2011 11:08 am

Re: Client Suite 3.0

Post by dmolton »

Ademster wrote:I downloaded it tonight. Errors... Doesn't start.

tried reinstalling it no change.

What is the error you are seeing?
Ademster
Posts: 144
Joined: Tue Aug 14, 2012 1:11 pm

Re: Client Suite 3.0

Post by Ademster »

Fixed it. for some reason when I uninstalled the original version, it didn't delete the quick launch shortcut.
when I clicked on it, it was looking for the wrong .exe

got it working 5 minutes after posting.
Adam
58 Gal
Image
dmolton
Posts: 182
Joined: Tue Mar 22, 2011 11:08 am

Re: Client Suite 3.0

Post by dmolton »

Great. Glad you got it working. Looks like the old (un)installer strikes again.. Hoping those days are behind us now.
Sebyte

Re: Client Suite 3.0

Post by Sebyte »

I have installed the suite and it works well except for when I try to access the memory settings. Then I get the error message

"Unable to retrieve controller memory settings. Refer to log for more details."

I have taken a look at the log and there seems to be several file reading errors. Here is the log file:-

Code: Select all

*****20/11/2012 4:29:14 PM*****
Message:
Notifier Service Started.
StackTrace:


*****20/11/2012 4:30:17 PM*****
Message:
Index was outside the bounds of the array.
StackTrace:
   at ReefAngelWCFListener.ReefAngelListener.GetAllMemoryValuesPost10(String[] locations)

*****20/11/2012 4:30:17 PM*****
Message:
Value cannot be null.
Parameter name: String
StackTrace:
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at ReefAngelClient.Form1.DisplayMemoryValues()

*****20/11/2012 4:30:32 PM*****
Message:
Listener: Could not generate parameter object from provided xml.  The XML attempting to be parsed: <RA>

Unexpected end of file has occurred. The following elements are not closed: RA. Line 1, position 5.
StackTrace:
   at System.Xml.XmlTextReaderImpl.Throw(Exception e)
   at System.Xml.XmlTextReaderImpl.Throw(String res, String arg)
   at System.Xml.XmlTextReaderImpl.ThrowUnclosedElements()
   at System.Xml.XmlTextReaderImpl.ParseElementContent()
   at System.Xml.XmlTextReaderImpl.Read()
   at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r)
   at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r, LoadOptions o)
   at System.Xml.Linq.XDocument.Load(XmlReader reader, LoadOptions options)
   at System.Xml.Linq.XDocument.Load(TextReader textReader, LoadOptions options)
   at ReefAngelWCFListener.ReefAngelListener.GenerateCurrentParams(String xml)

*****20/11/2012 4:30:32 PM*****
Message:
Listener: Could not build relay statuses from the provided xml.  The xml attempting to be parsed: <RA>

Unexpected end of file has occurred. The following elements are not closed: RA. Line 1, position 5.
StackTrace:
   at System.Xml.XmlTextReaderImpl.Throw(Exception e)
   at System.Xml.XmlTextReaderImpl.Throw(String res, String arg)
   at System.Xml.XmlTextReaderImpl.ThrowUnclosedElements()
   at System.Xml.XmlTextReaderImpl.ParseElementContent()
   at System.Xml.XmlTextReaderImpl.Read()
   at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r)
   at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r, LoadOptions o)
   at System.Xml.Linq.XDocument.Load(XmlReader reader, LoadOptions options)
   at System.Xml.Linq.XDocument.Load(TextReader textReader, LoadOptions options)
   at ReefAngelWCFListener.ReefAngelListener.BuildRelayStatuses(String xml)

*****20/11/2012 4:31:03 PM*****
Message:
Listener: Could not generate parameter object from provided xml.  The XML attempting to be parsed: <RA>

Unexpected end of file has occurred. The following elements are not closed: RA. Line 1, position 5.
StackTrace:
   at System.Xml.XmlTextReaderImpl.Throw(Exception e)
   at System.Xml.XmlTextReaderImpl.Throw(String res, String arg)
   at System.Xml.XmlTextReaderImpl.ThrowUnclosedElements()
   at System.Xml.XmlTextReaderImpl.ParseElementContent()
   at System.Xml.XmlTextReaderImpl.Read()
   at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r)
   at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r, LoadOptions o)
   at System.Xml.Linq.XDocument.Load(XmlReader reader, LoadOptions options)
   at System.Xml.Linq.XDocument.Load(TextReader textReader, LoadOptions options)
   at ReefAngelWCFListener.ReefAngelListener.GenerateCurrentParams(String xml)

*****20/11/2012 4:31:03 PM*****
Message:
Listener: Could not build relay statuses from the provided xml.  The xml attempting to be parsed: <RA>

Unexpected end of file has occurred. The following elements are not closed: RA. Line 1, position 5.
StackTrace:
   at System.Xml.XmlTextReaderImpl.Throw(Exception e)
   at System.Xml.XmlTextReaderImpl.Throw(String res, String arg)
   at System.Xml.XmlTextReaderImpl.ThrowUnclosedElements()
   at System.Xml.XmlTextReaderImpl.ParseElementContent()
   at System.Xml.XmlTextReaderImpl.Read()
   at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r)
   at System.Xml.Linq.XContainer.ReadContentFrom(XmlReader r, LoadOptions o)
   at System.Xml.Linq.XDocument.Load(XmlReader reader, LoadOptions options)
   at System.Xml.Linq.XDocument.Load(TextReader textReader, LoadOptions options)
   at ReefAngelWCFListener.ReefAngelListener.BuildRelayStatuses(String xml)
I had the same problem with the previous version and stopped using it for that reason.

Before installing 3.0 I uninstalled the old version. I am wondering if the old database structure is still being used and that if it was corrupted it is causing this problem.
dmolton
Posts: 182
Joined: Tue Mar 22, 2011 11:08 am

Re: Client Suite 3.0

Post by dmolton »

Sebyte wrote:I have installed the suite and it works well except for when I try to access the memory settings. Then I get the error message

"Unable to retrieve controller memory settings. Refer to log for more details."
So the error looks like the controller is returning fewer memory location/value pairs than what is expected.

Couple of questions:

- what is the library version you are running on your controller?
- I'll be able to look at this more when I get off work, but I know a whole bunch of new memory locations got initialized from the 1.x.x series. I *think* that it gets done from the Reef Angel Wizard but I need to double check. Do you remember doing anything like that? Running a command to init new memory locations.
- Could you run the following command in a web browser and post back the results: http://YourRAURL:2000/mr

-Dave
Sebyte

Re: Client Suite 3.0

Post by Sebyte »

Dave

I am on v 1.0.2 software, and the memory data returned from my URL is:

<MEM>
0F1E15000C0014000A000F00060684035802520314140C0316032A032003FF38031702001400161E00FFFFF000F000F60903463C034B3C0032080F643C0F643C0F643C0F643C0F643C0F643C8403FFFF0208C201780203F80220032A0300643C00643C00643C00643C00643C00643C00643C00643C00643C07F401C409E303EB08FFFF
</MEM>

All of the memory locations are standard.

Hope that is of help.
dmolton
Posts: 182
Joined: Tue Mar 22, 2011 11:08 am

Re: Client Suite 3.0

Post by dmolton »

Thanks, Sebyte.

I think I see the issue. The Listener service validates that the internal memory locations from the controller match up with a defined set that the Client expects to see. This makes sure that we're displaying the correct values in the correct places on the Memory tab and also updating values in the right spot on your controller.

It looks like a new memory location (329=Mem_I_SalTempComp) was added since I last updated the Memory Map File and you happen to be running the libraries with the new location causing the validation to fail on the Client. This should be an easy fix.

Download the RAMemory.ini file attached to this post and save to your PC. From the Client, choose Settings => Load Memory File and browse to the file you just downloaded. You should get a success message. Restart the Client and try refreshing the memory tab once more.

-Dave
Attachments
RAMemory.ini
Updated Memory Map
(3.22 KiB) Downloaded 619 times
Sebyte

Re: Client Suite 3.0

Post by Sebyte »

Thanks Dave, that worked.

I guess you will fix this in the next release?
Seedlessone
Posts: 135
Joined: Tue Jan 24, 2012 6:20 pm

Re: Client Suite 3.0

Post by Seedlessone »

Having same issue. Tried fix above but still no dice.

Code: Select all

*****11/29/2012 6:28:48 PM*****
Message:
Notifier Service Started.
StackTrace:


*****11/29/2012 6:29:52 PM*****
Message:
Inside WifiSend:
The underlying connection was closed: The connection was closed unexpectedly.
StackTrace:
   at System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
   at System.Net.WebClient.DownloadString(Uri address)
   at System.Net.WebClient.DownloadString(String address)
   at ReefAngelWCFListener.ReefAngelListener.WifiSend()

*****11/29/2012 6:29:52 PM*****
Message:
Value cannot be null.
Parameter name: String
StackTrace:
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at ReefAngelClient.Form1.DisplayMemoryValues()

*****11/29/2012 6:30:26 PM*****
Message:
Value cannot be null.
Parameter name: String
StackTrace:
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at ReefAngelClient.Form1.DisplayMemoryValues()

*****11/29/2012 6:32:33 PM*****
Message:
Value cannot be null.
Parameter name: String
StackTrace:
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at ReefAngelClient.Form1.DisplayMemoryValues()

*****11/29/2012 6:40:23 PM*****
Message:
The communication object, System.ServiceModel.Channels.ServiceChannel, cannot be used for communication because it has been Aborted.
StackTrace:

Server stack trace: 
   at System.ServiceModel.Channels.CommunicationObject.ThrowIfDisposedOrNotOpen()
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]: 
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at ReefAngelWCFListener.IReefAngelCallback.HandleParams(ReefAngelParams paras)
   at ReefAngelWCFListener.ReefAngelListener.<>c__DisplayClass10.<SendParams>b__f(Object )

*****11/29/2012 6:50:32 PM*****
Message:
Inside WifiSend:
The underlying connection was closed: An unexpected error occurred on a receive.
StackTrace:
   at System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
   at System.Net.WebClient.DownloadString(Uri address)
   at System.Net.WebClient.DownloadString(String address)
   at ReefAngelWCFListener.ReefAngelListener.WifiSend()

*****11/29/2012 6:53:40 PM*****
Message:
Value cannot be null.
Parameter name: String
StackTrace:
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at ReefAngelClient.Form1.DisplayMemoryValues()

*****11/29/2012 6:54:32 PM*****
Message:
The communication object, System.ServiceModel.Channels.ServiceChannel, cannot be used for communication because it has been Aborted.
StackTrace:

Server stack trace: 
   at System.ServiceModel.Channels.CommunicationObject.ThrowIfDisposedOrNotOpen()
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]: 
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at ReefAngelWCFListener.IReefAngelCallback.HandleParams(ReefAngelParams paras)
   at ReefAngelWCFListener.ReefAngelListener.<>c__DisplayClass10.<SendParams>b__f(Object )

*****11/29/2012 7:01:36 PM*****
Message:
Inside WifiSend:
The underlying connection was closed: The connection was closed unexpectedly.
StackTrace:
   at System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
   at System.Net.WebClient.DownloadString(Uri address)
   at System.Net.WebClient.DownloadString(String address)
   at ReefAngelWCFListener.ReefAngelListener.WifiSend()

*****11/29/2012 7:01:36 PM*****
Message:
Value cannot be null.
Parameter name: String
StackTrace:
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at ReefAngelClient.Form1.DisplayMemoryValues()

*****11/29/2012 7:02:44 PM*****
Message:
The communication object, System.ServiceModel.Channels.ServiceChannel, cannot be used for communication because it has been Aborted.
StackTrace:

Server stack trace: 
   at System.ServiceModel.Channels.CommunicationObject.ThrowIfDisposedOrNotOpen()
   at System.ServiceModel.Channels.ServiceChannel.Call(String action, Boolean oneway, ProxyOperationRuntime operation, Object[] ins, Object[] outs, TimeSpan timeout)
   at System.ServiceModel.Channels.ServiceChannelProxy.InvokeService(IMethodCallMessage methodCall, ProxyOperationRuntime operation)
   at System.ServiceModel.Channels.ServiceChannelProxy.Invoke(IMessage message)

Exception rethrown at [0]: 
   at System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg)
   at System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type)
   at ReefAngelWCFListener.IReefAngelCallback.HandleParams(ReefAngelParams paras)
   at ReefAngelWCFListener.ReefAngelListener.<>c__DisplayClass10.<SendParams>b__f(Object )

*****11/29/2012 7:03:34 PM*****
Message:
Inside WifiSend:
The underlying connection was closed: The connection was closed unexpectedly.
StackTrace:
   at System.Net.WebClient.DownloadDataInternal(Uri address, WebRequest& request)
   at System.Net.WebClient.DownloadString(Uri address)
   at System.Net.WebClient.DownloadString(String address)
   at ReefAngelWCFListener.ReefAngelListener.WifiSend()

*****11/29/2012 7:03:35 PM*****
Message:
Value cannot be null.
Parameter name: String
StackTrace:
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at ReefAngelClient.Form1.DisplayMemoryValues()

*****11/29/2012 7:08:50 PM*****
Message:
Value cannot be null.
Parameter name: String
StackTrace:
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at ReefAngelClient.Form1.DisplayMemoryValues()

*****11/29/2012 7:10:30 PM*****
Message:
Value cannot be null.
Parameter name: String
StackTrace:
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at ReefAngelClient.Form1.DisplayMemoryValues()

*****11/29/2012 7:31:41 PM*****
Message:
Value cannot be null.
Parameter name: String
StackTrace:
   at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
   at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
   at ReefAngelClient.Form1.DisplayMemoryValues()
dmolton
Posts: 182
Joined: Tue Mar 22, 2011 11:08 am

Re: Client Suite 3.0

Post by dmolton »

[quote="Seedlessone"]Having same issue. Tried fix above but still no dice.

Okay need a little bit more info to troubleshoot

- What version of libraries are you running?
- When you uploaded the new MemoryLocations ini file did you exit and restart the application after?
- What is the response you see in a web browser when you visit the following address? http://YourRAURL:2000/mr
Seedlessone
Posts: 135
Joined: Tue Jan 24, 2012 6:20 pm

Re: Client Suite 3.0

Post by Seedlessone »

dmolton wrote:
Seedlessone wrote:Having same issue. Tried fix above but still no dice.

Okay need a little bit more info to troubleshoot

- What version of libraries are you running?
- When you uploaded the new MemoryLocations ini file did you exit and restart the application after?
- What is the response you see in a web browser when you visit the following address? http://YourRAURL:2000/mr
Dev 0.9.0
Yes I did exit and restart
No Data Recieved


Not sure what the extension /mr is for. If I leave that off I get the Reef Angel Web Server
dmolton
Posts: 182
Joined: Tue Mar 22, 2011 11:08 am

Re: Client Suite 3.0

Post by dmolton »

That's the issue - for full functionality you'll need to upgrade your libs to the 1.0.x series. The command used to now retrieve and parse memory information was introduced in the later libs.
Seedlessone
Posts: 135
Joined: Tue Jan 24, 2012 6:20 pm

Re: Client Suite 3.0

Post by Seedlessone »

I though with the new Arduino is was supposed to update automatically. What is the best way to update? Thanks
dmolton
Posts: 182
Joined: Tue Mar 22, 2011 11:08 am

Re: Client Suite 3.0

Post by dmolton »

Well when you launch the Reef Angel Installer (Arduino) it should update itself and pull down the latest libraries. You will still need to actually push the updated libraries to the controller through your USB cable.

I think the best way to get your controller updated would be to open the Reef Angel Installer (Arduino) and let it update itself and pull the latest libraries down from the internet.

From there you can run through the wizard built into the Reef Angel Installer (Tools -> Reef Angel Wizard) and generate a fresh Memory sketch and operating sketch and let the wizard upload them both to your controller.
rimai
Posts: 12881
Joined: Fri Mar 18, 2011 6:47 pm

Re: Client Suite 3.0

Post by rimai »

The auto update only works on the new Installer. It started on version 1.0.0
If you are running older versions, the best solution is to download the new installer from their website

Sent from my Galaxy S3 using Tapatalk 2
Roberto.
saf1
Posts: 111
Joined: Thu Jun 28, 2012 1:46 pm

Re: Client Suite 3.0

Post by saf1 »

dmolton wrote:Thanks, Sebyte.

I think I see the issue. The Listener service validates that the internal memory locations from the controller match up with a defined set that the Client expects to see. This makes sure that we're displaying the correct values in the correct places on the Memory tab and also updating values in the right spot on your controller.

It looks like a new memory location (329=Mem_I_SalTempComp) was added since I last updated the Memory Map File and you happen to be running the libraries with the new location causing the validation to fail on the Client. This should be an easy fix.

Download the RAMemory.ini file attached to this post and save to your PC. From the Client, choose Settings => Load Memory File and browse to the file you just downloaded. You should get a success message. Restart the Client and try refreshing the memory tab once more.

-Dave
Hi Guys,

Just wanted to say thanks. I also ran into this issue. After comparing the error log posted and the one I had it appears to be the same issue. I went ahead and downloaded the RAMemory.ini file, uploaded it via the client, and restarted. Only thing I noticed different is when I first started the client program after doing this it actually crashed. I went ahead and restarted it and it appears to be fine now.

Appears to be working fine. Thanks again.
-scottf

FYI - here is my log:
*****11/30/2012 1:35:42 PM*****
Message:
Index was outside the bounds of the array.
StackTrace:
at ReefAngelWCFListener.ReefAngelListener.GetAllMemoryValuesPost10(String[] locations)

*****11/30/2012 1:35:42 PM*****
Message:
Value cannot be null.
Parameter name: String
StackTrace:
at System.Number.StringToNumber(String str, NumberStyles options, NumberBuffer& number, NumberFormatInfo info, Boolean parseDecimal)
at System.Number.ParseInt32(String s, NumberStyles style, NumberFormatInfo info)
at ReefAngelClient.Form1.DisplayMemoryValues()
rimai
Posts: 12881
Joined: Fri Mar 18, 2011 6:47 pm

Re: Client Suite 3.0

Post by rimai »

Hi Dave,

Bug report:
There is just one memory location for ATO timeout now.
It's memory location ATOExtendedTimeout (276)
All functions use this location.
Roberto.
dmolton
Posts: 182
Joined: Tue Mar 22, 2011 11:08 am

Re: Client Suite 3.0

Post by dmolton »

Got it - thanks for the heads up. So the location 278=Mem_I_ATOHighExtendedTimeout is no longer being used for anything? I'll update the Memory tab on the main page to have just one numeric up down control for location 276 as well as the little memory utility.
rimai
Posts: 12881
Joined: Fri Mar 18, 2011 6:47 pm

Re: Client Suite 3.0

Post by rimai »

Correct...
These are no longer being used:
#define Mem_B_ATOTimeout VarsStart+30
#define Mem_B_ATOHighTimeout VarsStart+42
#define Mem_I_ATOHighExtendedTimeout VarsStart+78
They are still there, just not being used by any function.

Also, the Portal doesn't use the MH schedule nor the Wizard generate any code with the MH schedule.
Should we make it consistent to avoid confusion?
I changed it to use offset from standard light function, instead.
Roberto.
stephy
Posts: 26
Joined: Sat Jun 02, 2012 1:36 am
Location: Livorno (Italy)

Re: Client Suite 3.0

Post by stephy »

All ok for almost 1 month, this mornig my pc restarts and then....
I'm using last lib version

*****17/12/2012 11.32.33*****
Message:
There was an error parsing the query. [ Token line number = 3,Token line offset = 24,Token in error = 5 ]
StackTrace:
in System.Data.SqlServerCe.SqlCeCommand.ProcessResults(Int32 hr)
in System.Data.SqlServerCe.SqlCeCommand.CompileQueryPlan()
in System.Data.SqlServerCe.SqlCeCommand.ExecuteCommand(CommandBehavior behavior, String method, ResultSetOptions options)
in System.Data.SqlServerCe.SqlCeCommand.ExecuteNonQuery()
in ReefAngelClient.DAO.DataAccess.ExecuteNonQuery(String query)

*****17/12/2012 11.32.33*****
Message:
There was an error parsing the query. [ Token line number = 3,Token line offset = 23,Token in error = 5 ]
StackTrace:
in System.Data.SqlServerCe.SqlCeCommand.ProcessResults(Int32 hr)
in System.Data.SqlServerCe.SqlCeCommand.CompileQueryPlan()
in System.Data.SqlServerCe.SqlCeCommand.ExecuteCommand(CommandBehavior behavior, String method, ResultSetOptions options)
in System.Data.SqlServerCe.SqlCeCommand.ExecuteNonQuery()
in ReefAngelClient.DAO.DataAccess.ExecuteNonQuery(String query)

Image

Uploaded with ImageShack.us
Stephy

Image
civictuner04
Posts: 75
Joined: Fri Oct 05, 2012 4:20 am

Re: Client Suite 3.0

Post by civictuner04 »

on the client it shows my led% and if you click on it you can change the %s but i never updates on the leds.....they just stay the same. do i need to add something to my code to be able to adjust my led bluw:white %s?
rimai
Posts: 12881
Joined: Fri Mar 18, 2011 6:47 pm

Re: Client Suite 3.0

Post by rimai »

Here is what you do:
I see you use Port1 and Port2 for your LED drivers...
Modify your code to have Port1Bit and Port2Bit in the ReefAngel.LightsOnPorts
Like this:

Code: Select all

ReefAngel.LightsOnPorts = Port1Bit | Port2Bit;
Now, everytime you override those ports on, you will be able to use the client to adjust the LED %.
Roberto.
Post Reply