Device
We had this issue on
BCU #1 and also on BCU #2
Description
Quando si configura le 2 schede HVC, qualcosa va storto e la scheda di sotto non si configura a modo. Ci se ne accorge perchè: 1) manca il tipico sibilino acutissimo che si sente quando tutto è a posto, 2) se sei nella shell ipython e dai un
hvc.mirroSet() dà errore quando prova a cambiare il preshaper della 2 scheda. Sulla prima non ci sono errori. 3) Si sente un solo "toc" al mirrorSet.
Sembra che si scriva roba nella HVCboard[1] e lei non capisca. Se si rilegge la roba scritta, si trova altro.
La cosa non sembra dipendere dal nuovo software di configurazione: fa lo stesso anche con la versione vecchia a scripts.
Un power-cycle della
BCU può talvolta risolvere.
Occurence
When |
notes |
20121019_xxxxxx |
Scompare solo facendo un power-cycle della BCU |
20121022_114xxx |
Scompare solo facendo due power-cycle della BCU |
20121025_101600 |
Lo seguita a fare spesso, sempre sulla scheda di sotto |
20120327_153000 |
On dspUploadCode, on board HVC1, on the new unit BCU #2 |
20140125_112200 |
On dspUploadCode, on board HVC1, on BCU #2. email to MPIA with workaround |
20140203_130000 |
Seen also by Mario in OAA |
20150304_153800 |
Failed 5 times in a row (BcuNumber1). Ccd_viewer does not show frames and frame rate oscillates between 800 and 1000Hz. |
Trace
In [29]: hvc._hvc_channels[2].setCurrPreshaper([0.12]*4)
In [30]: hvc._hvc_channels[2]._getGeneric('step_ptr_preshaper_curr', 4)
Out[30]: [1234784250, 0, 1234784250, 0]
In [31]: hvc._hvc_channels[2]._getGeneric('step_ptr_preshaper_curr', 4)
Out[31]: [1234653157, 0, 1234653157, 0]
In [32]: hvc._hvc_channels[2].getCurrPreshaper()
---------------------------------------------------------------------------
ZeroDivisionError Traceback (most recent call last)
/home/argos/<ipython console> in <module>()
/home/argos/apps/lib/python/site-packages/argos/lgsw/device/hvc_channel.pyc in getCurrPreshaper(self)
204 sh_step=self._getGeneric('step_ptr_preshaper_curr', 4)
205 sh_time = [HVCConstants.PRESHAPER_BUFF_SIZE/x/HVCConstants.CNT_FREQ
--> 206 for x in sh_step]
207 return sh_time
208
ZeroDivisionError: integer division or modulo by zero
In [33]: hvc._hvc_channels[0].setCurrPreshaper([0.12]*4)
In [34]: hvc._hvc_channels[0].getCurrPreshaper()
Out[34]:
[0.13654618352941178,
0.13654618352941178,
0.13654618352941178,
0.13654618352941178]
In [35]: hvc._hvc_channels[2].setCurrPreshaper([0.12]*4)
In [36]: hvc._hvc_channels[2].getCurrPreshaper()
---------------------------------------------------------------------------
ZeroDivisionError Traceback (most recent call last)
/home/argos/<ipython console> in <module>()
/home/argos/apps/lib/python/site-packages/argos/lgsw/device/hvc_channel.pyc in getCurrPreshaper(self)
204 sh_step=self._getGeneric('step_ptr_preshaper_curr', 4)
205 sh_time = [HVCConstants.PRESHAPER_BUFF_SIZE/x/HVCConstants.CNT_FREQ
--> 206 for x in sh_step]
207 return sh_time
208
ZeroDivisionError: integer division or modulo by zero
EDIT LB 20150528 - THE EVENT BELOW IS SOMETHING ELSE. BcuNumber2 DOESNT SEEM TO BE AFFECTED BY THE HVC BOOT ISSUE
Log of Mar 27 2013, with
BCU #2
In [9]: hvc.configure()
---------------------------------------------------------------------------
Exception Traceback (most recent call last)
/home/argos/workspace/argos_trunk/<ipython console> in <module>()
/home/argos/apps/lib/python/site-packages/argos/lgsw/device/hvc_device.pyc in configure(self)
58 #TODO relaisOff e setRest?
59 self._boards[0].configure()
---> 60 self._boards[1].configure()
61 self._channels[b].configure(calib_blue.calibration())
62 self._channels[y].configure(calib_yellow.calibration())
/home/argos/apps/lib/python/site-packages/argos/lgsw/device/hvc_board.pyc in configure(self)
46
47 #load program
---> 48 self._uploadDspCode()
49
50 # delay of the DAC update respect to the begin of the isr routine
/home/argos/apps/lib/python/site-packages/argos/lgsw/device/hvc_board.pyc in _uploadDspCode(self)
83 def _uploadDspCode(self):
84 self._bcuCtrl.uploadDspCode(self._boardNo, self._boardNo,
---> 85 HVCConstants.HVC_DSP_PROGRAM_PATH)
86
87 def _setPreshaper(self):
/home/argos/apps/lib/python/site-packages/argos/lgsw/device/bcu_device.pyc in uploadDspCode(self, firstDsp, lastDsp, programPathOnServer)
149 assert 0 < len(programPathOnServer)
150
--> 151 self._bcu.uploadDspCode(firstDsp, lastDsp, programPathOnServer)
152
153
Exception: Nice::UnknownException: Exception Type not found !
> /home/argos/apps/lib/python/site-packages/argos/lgsw/device/bcu_device.py(151)uploadDspCode()
150
--> 151 self._bcu.uploadDspCode(firstDsp, lastDsp, programPathOnServer)
152
ipdb> firstDsp, lastDsp, programPathOnServer
(4, 4, '/home/argos/apps//share/argos_bcu/HVCMainProgram_2_01.ldr')
--
LorenzoBusoni - 19 Oct 2012