J10 Hearing Aid ,you can fitting on the web page

Support On following OS:

  • Windows 10+ ,Edge Browser /Chrome Browser
  • Linux ,Mac ,see implentation status
  • Android Chrome
  • Iphone/Ipad : Please install "Bluefy – Web BLE Browser" first
if you have issues about web ble,please check implentation status

All BLE Devices 

Current Mode:

Name Value
# Volume This parameter only applicable for version after 2023-06-25
# Envoirnment Noise
# Power on delay Seconds After x seconds ,the DMIC will turn on to work
# Enabled Modules
# Hardware Revision J10/J11 , Our firmware consider J10 as default hardware , You need reboot your hearing aid to make effect,for Custom PCBA,we will deliver customerized firmware for you
# BLE Display Name Only letter and digits allowed ,maximum length is 10 bytes ,You need reboot your hearing aid to make effect
# Max Volume Max Volume when press button
# Min Volume Min Volume when press button
# Volume Step Volume Step when press button,default to 2
# ADC 校准值
ADC 0V Calibration Value
DISABLE THIS FEATURE 当DIO0 接0V的时候,ADC的实时数据作为ADC校准值
When DIO0 Input is 0V, ADC realtime value
# ADC 实时值
ADC Realtime Value
ADC 实时数据 ,只读,不能修改
ADC Realtime Value,Readonly
# 低电量告警阈值
Low Battery Threshold
% 以百分比表示
Percentage

EQ0 EQ1 EQ2 EQ3 EQ4 EQ5 EQ6 EQ7
Name Band 0 Band 1 Band 2 Band 3 Band 4 Band 5 Band 6 Band 7
# Cross over Frequency
频率
317Hz 502Hz 797Hz 1264Hz 2005Hz 3181Hz 5044Hz
# Expansion Rate
放大系数
# Expansion Knee point
放大区拐点
# Linear Gain
线性增益
# Compress Knee
压缩拐点
# Compress Ratio
压缩系数
# Limit Knee
限制区拐点

If you are not familar with WDRC Parameters ,check https://tympan.github.io/Tympan_Library/WDRC_Plotter.html

快速调节噪音感受(全通道修改放大拐点)
Shortcut Fit Noise (this is to change fullband expansion knee point)

快速调节音量感受(全通道修改线性增益)
Shortcut Fit Volume (this is to change fullband linear gain )

here are some reference parameters for our sample hearing aids,download J10_Fittings_SampleHA.pdf

(Added on 2024-04-22
Do you want to protected your WDRC parameters , you can set parameter key (8 ascii digits)
after you set, and reboot the hearing aid , the ble client must send correct parameter key first after ble connected ,otherwise he can not read or write EQ/WDRC parameters

Set Parameter Key 8 digits
Send Parameter Key 8 digits
Hz dB Enter Freq, db to test puretone , if u input freq=0,db=0,it means stop current puretone
I2C DEMO J10 As I2C Master ,send i2c cmd to i2c slave ,and get i2c slave data

TBD: Mic ,Speaker Measurement ,Feedback Path measurement ,etc
Please allow audio dump in 'general > Enabled Modules', and connected jtag links with J10, and make main.bat ready to dump audio.see our video instructions and all tools( BAIDU NETDISK, file:how_to_recordj11_anaylsenoise.zip)
this only available for debug version,not for production version

  • DMIC
  • Speaker
  • Feedback Path
  • THD+N

How to develop android/ios app ,or WEB application

2023-03-30: the latest ble document :BAIDU NETDISK ,pwd:2023

Service UUID :e093f3b5-00a3-a9e5-9eca-40016e0edc24 , Characteristic UUID:e093f3b5-00a3-a9e5-9eca-40036e0edc24

Sending to J10 Hearing Aid/Received Data from J10 Hearing Aid
each ble package has 100 bytes

  • bytes[0]: mem index
  • bytes[1]: volume (0--20)
  • bytes[2]: dac gain
  • bytes[3]: enabled modules
  • bytes[4]: a correct packet should be bytes[1]^bytes[2]^bytes[3]^0xDE
  • bytes[5]: hardware reversion: 0x0A for J10,0x0B for j11
  • bytes[6]: od gain :0/3/6/9/12 (obsoleted)
  • bytes[7]: max volume, when press button to inc volume
  • bytes[8]: min volume , when press button to dec volume
  • bytes[9]: volume step , when press button to inc/ dec volume
  • bytes[10..19]: ble display name
  • bytes[20..67]:WDRC data,total 48 bytes for 8 bands ,so each band has 6 bytes:exp_cr, exp_end_knee,tkgain,tk,cr,bolt
  • bytes[80..87]:EQ data, total 8 channels

You can check our RSL10 code to know how we parse the ble data

   uint8_t  result_xor = valptr[1]  ^ valptr[2];
	 result_xor = result_xor ^valptr[3];
	 result_xor = result_xor ^ 0xDE;
	 //we use XOR to make sure correct data format, 
	// if (valptr[4] != result_xor)
	//	 return ;
	 
	// if  (lenData <30)  return ;

	 uint8_t mem_idx = valptr[0];
	 MCU_MULTI_GAIN.ADC_GAIN = valptr[1];
 
    
	#if (VOLUME_ENABLE ==1)
		 MCU_VOLUME.Volume = 0 - valptr[1];

	#endif
	 
	 MCU_MULTI_GAIN.DAC_GAIN = valptr[2];

	 uint8_t wdrc_mask =valptr[3];
	 cs_env[0].wdrc_mask = wdrc_mask;


	 //BLE Dislay name : Offset 10..19 ,total 10 bytes
	 if (valptr[10]>0)
		 memcpy(ble_dispname,(uint8_t*)&valptr[10],10);


	 int base_offset = 20;
	//WDRC :Offset:20-67  ,total bytes: 6*8=48

	for (uint8_t band_idx=0;band_idx <8;band_idx++)
		MCU_WDRC.exp_cr[band_idx] = 0.1f * valptr[base_offset++];

	for (uint8_t band_idx=0;band_idx <8;band_idx++)
		MCU_WDRC.exp_end_knee[band_idx] = 1.0f * valptr[base_offset++];

	for (uint8_t band_idx=0;band_idx <8;band_idx++)
		MCU_WDRC.tkgain[band_idx] = 1.0f * valptr[base_offset++];

	for (uint8_t band_idx=0;band_idx <8;band_idx++)
		MCU_WDRC.tk[band_idx] = 1.0f * valptr[base_offset++];

	for (uint8_t band_idx=0;band_idx <8;band_idx++)
		MCU_WDRC.cr[band_idx] = 0.1f * valptr[base_offset++];

	for (uint8_t band_idx=0;band_idx <8;band_idx++)
		MCU_WDRC.bolt[band_idx] = 1.0f * valptr[base_offset++];


	//valptr[68..79]  Reservered

	//EQ :offset:80-87
	base_offset = 80;
	for (uint8_t band_idx=0;band_idx <8;band_idx++)
			MCU_EQ.dB_Gain_float[band_idx] = 0.0f - valptr[base_offset++] ;
  
  

After you click the button ,the hearing aid reboot ,and enter fota mode ,the BLE dislay name will be "J10-0000-L" (or something others ), you can use pc software or android app to upload .fota file

You can use windows pc + wireless usb dongle to upgrade hearing aid via ble

You can use mobile phone to upgrade hearing aid via ble

here is more information about j10 fota : J10 support FOTA now


Operation Log Area, by default log is disabled, you can toggle to Enable Log